PluginProbe
Jetpack – WP Security, Backup, Speed, & Growth / 16.3-a.1
Jetpack – WP Security, Backup, Speed, & Growth v16.3-a.1
16.3-a.3 16.3-a.1 16.2 16.2-beta 12.0.3 12.1.3 12.2.3 12.3.2 12.4.2 12.5.2 12.6.4 12.7.3 12.8.3 12.9.5 13.0.2 13.1.5 13.2.4 13.3.3 13.4.5 13.5.2 13.6.2 13.7.2 13.8.3 13.9.2 14.0.1 All 504 releases
← All changes | extensions/blocks/repeat-visitor/repeat-visitor.php +9 -18 13.5.216.3-a.1 View file →
@@ -9,10 +9,13 @@
9 9
10 10 namespace Automattic\Jetpack\Extensions\Repeat_Visitor;
11 11
12 12 use Automattic\Jetpack\Blocks;
13 -use Jetpack_Gutenberg;
14 13
14 +if ( ! defined( 'ABSPATH' ) ) {
15 + exit( 0 );
16 +}
17 +
15 18 /**
16 19 * Registers the block for use in Gutenberg
17 20 * This is done via an action so that we can disable
18 21 * registration if we need to.
@@ -27,8 +30,11 @@
27 30
28 31 /**
29 32 * Repeat Visitor block dependency declaration.
30 33 *
34 + * The render implementation lives in render.php and is only loaded when the
35 + * block is actually rendered, keeping it out of the eager front-end path.
36 + *
31 37 * @param array $attributes Array containing the block attributes.
32 38 * @param string $content String containing the block content.
33 39 *
34 40 * @return string
@@ -33,22 +39,7 @@
33 39 *
34 40 * @return string
35 41 */
36 42 function render_block( $attributes, $content ) {
37 - Jetpack_Gutenberg::load_assets_as_required( __DIR__ );
38 -
39 - $classes = Blocks::classes( Blocks::get_block_feature( __DIR__ ), $attributes );
40 -
41 - $count = isset( $_COOKIE['jp-visit-counter'] ) ? (int) $_COOKIE['jp-visit-counter'] : 0;
42 - $criteria = isset( $attributes['criteria'] ) ? $attributes['criteria'] : 'after-visits';
43 - $threshold = isset( $attributes['threshold'] ) ? (int) $attributes['threshold'] : 3;
44 -
45 - if (
46 - ( 'after-visits' === $criteria && $count >= $threshold ) ||
47 - ( 'before-visits' === $criteria && $count < $threshold )
48 - ) {
49 - return $content;
50 - }
51 -
52 - // return an empty div so that view script increments the visit counter in the cookie.
53 - return '<div class="' . esc_attr( $classes ) . '"></div>';
43 + require_once __DIR__ . '/render.php';
44 + return render_block_implementation( $attributes, $content );
54 45 }