__( '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 ) . '';
}
};
?>