__( 'Blocks', 'slider-blocks' ), 'rows' => array( array( __( 'Slider, carousel and marquee blocks', 'slider-blocks' ), __( 'Static, Flexible, Testimonial, Photo, Logo, Before After, Video, Blog Post and Marquee.', 'slider-blocks' ), (string) $gs_free_total, (string) ( $gs_free_total + $gs_pro_total ), ), array( __( 'Creative effect sliders', 'slider-blocks' ), __( 'Shader, Shutters, Slicer, Fashion and Triple sliders.', 'slider-blocks' ), false, true, ), array( __( '3D and motion carousels', 'slider-blocks' ), __( '3D, Panorama, Spring, Material and Marquee carousels.', 'slider-blocks' ), false, true, ), array( __( 'Interactive sliders', 'slider-blocks' ), __( 'Card, Hover and Tinder-style swipe sliders.', 'slider-blocks' ), false, true, ), array( __( 'WooCommerce carousels', 'slider-blocks' ), __( 'Product and product category carousels that help you sell.', 'slider-blocks' ), false, true, ), ), ), array( 'title' => __( 'Designs', 'slider-blocks' ), 'rows' => array( array( __( 'Ready-made designs in every block', 'slider-blocks' ), __( 'Pick a look, then fine-tune it in the sidebar.', 'slider-blocks' ), __( 'Starter set', 'slider-blocks' ), __( 'Every design', 'slider-blocks' ), ), array( __( 'Premium designs', 'slider-blocks' ), __( 'Glass cards, cinema and playlist videos, polaroid stacks, avatar switchers, tag clouds and more.', 'slider-blocks' ), false, /* translators: %d: number of designs. */ sprintf( __( '%d+ designs', 'slider-blocks' ), $gs_pro_designs ), ), array( __( 'Block patterns library', 'slider-blocks' ), __( 'Ready-made slider layouts to insert and edit.', 'slider-blocks' ), true, true, ), ), ), array( 'key' => 'features', 'title' => __( 'Features', 'slider-blocks' ), 'rows' => array( array( __( 'Responsive controls, typography and Google Fonts', 'slider-blocks' ), __( 'Separate Desktop, Tablet and Mobile values.', 'slider-blocks' ), true, true, ), array( __( 'Lightweight output', 'slider-blocks' ), __( 'No jQuery, assets only where used, one CSS file per page.', 'slider-blocks' ), true, true, ), array( __( 'SEO schema markup', 'slider-blocks' ), __( 'Video rich results for videos and ItemList markup for post sliders.', 'slider-blocks' ), false, true, ), array( __( 'Before-after video comparisons', 'slider-blocks' ), __( 'Two videos in sync, several comparisons with thumbnails, auto-play and fullscreen.', 'slider-blocks' ), false, true, ), array( __( 'Video extras', 'slider-blocks' ), __( 'Lightbox, preview on hover, silent loops, custom thumbnails and end times.', 'slider-blocks' ), false, true, ), array( __( 'Content reveal', 'slider-blocks' ), __( 'Subtitle, title, description and buttons play in one sequence: words rise, letters flip, blur in or mask reveal.', 'slider-blocks' ), false, true, ), array( __( 'Content animations and background effects', 'slider-blocks' ), __( 'Animated slide content, background motion and slide names as tabs.', 'slider-blocks' ), false, true, ), array( __( 'Advanced marquee motion', 'slider-blocks' ), __( 'Up to three rows, move with page scroll, drag to move, reverse and speed up on scroll.', 'slider-blocks' ), false, true, ), array( __( 'Clickable slides and remote navigation', 'slider-blocks' ), __( 'Link a whole slide, or control a slider from buttons anywhere on the page.', 'slider-blocks' ), false, true, ), array( __( 'Per-device visibility and backgrounds', 'slider-blocks' ), __( 'Show slides on chosen devices, with a different image for each screen size.', 'slider-blocks' ), false, true, ), array( __( 'Thumbnail gallery navigation', 'slider-blocks' ), __( 'Thumbnail navigation and detached content for the Static and Blog Post sliders.', 'slider-blocks' ), false, true, ), ), ), array( 'title' => __( 'Support', 'slider-blocks' ), 'rows' => array( array( __( 'Help from the GutSlider team', 'slider-blocks' ), '', __( 'Community forum', 'slider-blocks' ), __( 'Priority support', 'slider-blocks' ), ), ), ), ); // Feature rows only Pro has, for the headline figure. $gs_pro_features = 0; foreach ( $gs_compare as $gs_group ) { foreach ( $gs_group['rows'] as $gs_row ) { if ( isset( $gs_group['key'] ) && 'features' === $gs_group['key'] && false === $gs_row[2] && true === $gs_row[3] ) { ++$gs_pro_features; } } } /** * Print one comparison cell. * * @param bool|string $value Cell value. * @param bool $pro Whether this is the Pro column. * @return void */ $gs_cell = static function ( $value, $pro ) { if ( true === $value ) { echo ''; GutSlider_Admin::icon( 'check' ); echo '' . esc_html__( 'Included', 'slider-blocks' ) . ''; } elseif ( false === $value ) { echo ''; echo '' . esc_html__( 'Not included', 'slider-blocks' ) . ''; } else { echo '' . esc_html( $value ) . ''; } }; ?>