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