PluginProbe ʕ •ᴥ•ʔ
Jetpack – WP Security, Backup, Speed, & Growth / 15.9-a.7
Jetpack – WP Security, Backup, Speed, & Growth v15.9-a.7
15.9-a.7 15.9-a.5 15.9-a.3 15.9-a.1 15.8 15.8-beta 15.8-a.7 15.8-a.5 5.2.5 5.3.4 5.4.4 5.5.5 5.6.5 5.7.5 5.8.4 5.9.4 6.0.4 6.1 6.1.1 6.1.2 6.1.3 6.1.4 6.1.5 6.2 6.2.1 6.2.2 6.2.3 6.2.4 6.2.5 6.3 6.3.1 6.3.2 6.3.3 6.3.4 6.3.5 6.3.6 6.3.7 6.4 6.4.1 6.4.2 6.4.3 6.4.4 6.4.5 6.4.6 6.5 6.5.1 6.5.2 6.5.3 6.5.4 6.6 6.6.1 6.6.2 6.6.3 6.6.4 6.6.5 6.7 6.7.1 6.7.2 6.7.3 6.7.4 6.8 6.8.1 6.8.2 6.8.3 6.8.4 6.8.5 6.9 6.9.1 6.9.2 6.9.3 6.9.4 7.0 7.0.1 7.0.2 7.0.3 7.0.4 7.0.5 7.1 7.1.1 7.1.2 7.1.3 7.1.4 7.1.5 7.2 7.2.1 7.2.1.1 7.2.2 7.2.3 7.2.4 7.2.5 7.3 7.3.0.1 7.3.1 7.3.1.1 7.3.2 7.3.3 7.3.4 7.3.5 7.4 7.4.1 7.4.2 7.4.3 7.4.4 7.4.5 7.5 7.5.0.1 7.5.1 7.5.2 7.5.3 7.5.4 7.5.5 7.5.6 7.5.7 7.6 7.6.1 7.6.2 7.6.3 7.6.4 7.7 7.7.1 7.7.2 7.7.3 7.7.4 7.7.5 7.7.6 7.8 7.8.1 7.8.2 7.8.3 7.8.4 7.9 7.9.1 7.9.2 7.9.3 7.9.4 8.0 8.0.1 8.0.2 8.0.3 8.1 8.1.1 8.1.2 8.1.3 8.1.4 8.2 8.2.0.1 8.2.1 8.2.2 8.2.3 8.2.4 8.2.5 8.2.6 8.3 8.3.1 8.3.2 8.3.3 8.4 8.4.1 8.4.2 8.4.3 8.4.4 8.4.5 8.5 8.5.1 8.5.2 8.5.3 8.6 8.6.1 8.6.2 8.6.3 8.6.4 8.7 8.7.0.1 8.7.1 8.7.2 8.7.3 8.7.4 8.8 8.8.1 8.8.2 8.8.3 8.8.4 8.8.5 8.9 8.9.1 8.9.2 8.9.3 8.9.4 9.0 9.0.1 9.0.2 9.0.3 9.0.4 9.0.5 9.1 9.1.1 9.1.2 9.1.3 9.2 9.2.1 9.2.2 9.2.3 9.2.4 9.3 9.3.1 9.3.2 9.3.3 9.3.4 9.3.5 9.4 9.4.1 9.4.2 9.4.3 9.4.4 9.5 9.5.1 9.5.2 9.5.3 9.5.4 9.5.5 9.6 9.6.1 9.6.2 9.6.3 9.6.4 9.7 9.7.1 9.7.2 15.7-beta.2 9.7.3 15.7.1 9.8 15.8-a.1 9.8.1 15.8-a.3 9.8.2 2.0.9 9.8.3 2.1.7 9.9 2.2.10 9.9.1 2.3.10 9.9.2 2.4.7 9.9.3 2.5.5 2.6.6 2.7.5 2.8.5 2.9.6 3.0.6 3.1.5 3.2.5 3.3.6 3.4.6 3.5.6 3.6.4 3.7.5 3.8.5 3.9.10 4.0.7 4.1.4 4.2.5 4.3.5 4.4.5 4.5.3 4.6.3 4.7.4 4.8.5 4.9.3 5.0.3 5.1.4 trunk 10.0 10.0.1 10.0.2 10.1 10.1.1 10.1.2 10.2 10.2.1 10.2.2 10.2.3 10.3 10.3.1 10.3.2 10.4 10.4.1 10.4.2 10.5 10.5.1 10.5.2 10.5.3 10.6 10.6.1 10.6.2 10.7 10.7.1 10.7.2 10.8 10.8.1 10.8.2 10.9 10.9.1 10.9.2 10.9.3 11.0 11.0.1 11.0.2 11.1 11.1.1 11.1.2 11.1.3 11.1.4 11.2 11.2.1 11.2.2 11.3 11.3.1 11.3.2 11.3.3 11.3.4 11.4 11.4.1 11.4.2 11.5 11.5.1 11.5.2 11.5.3 11.6 11.6.1 11.6.2 11.7 11.7.1 11.7.2 11.7.3 11.8 11.8.3 11.8.4 11.8.5 11.8.6 11.9 11.9.1 11.9.2 11.9.3 12.0 12.0.1 12.0.2 12.1 12.1.1 12.1.2 12.2 12.2.1 12.2.2 12.3 12.3.1 12.4 12.4.1 12.5 12.5.1 12.6 12.6.1 12.6.2 12.6.3 12.7 12.7.1 12.7.2 12.8 12.8.1 12.8.2 12.9 12.9.1 12.9.2 12.9.3 12.9.4 13.0 13.0.1 13.1 13.1.1 13.1.2 13.1.3 13.1.4 13.2 13.2.1 13.2.2 13.2.3 13.3 13.3.1 13.3.2 13.4 13.4.1 13.4.2 13.4.3 13.4.4 13.5 13.5.1 13.6 13.6.1 13.7 13.7.1 13.8 13.8.1 13.8.2 13.9 13.9.1 14.0 14.1 14.2 14.2.1 14.3 14.4 14.4.1 14.5 14.6 14.7 14.8 14.9 14.9.1 15.0 15.0.1 15.0.2 15.1 15.1.1 15.2 15.3 15.3.1 15.4 15.5 15.6 15.7 15.7-a.1 15.7-a.3 15.7-a.5 15.7-a.7 15.7-beta
jetpack / modules / theme-tools / social-menu.php
jetpack / modules / theme-tools Last commit date
compat 2 weeks ago content-options 2 weeks ago js 5 years ago responsive-videos 1 year ago site-logo 6 months ago social-menu 2 weeks ago content-options.php 6 months ago featured-content.php 6 months ago responsive-videos.php 6 months ago site-breadcrumbs.php 1 year ago site-logo.php 6 months ago social-links.php 6 months ago social-menu.php 6 months ago
social-menu.php
138 lines
1 <?php
2 /**
3 * Social Menu.
4 *
5 * This feature will only be activated for themes that declare their support.
6 * This can be done by adding code similar to the following during the
7 * 'after_setup_theme' action:
8 *
9 * add_theme_support( 'jetpack-social-menu' );
10 *
11 * @package automattic/jetpack
12 */
13
14 if ( ! defined( 'ABSPATH' ) ) {
15 exit( 0 );
16 }
17
18 if ( ! class_exists( '\Automattic\Jetpack\Classic_Theme_Helper\Main' ) ) {
19 if ( ! function_exists( 'jetpack_social_menu_init' ) ) {
20 /**
21 * Activate the Social Menu plugin.
22 *
23 * @uses current_theme_supports()
24 */
25 function jetpack_social_menu_init() {
26 _deprecated_function( __FUNCTION__, 'jetpack-13.7' );
27 // Only load our code if our theme declares support
28 if ( ! current_theme_supports( 'jetpack-social-menu' ) ) {
29 return;
30 }
31
32 /**
33 * Social Menu description.
34 *
35 * Rename the social menu description.
36 *
37 * @module theme-tools
38 *
39 * @since 3.9.0
40 *
41 * @param string $social_menu_description Social Menu description
42 */
43 $social_menu_description = apply_filters( 'jetpack_social_menu_description', __( 'Social Menu', 'jetpack' ) );
44
45 // Register a new menu location
46 register_nav_menus(
47 array(
48 'jetpack-social-menu' => esc_html( $social_menu_description ),
49 )
50 );
51
52 // Enqueue CSS
53 add_action( 'wp_enqueue_scripts', 'jetpack_social_menu_style' );
54
55 // Load SVG icons related functions and filters
56 if ( 'svg' === jetpack_social_menu_get_type() ) {
57 require __DIR__ . '/social-menu/icon-functions.php';
58 }
59 }
60 add_action( 'after_setup_theme', 'jetpack_social_menu_init', 99 );
61 add_action( 'restapi_theme_init', 'jetpack_social_menu_init' );
62 }
63
64 if ( ! function_exists( 'jetpack_social_menu_get_type' ) ) {
65 /**
66 * Return the type of menu the theme is using.
67 *
68 * @uses get_theme_support()
69 * @return null|string $menu_type
70 */
71 function jetpack_social_menu_get_type() {
72 _deprecated_function( __FUNCTION__, 'jetpack-13.7' );
73 $options = get_theme_support( 'jetpack-social-menu' );
74
75 if ( ! $options ) {
76 $menu_type = null;
77 } else {
78 $menu_type = 'genericons';
79 if ( is_array( $options ) && isset( $options[0] ) ) {
80 $menu_type = ( in_array( $options[0], array( 'genericons', 'svg' ), true ) ) ? $options[0] : 'genericons';
81 }
82 }
83
84 return $menu_type;
85 }
86 }
87
88 if ( ! function_exists( 'jetpack_social_menu_style' ) ) {
89 /**
90 * Function to enqueue the CSS.
91 */
92 function jetpack_social_menu_style() {
93 _deprecated_function( __FUNCTION__, 'jetpack-13.7' );
94 $menu_type = jetpack_social_menu_get_type();
95
96 if ( ! $menu_type ) {
97 return;
98 }
99
100 $deps = ( 'genericons' === $menu_type ) ? array( 'genericons' ) : null;
101
102 if ( has_nav_menu( 'jetpack-social-menu' ) ) {
103 wp_enqueue_style( 'jetpack-social-menu', plugins_url( 'social-menu/social-menu.css', __FILE__ ), $deps, '1.0' );
104 }
105 }
106 }
107
108 if ( ! function_exists( 'jetpack_social_menu' ) ) {
109 /**
110 * Create the function for the menu.
111 */
112 function jetpack_social_menu() {
113 _deprecated_function( __FUNCTION__, 'jetpack-13.7' );
114 if ( has_nav_menu( 'jetpack-social-menu' ) ) :
115 $menu_type = jetpack_social_menu_get_type();
116 $link_after = '</span>';
117
118 if ( 'svg' === $menu_type ) {
119 $link_after .= jetpack_social_menu_get_svg( array( 'icon' => 'chain' ) );
120 } ?>
121 <nav class="jetpack-social-navigation jetpack-social-navigation-<?php echo esc_attr( $menu_type ); ?>" aria-label="<?php esc_html_e( 'Social Links Menu', 'jetpack' ); ?>">
122 <?php
123 wp_nav_menu(
124 array(
125 'theme_location' => 'jetpack-social-menu',
126 'link_before' => '<span class="screen-reader-text">',
127 'link_after' => $link_after,
128 'depth' => 1,
129 )
130 );
131 ?>
132 </nav><!-- .jetpack-social-navigation -->
133 <?php
134 endif;
135 }
136 }
137 }
138