PluginProbe ʕ •ᴥ•ʔ
Jetpack – WP Security, Backup, Speed, & Growth / 9.8.1
Jetpack – WP Security, Backup, Speed, & Growth v9.8.1
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 / 3rd-party / woocommerce.php
jetpack / 3rd-party Last commit date
debug-bar 5 years ago 3rd-party.php 5 years ago bbpress.php 5 years ago beaverbuilder.php 5 years ago bitly.php 5 years ago buddypress.php 5 years ago class-domain-mapping.php 5 years ago class-jetpack-bbpress-rest-api.php 5 years ago class-jetpack-crm-data.php 5 years ago class-jetpack-modules-overrides.php 5 years ago class.jetpack-amp-support.php 5 years ago creative-mail.php 5 years ago crowdsignal.php 5 years ago debug-bar.php 5 years ago qtranslate-x.php 5 years ago vaultpress.php 5 years ago web-stories.php 5 years ago woocommerce-services.php 5 years ago woocommerce.php 5 years ago wpml.php 5 years ago
woocommerce.php
130 lines
1 <?php
2 /**
3 * This file contains compatibility functions for WooCommerce to improve Jetpack feature support.
4 *
5 * @package automattic/jetpack
6 */
7
8 add_action( 'woocommerce_init', 'jetpack_woocommerce_integration' );
9
10 /**
11 * Loads JP+WC integration.
12 *
13 * Fires on `woocommerce_init` hook
14 */
15 function jetpack_woocommerce_integration() {
16 /**
17 * Double check WooCommerce exists - unlikely to fail due to the hook being used but better safe than sorry.
18 */
19 if ( ! class_exists( 'WooCommerce' ) ) {
20 return;
21 }
22
23 add_action( 'woocommerce_share', 'jetpack_woocommerce_social_share_icons', 10 );
24
25 /**
26 * Wrap in function exists check since this requires WooCommerce 3.3+.
27 */
28 if ( function_exists( 'wc_get_default_products_per_row' ) ) {
29 add_filter( 'infinite_scroll_render_callbacks', 'jetpack_woocommerce_infinite_scroll_render_callback', 10 );
30 add_action( 'wp_enqueue_scripts', 'jetpack_woocommerce_infinite_scroll_style', 10 );
31 }
32 }
33
34 /**
35 * Make sure the social sharing icons show up under the product's short description
36 */
37 function jetpack_woocommerce_social_share_icons() {
38 if ( function_exists( 'sharing_display' ) ) {
39 remove_filter( 'the_content', 'sharing_display', 19 );
40 remove_filter( 'the_excerpt', 'sharing_display', 19 );
41 sharing_display( '', true );
42 }
43 }
44
45 /**
46 * Remove sharing display from account, cart, and checkout pages in WooCommerce.
47 */
48 function jetpack_woocommerce_remove_share() {
49 /**
50 * Double check WooCommerce exists - unlikely to fail due to the hook being used but better safe than sorry.
51 */
52 if ( ! class_exists( 'WooCommerce' ) ) {
53 return;
54 }
55
56 if ( is_cart() || is_checkout() || is_account_page() ) {
57 remove_filter( 'the_content', 'sharing_display', 19 );
58 if ( class_exists( 'Jetpack_Likes' ) ) {
59 remove_filter( 'the_content', array( Jetpack_Likes::init(), 'post_likes' ), 30, 1 );
60 }
61 }
62 }
63 add_action( 'loop_start', 'jetpack_woocommerce_remove_share' );
64
65 /**
66 * Add a callback for WooCommerce product rendering in infinite scroll.
67 *
68 * @param array $callbacks Array of render callpacks for IS.
69 * @return array
70 */
71 function jetpack_woocommerce_infinite_scroll_render_callback( $callbacks ) {
72 $callbacks[] = 'jetpack_woocommerce_infinite_scroll_render';
73 return $callbacks;
74 }
75
76 /**
77 * Add a default renderer for WooCommerce products within infinite scroll.
78 */
79 function jetpack_woocommerce_infinite_scroll_render() {
80 if ( ! is_shop() && ! is_product_taxonomy() && ! is_product_category() && ! is_product_tag() ) {
81 return;
82 }
83
84 woocommerce_product_loop_start();
85
86 while ( have_posts() ) {
87 the_post();
88 wc_get_template_part( 'content', 'product' );
89 }
90
91 woocommerce_product_loop_end();
92 }
93
94 /**
95 * Basic styling when infinite scroll is active only.
96 */
97 function jetpack_woocommerce_infinite_scroll_style() {
98 $custom_css = '
99 .infinite-scroll .woocommerce-pagination {
100 display: none;
101 }';
102 wp_add_inline_style( 'woocommerce-layout', $custom_css );
103 }
104
105 /**
106 * Adds compat for WooCommerce and Lazy Loading.
107 */
108 function jetpack_woocommerce_lazy_images_compat() {
109 wp_add_inline_script(
110 'wc-cart-fragments',
111 "
112 jQuery( 'body' ).bind( 'wc_fragments_refreshed', function() {
113 var jetpackLazyImagesLoadEvent;
114 try {
115 jetpackLazyImagesLoadEvent = new Event( 'jetpack-lazy-images-load', {
116 bubbles: true,
117 cancelable: true
118 } );
119 } catch ( e ) {
120 jetpackLazyImagesLoadEvent = document.createEvent( 'Event' )
121 jetpackLazyImagesLoadEvent.initEvent( 'jetpack-lazy-images-load', true, true );
122 }
123 jQuery( 'body' ).get( 0 ).dispatchEvent( jetpackLazyImagesLoadEvent );
124 } );
125 "
126 );
127 }
128
129 add_action( 'wp_enqueue_scripts', 'jetpack_woocommerce_lazy_images_compat', 11 );
130