50, 'title' => esc_html__( 'Woocommerce', 'razzi' ), ); $panels['product_catalog'] = array( 'priority' => 50, 'title' => esc_html__( 'Product Catalog', 'razzi' ), ); $panels['shop_product'] = array( 'priority' => 50, 'title' => esc_html__( 'Single Product', 'razzi' ), ); return $panels; } /** * Adds theme options sections of WooCommerce. * * @since 1.0.0 * * @param array $sections Theme options sections. * * @return array */ public function get_customize_sections( $sections ) { // Page Cart $sections = array_merge( $sections, array( 'woocommerce_cart' => array( 'title' => esc_html__( 'Cart', 'razzi' ), 'priority' => 60, 'panel' => 'woocommerce', ), ) ); // Product Loop $sections = array_merge( $sections, array( 'product_loop' => array( 'title' => esc_html__( 'Product Loop', 'razzi' ), 'priority' => 60, 'panel' => 'woocommerce', ), ) ); // Product Notification $sections = array_merge( $sections, array( 'product_notifications' => array( 'title' => esc_html__( 'Product Notifications', 'razzi' ), 'priority' => 60, 'panel' => 'woocommerce', ), ) ); // Badges $sections = array_merge( $sections, array( 'shop_badges' => array( 'title' => esc_html__( 'Badges', 'razzi' ), 'priority' => 60, 'panel' => 'woocommerce', ), ) ); // Badges $sections = array_merge( $sections, array( 'product_qty' => array( 'title' => esc_html__( 'Product Qty', 'razzi' ), 'priority' => 60, 'panel' => 'woocommerce', ), ) ); // cross sells $sections = array_merge( $sections, array( 'product_cross_sells' => array( 'title' => esc_html__( 'Cross Sells Products', 'razzi' ), 'priority' => 60, 'panel' => 'woocommerce', ), ) ); // Product Page $sections = array_merge( $sections, array( 'single_product_layout' => array( 'title' => esc_html__( 'Product Layout', 'razzi' ), 'priority' => 10, 'panel' => 'shop_product', ), 'sticky_add_to_cart' => array( 'title' => esc_html__( 'Sticky Add To Cart', 'razzi' ), 'priority' => 15, 'panel' => 'shop_product', ), 'single_product_related' => array( 'title' => esc_html__( 'Related Products', 'razzi' ), 'priority' => 20, 'panel' => 'shop_product', ), 'single_product_upsells' => array( 'title' => esc_html__( 'Upsells Products', 'razzi' ), 'priority' => 30, 'panel' => 'shop_product', ), 'single_product_sharing' => array( 'title' => esc_html__( 'Product Sharing', 'razzi' ), 'priority' => 40, 'panel' => 'shop_product', ), 'single_product_external' => array( 'title' => esc_html__( 'External Product', 'razzi' ), 'priority' => 50, 'panel' => 'shop_product', ), ) ); // Catalog Page $sections = array_merge( $sections, array( 'catalog_layout' => array( 'title' => esc_html__( 'Catalog Layout', 'razzi' ), 'panel' => 'product_catalog', ), 'catalog_page_header' => array( 'title' => esc_html__( 'Page Header', 'razzi' ), 'panel' => 'product_catalog', ), 'taxonomy_description' => array( 'title' => esc_html__( 'Taxonomy Description', 'razzi' ), 'panel' => 'product_catalog', ), 'shop_banners' => array( 'title' => esc_html__( 'Banners', 'razzi' ), 'panel' => 'product_catalog', ), 'catalog_categories' => array( 'title' => esc_html__( 'Top Categories', 'razzi' ), 'panel' => 'product_catalog', ), 'catalog_toolbar' => array( 'title' => esc_html__( 'Catalog Toolbar', 'razzi' ), 'panel' => 'product_catalog', ), 'shop_quick_view' => array( 'title' => esc_html__( 'Quick View', 'razzi' ), 'panel' => 'product_catalog', ), ) ); return $sections; } /** * Adds theme options of WooCommerce. * * @since 1.0.0 * * @param array $fields Theme options fields. * * @return array */ public function get_customize_fields( $fields ) { // WooCommerce settings. $fields = array_merge( $fields, array( // Shop product catalog 'product_loop_layout' => array( 'type' => 'select', 'label' => esc_html__( 'Product Loop Layout', 'razzi' ), 'default' => '1', 'section' => 'product_loop', 'priority' => 10, 'choices' => array( '1' => esc_html__( 'Icons over thumbnail on hover', 'razzi' ), '2' => esc_html__( 'Icons & Quick view button', 'razzi' ), '3' => esc_html__( 'Icons & Add to cart button', 'razzi' ), '4' => esc_html__( 'Icons on the bottom', 'razzi' ), '5' => esc_html__( 'Simple', 'razzi' ), '6' => esc_html__( 'Standard button ( Solid Border )', 'razzi' ), '7' => esc_html__( 'Info on hover', 'razzi' ), '8' => esc_html__( 'Icons & Add to cart text', 'razzi' ), '9' => esc_html__( 'Quick Shop button', 'razzi' ), '10' => esc_html__( 'Standard button on hover', 'razzi' ), '11' => esc_html__( 'Solid Border', 'razzi' ), '12' => esc_html__( 'Standard button', 'razzi' ), ), ), 'product_loop_hover' => array( 'type' => 'select', 'label' => esc_html__( 'Product Loop Hover', 'razzi' ), 'description' => esc_html__( 'Product hover animation.', 'razzi' ), 'default' => 'classic', 'section' => 'product_loop', 'priority' => 10, 'choices' => array( 'classic' => esc_html__( 'Classic', 'razzi' ), 'slider' => esc_html__( 'Slider', 'razzi' ), 'fadein' => esc_html__( 'Fadein', 'razzi' ), 'zoom' => esc_html__( 'Zoom', 'razzi' ), ), 'active_callback' => array( array( 'setting' => 'product_loop_layout', 'operator' => '!=', 'value' => '7', ), ), ), 'product_loop_featured_icons_custom' => array( 'type' => 'custom', 'section' => 'product_loop', 'priority' => 10, 'default' => '
', 'active_callback' => array( array( 'setting' => 'product_loop_layout', 'operator' => '!=', 'value' => '5', ), ), ), 'product_loop_featured_icons' => array( 'type' => 'multicheck', 'label' => esc_html__( 'Featured Icons', 'razzi' ), 'section' => 'product_loop', 'default' => array( 'cart', 'qview', 'wlist' ), 'priority' => 10, 'choices' => array( 'cart' => esc_html__( 'Cart', 'razzi' ), 'qview' => esc_html__( 'Quick View', 'razzi' ), 'wlist' => esc_html__( 'Wishlist', 'razzi' ), ), 'active_callback' => array( array( 'setting' => 'product_loop_layout', 'operator' => '!=', 'value' => '5', ), ), ), 'product_loop_wishlist' => array( 'type' => 'toggle', 'label' => esc_html__( 'Always Display Wishlist', 'razzi' ), 'section' => 'product_loop', 'default' => 1, 'priority' => 10, 'active_callback' => array( array( 'setting' => 'product_loop_layout', 'operator' => 'in', 'value' => array( '2', '3', '9' ), ), ), ), 'product_loop_attributes_custom' => array( 'type' => 'custom', 'section' => 'product_loop', 'priority' => 10, 'default' => '
', 'active_callback' => array( array( 'setting' => 'product_loop_layout', 'operator' => '!=', 'value' => '11', ), ), ), 'product_loop_attributes' => array( 'type' => 'multicheck', 'label' => esc_html__( 'Attributes', 'razzi' ), 'section' => 'product_loop', 'default' => array( 'taxonomy' ), 'priority' => 10, 'choices' => array( 'taxonomy' => esc_html__( 'Taxonomy', 'razzi' ), 'rating' => esc_html__( 'Rating', 'razzi' ), ), ), 'product_loop_taxonomy' => array( 'type' => 'select', 'label' => esc_html__( 'Product Taxonomy', 'razzi' ), 'section' => 'product_loop', 'default' => 'product_cat', 'priority' => 10, 'choices' => array( 'product_cat' => esc_html__( 'Category', 'razzi' ), 'product_brand' => esc_html__( 'Brand', 'razzi' ), 'product_author' => esc_html__( 'Author', 'razzi' ), ), 'active_callback' => array( array( 'setting' => 'product_loop_attributes', 'operator' => 'in', 'value' => 'taxonomy', ), ), ), 'product_loop_taxonomy_position' => array( 'type' => 'select', 'label' => esc_html__( 'Position', 'razzi' ), 'section' => 'product_loop', 'default' => 'above', 'priority' => 10, 'choices' => array( 'above' => esc_html__( 'Above the Title', 'razzi' ), 'below' => esc_html__( 'Below the Title', 'razzi' ), ), 'active_callback' => array( array( 'setting' => 'product_loop_attributes', 'operator' => 'in', 'value' => 'taxonomy', ), array( 'setting' => 'product_loop_layout', 'operator' => '==', 'value' => '10', ), ), ), 'product_loop_rating_counter_custom' => array( 'type' => 'custom', 'section' => 'product_loop', 'default' => '
', 'active_callback' => array( array( 'setting' => 'product_loop_attributes', 'operator' => 'in', 'value' => 'rating', ), array( 'setting' => 'product_loop_layout', 'operator' => 'in', 'value' => array( '10' ), ), ), ), 'product_loop_rating_counter' => array( 'type' => 'toggle', 'label' => esc_html__('Review Counter', 'razzi'), 'section' => 'product_loop', 'default' => true, 'active_callback' => array( array( 'setting' => 'product_loop_attributes', 'operator' => 'in', 'value' => 'rating', ), array( 'setting' => 'product_loop_layout', 'operator' => 'in', 'value' => array( '10' ), ), ), ), 'product_loop_variation_custom' => array( 'type' => 'custom', 'section' => 'product_loop', 'priority' => 10, 'default' => '
', 'active_callback' => array( array( 'setting' => 'product_loop_layout', 'operator' => 'in', 'value' => array( '8', '9' ), ), ), ), 'product_loop_variation' => array( 'type' => 'toggle', 'label' => esc_html__( 'Show Variations', 'razzi' ), 'section' => 'product_loop', 'default' => 1, 'active_callback' => array( array( 'setting' => 'product_loop_layout', 'operator' => 'in', 'value' => array( '8', '9' ), ), ), ), 'product_loop_variation_ajax' => array( 'type' => 'toggle', 'label' => esc_html__( 'Show Variations With AJAX', 'razzi' ), 'section' => 'product_loop', 'default' => 1, 'active_callback' => array( array( 'setting' => 'product_loop_layout', 'operator' => 'in', 'value' => array( '9' ), ), array( 'setting' => 'product_loop_variation', 'operator' => '==', 'value' => '1', ), ), ), 'product_loop_attribute_custom' => array( 'type' => 'custom', 'section' => 'product_loop', 'priority' => 10, 'default' => '
', 'active_callback' => array( array( 'setting' => 'product_loop_layout', 'operator' => 'in', 'value' => array( '1', '2', '3', '4', '5', '6', '10', '11', '12' ), ), ), ), 'product_loop_attribute' => array( 'type' => 'select', 'label' => esc_html__( 'Product Attribute', 'razzi' ), 'section' => 'product_loop', 'default' => 'none', 'choices' => $this->get_product_attributes(), 'description' => esc_html__( 'Show product attribute in the product loop', 'razzi' ), 'active_callback' => array( array( 'setting' => 'product_loop_layout', 'operator' => 'in', 'value' => array( '1', '2', '3', '4', '5', '6', '10', '11', '12' ), ), ), ), 'product_loop_attribute_in' => array( 'type' => 'multicheck', 'label' => esc_html__( 'Product Attribute In', 'razzi' ), 'section' => 'product_loop', 'default' => array('variable', 'simple'), 'choices' => array( 'variable' => esc_html__( 'Variable Product', 'razzi' ), 'simple' => esc_html__( 'Simple Product', 'razzi' ), ), 'active_callback' => array( array( 'setting' => 'product_loop_layout', 'operator' => 'in', 'value' => array( '1', '2', '3', '4', '5', '6', '10', '11', '12' ), ), array( 'setting' => 'product_loop_attribute', 'operator' => '!=', 'value' => 'none', ), ), ), 'product_loop_attribute_number' => array( 'type' => 'number', 'description' => esc_html__( 'Product Attribute Number', 'razzi' ), 'section' => 'product_loop', 'default' => 4, 'active_callback' => array( array( 'setting' => 'product_loop_layout', 'operator' => 'in', 'value' => array( '1', '2', '3', '4', '5', '6', '10', '11', '12' ), ), array( 'setting' => 'product_loop_attribute', 'operator' => '!=', 'value' => 'none', ), ), ), 'product_loop_desc_custom' => array( 'type' => 'custom', 'section' => 'product_loop', 'priority' => 10, 'default' => '
', 'active_callback' => array( array( 'setting' => 'product_loop_layout', 'operator' => '==', 'value' => '6', ), ), ), 'product_loop_desc' => array( 'type' => 'toggle', 'label' => esc_html__( 'Show Description', 'razzi' ), 'section' => 'product_loop', 'default' => 1, 'priority' => 10, 'active_callback' => array( array( 'setting' => 'product_loop_layout', 'operator' => '==', 'value' => '6', ), ), ), 'product_loop_desc_length' => array( 'type' => 'slider', 'label' => esc_html__( 'Description Length', 'razzi' ), 'section' => 'product_loop', 'default' => 10, 'choices' => array( 'min' => 1, 'max' => 200, ), 'active_callback' => array( array( 'setting' => 'product_loop_layout', 'operator' => '==', 'value' => '6', ), ), ), 'product_loop_custom_button_color_br' => array( 'type' => 'custom', 'section' => 'product_loop', 'priority' => 10, 'default' => '
', 'active_callback' => array( array( 'setting' => 'product_loop_layout', 'operator' => '==', 'value' => '6', ), ), ), 'product_loop_custom_button_color' => array( 'type' => 'toggle', 'label' => esc_html__( 'Custom Button Color', 'razzi' ), 'section' => 'product_loop', 'default' => 0, 'active_callback' => array( array( 'setting' => 'product_loop_layout', 'operator' => '==', 'value' => '6', ), ), ), 'product_loop_button_bg_color' => array( 'label' => esc_html__( 'Background Color', 'razzi' ), 'type' => 'color', 'default' => '', 'section' => 'product_loop', 'transport' => 'postMessage', 'active_callback' => array( array( 'setting' => 'product_loop_custom_button_color', 'operator' => '==', 'value' => '1', ), array( 'setting' => 'product_loop_layout', 'operator' => '==', 'value' => '6', ), ), 'js_vars' => array( array( 'element' => 'ul.products.product-loop-layout-6 li.product .ajax_add_to_cart', 'property' => 'background-color', ), ), ), 'product_loop_button_text_color' => array( 'type' => 'color', 'label' => esc_html__( 'Text Color', 'razzi' ), 'transport' => 'postMessage', 'section' => 'product_loop', 'default' => '', 'active_callback' => array( array( 'setting' => 'product_loop_custom_button_color', 'operator' => '==', 'value' => '1', ), array( 'setting' => 'product_loop_layout', 'operator' => '==', 'value' => '6', ), ), 'js_vars' => array( array( 'element' => 'ul.products.product-loop-layout-6 li.product .ajax_add_to_cart', 'property' => 'color', ), ), ), 'product_loop_button_border_color' => array( 'type' => 'color', 'label' => esc_html__( 'Border Color', 'razzi' ), 'section' => 'product_loop', 'transport' => 'postMessage', 'default' => '', 'active_callback' => array( array( 'setting' => 'product_loop_custom_button_color', 'operator' => '==', 'value' => '1', ), array( 'setting' => 'product_loop_layout', 'operator' => '==', 'value' => '6', ), ), 'js_vars' => array( array( 'element' => 'ul.products.product-loop-layout-6 li.product .ajax_add_to_cart', 'property' => '--rz-border-color-primary', ), ), ), // Added to cart Notice 'added_to_cart_notice' => array( 'type' => 'select', 'label' => esc_html__( 'Added to Cart Notice', 'razzi' ), 'description' => esc_html__( 'Display a notification when a product is added to cart.', 'razzi' ), 'default' => 'panel', 'section' => 'product_notifications', 'choices' => array( 'panel' => esc_html__( 'Open mini cart panel', 'razzi' ), 'popup' => esc_html__( 'Open cart popup', 'razzi' ), 'simple' => esc_html__( 'Simple', 'razzi' ), 'none' => esc_html__( 'None', 'razzi' ), ), ), 'added_to_cart_notice_products' => array( 'type' => 'select', 'label' => esc_html__( 'Recommended Products', 'razzi' ), 'description' => esc_html__( 'Display recommended products on the cart popup', 'razzi' ), 'default' => 'related_products', 'section' => 'product_notifications', 'choices' => array( 'none' => esc_html__( 'None', 'razzi' ), 'best_selling_products' => esc_html__( 'Best selling products', 'razzi' ), 'featured_products' => esc_html__( 'Featured products', 'razzi' ), 'recent_products' => esc_html__( 'Recent products', 'razzi' ), 'sale_products' => esc_html__( 'Sale products', 'razzi' ), 'top_rated_products' => esc_html__( 'Top rated products', 'razzi' ), 'related_products' => esc_html__( 'Related products', 'razzi' ), 'upsells_products' => esc_html__( 'Upsells products', 'razzi' ), ), 'active_callback' => array( array( 'setting' => 'added_to_cart_notice', 'operator' => '==', 'value' => 'popup', ), ), ), 'added_to_cart_notice_products_title' => array( 'type' => 'text', 'description' => esc_html__( 'Title', 'razzi' ), 'default' => '', 'section' => 'product_notifications', 'active_callback' => array( array( 'setting' => 'added_to_cart_notice', 'operator' => '==', 'value' => 'popup', ), ), ), 'added_to_cart_notice_products_limit' => array( 'type' => 'number', 'description' => esc_html__( 'Number of products', 'razzi' ), 'section' => 'product_notifications', 'default' => 4, 'active_callback' => array( array( 'setting' => 'added_to_cart_notice', 'operator' => '==', 'value' => 'popup', ), ), ), 'added_to_cart_notice_auto_hide' => array( 'type' => 'number', 'label' => esc_html__( 'Cart Notification Auto Hide', 'razzi' ), 'description' => esc_html__( 'How many seconds you want to hide the notification.', 'razzi' ), 'section' => 'product_notifications', 'active_callback' => array( array( 'setting' => 'added_to_cart_notice', 'operator' => '==', 'value' => 'simple', ), ), 'default' => 3, ), 'cart_notice_auto_hide_custom' => array( 'type' => 'custom', 'section' => 'product_notifications', 'default' => '
', ), 'added_to_wishlist_notice' => array( 'type' => 'toggle', 'label' => esc_html__( 'Added to Wishlist Notification', 'razzi' ), 'description' => esc_html__( 'Display a notification when a product is added to wishlist', 'razzi' ), 'section' => 'product_notifications', 'default' => 0, ), 'wishlist_notice_auto_hide' => array( 'type' => 'number', 'label' => esc_html__( 'Wishlist Notification Auto Hide', 'razzi' ), 'description' => esc_html__( 'How many seconds you want to hide the notification.', 'razzi' ), 'section' => 'product_notifications', 'active_callback' => array( array( 'setting' => 'added_to_wishlist_notice', 'operator' => '==', 'value' => 1, ), ), 'default' => 3, ), // Page Cart 'update_cart_page_auto' => array( 'type' => 'toggle', 'label' => esc_html__( 'Update Cart Automatically', 'razzi' ), 'description' => esc_html__( 'Check this option to update cart page automatically', 'razzi' ), 'default' => 0, 'section' => 'woocommerce_cart', ), 'product_hr_1' => array( 'type' => 'custom', 'default' => '
', 'section' => 'woocommerce_cart', ), // Cross Sells 'product_cross_sells' => array( 'type' => 'toggle', 'label' => esc_html__( 'Show Cross-Sells Products', 'razzi' ), 'section' => 'woocommerce_cart', 'description' => esc_html__( 'Check this option to show cross-sells products in product cart page', 'razzi' ), 'default' => 1, ), 'product_cross_sells_title' => array( 'type' => 'text', 'label' => esc_html__( 'Cross-Sells Products Title', 'razzi' ), 'section' => 'woocommerce_cart', 'default' => '', 'active_callback' => array( array( 'setting' => 'product_cross_sells', 'operator' => '==', 'value' => 1, ), ), ), 'product_cross_sells_numbers' => array( 'type' => 'number', 'label' => esc_html__( 'Cross-Sells Products Numbers', 'razzi' ), 'section' => 'woocommerce_cart', 'default' => 6, 'description' => esc_html__( 'Specify how many numbers of Cross-Sells products you want to show on product cart page', 'razzi' ), 'active_callback' => array( array( 'setting' => 'product_cross_sells', 'operator' => '==', 'value' => 1, ), ), ), 'checkout_product_thumbnail' => array( 'type' => 'toggle', 'section' => 'woocommerce_checkout', 'label' => esc_html__( 'Display the product thumbnail', 'razzi' ), 'default' => false, ), ) ); // Product Page $fields = array_merge( $fields, array( 'product_layout' => array( 'type' => 'select', 'label' => esc_html__( 'Product Layout', 'razzi' ), 'default' => 'v1', 'section' => 'single_product_layout', 'choices' => array( 'v1' => esc_html__( 'Layout 1', 'razzi' ), 'v2' => esc_html__( 'Layout 2', 'razzi' ), 'v3' => esc_html__( 'Layout 3', 'razzi' ), 'v4' => esc_html__( 'Layout 4', 'razzi' ), 'v5' => esc_html__( 'Layout 5', 'razzi' ), ), ), 'product_content_width' => array( 'type' => 'select', 'label' => esc_html__('Product Content Width', 'razzi'), 'section' => 'single_product_layout', 'default' => 'normal', 'choices' => array( 'normal' => esc_html__('Normal', 'razzi'), 'large' => esc_html__('Large', 'razzi'), 'wide' => esc_html__('Wide', 'razzi'), ), ), 'product_sidebar' => array( 'type' => 'select', 'label' => esc_html__( 'Sidebar', 'razzi' ), 'description' => esc_html__( 'Go to Appearance > Widgets find to Product Sidebar to edit your sidebar', 'razzi' ), 'default' => 'full-content', 'choices' => array( 'content-sidebar' => esc_html__( 'Right Sidebar', 'razzi' ), 'sidebar-content' => esc_html__( 'Left Sidebar', 'razzi' ), 'full-content' => esc_html__( 'No Sidebar', 'razzi' ), ), 'section' => 'single_product_layout', ), 'product_hr_3' => array( 'type' => 'custom', 'default' => '
', 'section' => 'single_product_layout', ), 'single_product_page_header' => array( 'type' => 'toggle', 'label' => esc_html__( 'Breadcrumb', 'razzi' ), 'section' => 'single_product_layout', 'description' => esc_html__( 'Display breadcrumb on top of product page', 'razzi' ), 'default' => true, ), 'product_add_to_cart_ajax' => array( 'type' => 'toggle', 'label' => esc_html__( 'Add to cart with AJAX', 'razzi' ), 'section' => 'single_product_layout', 'default' => 1, 'description' => esc_html__( 'Check this option to enable add to cart with AJAX on the product page.', 'razzi' ), ), 'product_taxonomy' => array( 'type' => 'select', 'label' => esc_html__( 'Product Taxonomy', 'razzi' ), 'section' => 'single_product_layout', 'description' => esc_html__( 'Show a taxonomy above the product title', 'razzi' ), 'default' => 'product_cat', 'choices' => array( 'product_cat' => esc_html__( 'Category', 'razzi' ), 'product_brand' => esc_html__( 'Brand', 'razzi' ), 'product_author' => esc_html__( 'Author', 'razzi' ), '' => esc_html__( 'None', 'razzi' ), ), ), 'product_brand_type' => array( 'type' => 'select', 'label' => esc_html__( 'Product Taxonomy Type', 'razzi' ), 'section' => 'single_product_layout', 'default' => 'title', 'choices' => array( 'title' => esc_html__( 'Title', 'razzi' ), 'logo' => esc_html__( 'Logo', 'razzi' ), ), 'active_callback' => array( array( 'setting' => 'product_taxonomy', 'operator' => '!=', 'value' => '', ), ), ), 'product_wishlist_button' => array( 'type' => 'select', 'label' => esc_html__( 'Wishlist button', 'razzi' ), 'section' => 'single_product_layout', 'default' => 'icon', 'choices' => array( 'none' => esc_html__( 'None', 'razzi' ), 'icon' => esc_html__( 'Icon', 'razzi' ), 'title' => esc_html__( 'Icon & Title', 'razzi' ), ), ), 'product_hr_4' => array( 'type' => 'custom', 'default' => '
', 'section' => 'single_product_layout', ), 'product_image_zoom' => array( 'type' => 'toggle', 'label' => esc_html__( 'Image Zoom', 'razzi' ), 'description' => esc_html__( 'Zooms in where your cursor is on the image', 'razzi' ), 'default' => false, 'section' => 'single_product_layout', ), 'product_image_lightbox' => array( 'type' => 'toggle', 'label' => esc_html__( 'Image Lightbox', 'razzi' ), 'description' => esc_html__( 'Opens your images against a dark backdrop', 'razzi' ), 'default' => true, 'section' => 'single_product_layout', ), 'product_thumbnail_numbers' => array( 'type' => 'number', 'label' => esc_html__( 'Thumbnail Numbers', 'razzi' ), 'default' => 5, 'section' => 'single_product_layout', 'active_callback' => array( array( 'setting' => 'product_layout', 'operator' => 'in', 'value' => array( 'v1', 'v2' ), ), ), ), 'product_play_video' => array( 'type' => 'select', 'label' => esc_html__( 'Play video', 'razzi' ), 'section' => 'single_product_layout', 'default' => 'load', 'choices' => array( 'load' => esc_html__( 'From Page', 'razzi' ), 'popup' => esc_html__( 'In Popup', 'razzi' ), ), ), 'product_hr_6' => array( 'type' => 'custom', 'default' => '
', 'section' => 'single_product_layout', ), 'product_meta' => array( 'type' => 'multicheck', 'label' => esc_html__( 'Product Meta', 'razzi' ), 'section' => 'single_product_layout', 'default' => array( 'sku', 'category', 'tags' ), 'priority' => 10, 'choices' => array( 'sku' => esc_html__( 'Sku', 'razzi' ), 'tags' => esc_html__( 'Tags', 'razzi' ), 'category' => esc_html__( 'Category', 'razzi' ), ), ), 'product_hr_7' => array( 'type' => 'custom', 'default' => '
', 'section' => 'single_product_layout', ), 'product_tabs_position' => array( 'type' => 'select', 'label' => esc_html__( 'Product Tabs Position', 'razzi' ), 'default' => 'default', 'section' => 'single_product_layout', 'choices' => array( 'default' => esc_html__( 'Under Product Gallery', 'razzi' ), 'under_summary' => esc_html__( 'Under Product Summary', 'razzi' ), ), 'active_callback' => array( array( 'setting' => 'product_layout', 'operator' => 'in', 'value' => array( 'v1', 'v2', 'v3', 'v4' ), ), ), ), 'product_tabs_status' => array( 'type' => 'select', 'label' => esc_html__( 'Product Tabs Status', 'razzi' ), 'default' => 'close', 'section' => 'single_product_layout', 'choices' => array( 'close' => esc_html__( 'Close all tabs', 'razzi' ), 'first' => esc_html__( 'Open first tab', 'razzi' ), ), 'active_callback' => function() { $product_layout = get_theme_mod( 'product_layout', 'v1' ); $product_tabs_position = get_theme_mod( 'product_tabs_position', 'default' ); if ( $product_layout == 'v5') { return true; } elseif ( in_array($product_layout, array('v1', 'v2', 'v3', 'v4') ) && $product_tabs_position == 'under_summary') { return true; } return false; }, ), 'product_add_to_cart_sticky' => array( 'type' => 'toggle', 'label' => esc_html__( 'Sticky Add To Cart', 'razzi' ), 'section' => 'sticky_add_to_cart', 'default' => 0, 'description' => esc_html__( 'A small content bar at the top of the browser window which includes relevant product information and an add-to-cart button. It slides into view once the standard add-to-cart button has scrolled out of view.', 'razzi' ), ), 'product_add_to_cart_sticky_position' => array( 'type' => 'select', 'label' => esc_html__( 'Sticky Bar Position', 'razzi' ), 'default' => 'top', 'section' => 'sticky_add_to_cart', 'choices' => array( 'top' => esc_html__( 'Top', 'razzi' ), 'bottom' => esc_html__( 'Bottom', 'razzi' ), ), 'active_callback' => array( array( 'setting' => 'product_add_to_cart_sticky', 'operator' => '==', 'value' => 1, ), ), ), 'product_atc_variable' => array( 'type' => 'select', 'label' => esc_html__( 'Product Variable Style', 'razzi' ), 'section' => 'sticky_add_to_cart', 'default' => 'form', 'priority' => 40, 'choices' => array( 'button' => esc_html__( 'Button Only', 'razzi' ), 'form' => esc_html__( 'Add To Cart Form', 'razzi' ), ), 'active_callback' => array( array( 'setting' => 'product_add_to_cart_sticky', 'operator' => '==', 'value' => 1, ), ), ), 'product_upsells' => array( 'type' => 'toggle', 'label' => esc_html__( 'Show Upsells Products', 'razzi' ), 'section' => 'single_product_upsells', 'description' => esc_html__( 'Check this option to show up-sells products in single product page', 'razzi' ), 'default' => 1, 'priority' => 40, ), 'product_upsells_title' => array( 'type' => 'text', 'label' => esc_html__( 'Up-sells Products Title', 'razzi' ), 'section' => 'single_product_upsells', 'default' => '', 'priority' => 40, ), 'product_upsells_numbers' => array( 'type' => 'number', 'label' => esc_html__( 'Up-sells Products Numbers', 'razzi' ), 'section' => 'single_product_upsells', 'default' => 6, 'priority' => 40, 'description' => esc_html__( 'Specify how many numbers of up-sells products you want to show on single product page', 'razzi' ), ), 'product_sharing' => array( 'type' => 'toggle', 'label' => esc_html__( 'Product Sharing', 'razzi' ), 'default' => true, 'section' => 'single_product_sharing', ), 'product_sharing_socials' => array( 'type' => 'multicheck', 'description' => esc_html__( 'Select social media for sharing products', 'razzi' ), 'section' => 'single_product_sharing', 'default' => array( 'facebook', 'twitter', 'pinterest', ), 'choices' => array( 'facebook' => esc_html__( 'Facebook', 'razzi' ), 'twitter' => esc_html__( 'Twitter', 'razzi' ), 'googleplus' => esc_html__( 'Google Plus', 'razzi' ), 'pinterest' => esc_html__( 'Pinterest', 'razzi' ), 'tumblr' => esc_html__( 'Tumblr', 'razzi' ), 'telegram' => esc_html__( 'Telegram', 'razzi' ), 'whatsapp' => esc_html__( 'WhatsApp', 'razzi' ), 'email' => esc_html__( 'Email', 'razzi' ), ), 'active_callback' => array( array( 'setting' => 'product_sharing', 'operator' => '==', 'value' => true, ), ), ), 'product_sharing_whatsapp_number' => array( 'type' => 'text', 'description' => esc_html__( 'WhatsApp Phone Number', 'razzi' ), 'section' => 'single_product_sharing', 'active_callback' => array( array( 'setting' => 'product_sharing', 'operator' => '==', 'value' => true, ), array( 'setting' => 'product_sharing_socials', 'operator' => 'contains', 'value' => 'whatsapp', ), ), ), 'product_external_open' => array( 'type' => 'toggle', 'label' => esc_html__( 'Open new tab', 'razzi' ), 'section' => 'single_product_external', 'description' => esc_html__( 'Check this option to open external product link on new tab.', 'razzi' ), 'default' => '', ), ) ); // Badges $fields = array_merge( $fields, array( 'product_catalog_badges' => array( 'type' => 'toggle', 'label' => esc_html__( 'Catalog Badges', 'razzi' ), 'description' => esc_html__( 'Display the badges in the catalog page', 'razzi' ), 'default' => true, 'section' => 'shop_badges', ), 'single_product_badges' => array( 'type' => 'toggle', 'label' => esc_html__( 'Product Badges', 'razzi' ), 'description' => esc_html__( 'Display the badges in the single page', 'razzi' ), 'default' => true, 'section' => 'shop_badges', ), 'product_catalog_badges_layout' => array( 'type' => 'select', 'label' => esc_html__( 'Badges Layout', 'razzi' ), 'section' => 'shop_badges', 'default' => 'dark', 'choices' => array( 'layout-1' => esc_html__( 'Layout 1', 'razzi' ), 'layout-2' => esc_html__( 'Layout 2', 'razzi' ), ), 'active_callback' => array( array( 'setting' => 'product_catalog_badges', 'operator' => '==', 'value' => '1', ), ), ), // badges 'product_hr_sale' => array( 'type' => 'custom', 'section' => 'shop_badges', 'default' => '

' . esc_html__( 'Sale Badge', 'razzi' ) . '

', ), 'shop_badge_sale' => array( 'type' => 'toggle', 'label' => esc_html__( 'Enalble', 'razzi' ), 'description' => esc_html__( 'Display a badge for sale products.', 'razzi' ), 'default' => true, 'section' => 'shop_badges', ), 'shop_badge_sale_type' => array( 'type' => 'radio', 'label' => esc_html__( 'Type', 'razzi' ), 'default' => 'text', 'choices' => array( 'percent' => esc_html__( 'Percentage', 'razzi' ), 'text' => esc_html__( 'Text', 'razzi' ), 'both' => esc_html__( 'Both', 'razzi' ), ), 'active_callback' => array( array( 'setting' => 'shop_badge_sale', 'operator' => '=', 'value' => true, ), ), 'section' => 'shop_badges', ), 'shop_badge_sale_text' => array( 'type' => 'text', 'label' => esc_html__( 'Text', 'razzi' ), 'tooltip' => esc_html__( 'Use {%} to display discount percentages, {$} to display discount amount.', 'razzi' ), 'default' => '', 'active_callback' => array( array( 'setting' => 'shop_badge_sale', 'operator' => '=', 'value' => true, ), array( 'setting' => 'shop_badge_sale_type', 'operator' => 'in', 'value' => array( 'text', 'both' ), ), ), 'section' => 'shop_badges', ), 'shop_badge_sale_color' => array( 'type' => 'color', 'label' => esc_html__( 'Color', 'razzi' ), 'default' => '', 'active_callback' => array( array( 'setting' => 'shop_badge_sale', 'operator' => '=', 'value' => true, ), ), 'transport' => 'postMessage', 'js_vars' => array( array( 'element' => '.woocommerce-badge.onsale', 'property' => 'color', ), ), 'section' => 'shop_badges', ), 'shop_badge_sale_bg' => array( 'type' => 'color', 'label' => esc_html__( 'Background', 'razzi' ), 'default' => '', 'active_callback' => array( array( 'setting' => 'shop_badge_sale', 'operator' => '=', 'value' => true, ), ), 'transport' => 'postMessage', 'js_vars' => array( array( 'element' => '.woocommerce-badge.onsale', 'property' => 'background-color', ), ), 'section' => 'shop_badges', ), 'product_hr_new' => array( 'type' => 'custom', 'section' => 'shop_badges', 'default' => '

' . esc_html__( 'New Badge', 'razzi' ) . '

', ), 'shop_badge_new' => array( 'type' => 'toggle', 'label' => esc_html__( 'Enable', 'razzi' ), 'description' => esc_html__( 'Display a badge for new products.', 'razzi' ), 'default' => true, 'section' => 'shop_badges', ), 'shop_badge_new_text' => array( 'type' => 'text', 'label' => esc_html__( 'Text', 'razzi' ), 'default' => '', 'active_callback' => array( array( 'setting' => 'shop_badge_new', 'operator' => '=', 'value' => true, ), ), 'section' => 'shop_badges', ), 'shop_badge_newness' => array( 'type' => 'number', 'label' => esc_html__('Product Newness', 'razzi'), 'description' => esc_html__( 'Display the "New" badge for how many days?', 'razzi' ), 'tooltip' => esc_html__( 'You can also add the NEW badge to each product in the Advanced setting tab of them.', 'razzi' ), 'default' => 3, 'active_callback' => array( array( 'setting' => 'shop_badge_new', 'operator' => '=', 'value' => true, ), ), 'section' => 'shop_badges', ), 'shop_badge_new_color' => array( 'type' => 'color', 'label' => esc_html__( 'Color', 'razzi' ), 'default' => '', 'active_callback' => array( array( 'setting' => 'shop_badge_new', 'operator' => '=', 'value' => true, ), ), 'transport' => 'postMessage', 'js_vars' => array( array( 'element' => '.woocommerce-badge.new', 'property' => 'color', ), ), 'section' => 'shop_badges', ), 'shop_badge_new_bg' => array( 'type' => 'color', 'label' => esc_html__( 'Background', 'razzi' ), 'default' => '', 'active_callback' => array( array( 'setting' => 'shop_badge_new', 'operator' => '=', 'value' => true, ), ), 'transport' => 'postMessage', 'js_vars' => array( array( 'element' => '.woocommerce-badge.new', 'property' => 'background-color', ), ), 'section' => 'shop_badges', ), 'product_hr_featured' => array( 'type' => 'custom', 'section' => 'shop_badges', 'default' => '

' . esc_html__( 'Featured Badge', 'razzi' ) . '

', ), 'shop_badge_featured' => array( 'type' => 'toggle', 'label' => esc_html__( 'Enable', 'razzi' ), 'description' => esc_html__( 'Display a badge for featured products.', 'razzi' ), 'default' => true, 'section' => 'shop_badges', ), 'shop_badge_featured_text' => array( 'type' => 'text', 'label' => esc_html__( 'Text', 'razzi' ), 'default' => '', 'active_callback' => array( array( 'setting' => 'shop_badge_featured', 'operator' => '=', 'value' => true, ), ), 'section' => 'shop_badges', ), 'shop_badge_featured_color' => array( 'type' => 'color', 'label' => esc_html__( 'Color', 'razzi' ), 'default' => '', 'active_callback' => array( array( 'setting' => 'shop_badge_featured', 'operator' => '=', 'value' => true, ), ), 'transport' => 'postMessage', 'js_vars' => array( array( 'element' => '.woocommerce-badge.featured', 'property' => 'color', ), ), 'section' => 'shop_badges', ), 'shop_badge_featured_bg' => array( 'type' => 'color', 'label' => esc_html__( 'Background', 'razzi' ), 'default' => '', 'active_callback' => array( array( 'setting' => 'shop_badge_featured', 'operator' => '=', 'value' => true, ), ), 'transport' => 'postMessage', 'js_vars' => array( array( 'element' => '.woocommerce-badge.featured', 'property' => 'background-color', ), ), 'section' => 'shop_badges', ), 'product_hr_soldout' => array( 'type' => 'custom', 'section' => 'shop_badges', 'default' => '

' . esc_html__( 'Sold Out Badge', 'razzi' ) . '

', ), 'shop_badge_soldout' => array( 'type' => 'toggle', 'label' => esc_html__( 'Enable', 'razzi' ), 'description' => esc_html__( 'Display a badge for out of stock products.', 'razzi' ), 'default' => false, 'section' => 'shop_badges', ), 'shop_badge_soldout_text' => array( 'type' => 'text', 'label' => esc_html__( 'Text', 'razzi' ), 'default' => '', 'active_callback' => array( array( 'setting' => 'shop_badge_soldout', 'operator' => '=', 'value' => true, ), ), 'section' => 'shop_badges', ), 'shop_badge_soldout_color' => array( 'type' => 'color', 'label' => esc_html__( 'Color', 'razzi' ), 'default' => '', 'active_callback' => array( array( 'setting' => 'shop_badge_soldout', 'operator' => '=', 'value' => true, ), ), 'transport' => 'postMessage', 'js_vars' => array( array( 'element' => '.woocommerce-badge.sold-out', 'property' => 'color', ), ), 'section' => 'shop_badges', ), 'shop_badge_soldout_bg' => array( 'type' => 'color', 'label' => esc_html__( 'Background', 'razzi' ), 'default' => '', 'active_callback' => array( array( 'setting' => 'shop_badge_soldout', 'operator' => '=', 'value' => true, ), ), 'transport' => 'postMessage', 'js_vars' => array( array( 'element' => '.woocommerce-badge.sold-out', 'property' => 'background-color', ), ), 'section' => 'shop_badges', ), ) ); // Product Qty $fields = array_merge( $fields, array( 'product_qty_input' => array( 'type' => 'radio', 'label' => esc_html__( 'Qty Input', 'razzi' ), 'default' => 'incremental', 'section' => 'product_qty', 'choices' => array( 'dropdown' => esc_html__( 'Dropdown', 'razzi' ), 'incremental' => esc_html__( 'Incremental', 'razzi' ), ), ), ) ); // Catalog page. $fields = array_merge( $fields, array( // Shop product catalog 'shop_catalog_layout' => array( 'type' => 'radio', 'label' => esc_html__( 'Catalog Layout', 'razzi' ), 'default' => 'grid', 'choices' => array( 'grid' => esc_html__( 'Grid', 'razzi' ), 'masonry' => esc_html__( 'Masonry', 'razzi' ), ), 'section' => 'catalog_layout', ), 'catalog_content_width' => array( 'type' => 'select', 'label' => esc_html__('Catalog Content Width', 'razzi'), 'section' => 'catalog_layout', 'default' => 'normal', 'choices' => array( 'normal' => esc_html__('Normal', 'razzi'), 'large' => esc_html__('Large', 'razzi'), 'wide' => esc_html__('Wide', 'razzi'), ), 'active_callback' => array( array( 'setting' => 'shop_catalog_layout', 'operator' => '==', 'value' => 'grid', ) ), ), 'catalog_sidebar' => array( 'type' => 'select', 'label' => esc_html__( 'Sidebar', 'razzi' ), 'description' => esc_html__( 'Go to appearance > widgets find to catalog sidebar to edit your sidebar', 'razzi' ), 'default' => 'full-content', 'choices' => array( 'content-sidebar' => esc_html__( 'Right Sidebar', 'razzi' ), 'sidebar-content' => esc_html__( 'Left Sidebar', 'razzi' ), 'full-content' => esc_html__( 'No Sidebar', 'razzi' ), ), 'active_callback' => array( array( 'setting' => 'shop_catalog_layout', 'operator' => '==', 'value' => 'grid', ) ), 'section' => 'catalog_layout', ), 'catalog_widget_collapse_content' => array( 'type' => 'toggle', 'label' => esc_html__( 'Collapse Widget', 'razzi' ), 'default' => 1, 'active_callback' => array( array( 'setting' => 'catalog_sidebar', 'operator' => '!=', 'value' => 'full-content', ), array( 'setting' => 'shop_catalog_layout', 'operator' => '==', 'value' => 'grid', ), ), 'section' => 'catalog_layout', ), 'catalog_widget_collapse_content_status' => array( 'type' => 'select', 'label' => esc_html__( 'Collapse Widget Status', 'razzi' ), 'default' => 'rz-show', 'active_callback' => array( array( 'setting' => 'catalog_sidebar', 'operator' => '!=', 'value' => 'full-content', ), array( 'setting' => 'shop_catalog_layout', 'operator' => '==', 'value' => 'grid', ), array( 'setting' => 'catalog_widget_collapse_content', 'operator' => '==', 'value' => '1', ), ), 'choices' => array( 'show' => esc_html__( 'Show the content', 'razzi' ), 'hide' => esc_html__( 'Hide the content', 'razzi' ), ), 'section' => 'catalog_layout', ), 'catalog_sticky_sidebar_custom' => array( 'type' => 'custom', 'section' => 'catalog_layout', 'default' => '
', 'active_callback' => array( array( 'setting' => 'shop_catalog_layout', 'operator' => '==', 'value' => 'grid', ) ), ), 'catalog_sticky_sidebar' => array( 'type' => 'toggle', 'label' => esc_html__( 'Sticky Sidebar', 'razzi' ), 'description' => esc_html__( 'Attachs the sidebar to the page when the user scrolls', 'razzi' ), 'default' => true, 'section' => 'catalog_layout', 'active_callback' => array( array( 'setting' => 'shop_catalog_layout', 'operator' => '==', 'value' => 'grid', ), array( 'setting' => 'catalog_sidebar', 'operator' => '!=', 'value' => 'full-content', ), ), ), 'shop_products_hr_1' => array( 'type' => 'custom', 'default' => '
', 'section' => 'catalog_layout', ), 'catalog_toolbar_filtered' => array( 'type' => 'toggle', 'label' => esc_html__( 'Enable Active Product Filters', 'razzi' ), 'section' => 'catalog_layout', 'default' => 1, ), 'shop_products_hr_10' => array( 'type' => 'custom', 'default' => '
', 'section' => 'catalog_layout', ), 'catalog_product_filter_sidebar' => array( 'type' => 'toggle', 'label' => esc_html__( 'Close Filter Sidebar before filtering', 'razzi' ), 'default' => 1, 'section' => 'catalog_layout', ), 'shop_products_hr_2' => array( 'type' => 'custom', 'default' => '
', 'section' => 'catalog_layout', ), 'product_catalog_navigation' => array( 'type' => 'select', 'label' => esc_html__( 'Navigation Type', 'razzi' ), 'default' => 'loadmore', 'choices' => array( 'numeric' => esc_html__( 'Numeric', 'razzi' ), 'loadmore' => esc_html__( 'Load More', 'razzi' ), 'infinite' => esc_html__( 'Infinite Scroll', 'razzi' ), ), 'section' => 'catalog_layout', ), 'shop_products_hr_3' => array( 'type' => 'custom', 'default' => '
', 'section' => 'catalog_layout', 'active_callback' => array( array( 'setting' => 'shop_catalog_layout', 'operator' => '==', 'value' => 'grid', ) ), ), ) ); // Catalog page. $fields = array_merge( $fields, array( 'catalog_page_header' => array( 'type' => 'radio', 'label' => esc_html__( 'Layout', 'razzi' ), 'default' => '', 'section' => 'catalog_page_header', 'choices' => array( '' => esc_html__( 'None', 'razzi' ), 'layout-1' => esc_html__( 'Layout 1', 'razzi' ), 'layout-2' => esc_html__( 'Layout 2', 'razzi' ), 'template' => esc_html__( 'Page Template', 'razzi' ), ), ), 'catalog_page_header_image' => array( 'type' => 'image', 'label' => esc_html__( 'Image', 'razzi' ), 'default' => '', 'section' => 'catalog_page_header', 'active_callback' => array( array( 'setting' => 'catalog_page_header', 'operator' => '==', 'value' => 'layout-2', ), ), ), 'catalog_page_header_els' => array( 'type' => 'multicheck', 'label' => esc_html__( 'Elements', 'razzi' ), 'section' => 'catalog_page_header', 'default' => array( 'breadcrumb', 'title' ), 'priority' => 10, 'choices' => array( 'breadcrumb' => esc_html__( 'BreadCrumb', 'razzi' ), 'title' => esc_html__( 'Title', 'razzi' ), ), 'description' => esc_html__( 'Select which elements you want to show.', 'razzi' ), 'active_callback' => array( array( 'setting' => 'catalog_page_header', 'operator' => 'in', 'value' => array('layout-2', 'layout-1'), ), ), ), 'catalog_page_header_custom_field_1' => array( 'type' => 'custom', 'section' => 'catalog_page_header', 'default' => '

' . esc_html__( 'Custom', 'razzi' ) . '

', 'active_callback' => array( array( 'setting' => 'catalog_page_header', 'operator' => 'in', 'value' => array('layout-2', 'layout-1'), ), ), ), 'catalog_page_header_padding_top' => array( 'type' => 'slider', 'label' => esc_html__( 'Padding Top', 'razzi' ), 'transport' => 'postMessage', 'section' => 'catalog_page_header', 'default' => '0', 'priority' => 20, 'choices' => array( 'min' => 0, 'max' => 700, ), 'js_vars' => array( array( 'element' => '.razzi-catalog-page .catalog-page-header--layout-1 .page-header__title', 'property' => 'padding-top', 'units' => 'px', ), array( 'element' => '.razzi-catalog-page .catalog-page-header--layout-2', 'property' => 'padding-top', 'units' => 'px', ), ), 'active_callback' => array( array( 'setting' => 'catalog_page_header', 'operator' => 'in', 'value' => array('layout-2', 'layout-1'), ), ), ), 'catalog_page_header_padding_bottom' => array( 'type' => 'slider', 'label' => esc_html__( 'Padding Bottom', 'razzi' ), 'transport' => 'postMessage', 'section' => 'catalog_page_header', 'default' => '0', 'priority' => 20, 'choices' => array( 'min' => 0, 'max' => 700, ), 'js_vars' => array( array( 'element' => '.razzi-catalog-page .catalog-page-header--layout-1 .page-header__title', 'property' => 'padding-bottom', 'units' => 'px', ), array( 'element' => '.razzi-catalog-page .catalog-page-header--layout-2', 'property' => 'padding-bottom', 'units' => 'px', ), ), 'active_callback' => array( array( 'setting' => 'catalog_page_header', 'operator' => 'in', 'value' => array('layout-2', 'layout-1'), ), ), ), 'catalog_page_header_background_overlay' => array( 'type' => 'color', 'label' => esc_html__( 'Background Overlay', 'razzi' ), 'transport' => 'postMessage', 'default' => '', 'choices' => [ 'alpha' => true, ], 'active_callback' => array( array( 'setting' => 'catalog_page_header', 'operator' => '==', 'value' => 'layout-2', ), ), 'js_vars' => array( array( 'element' => '.catalog-page-header--layout-2 .featured-image::before', 'property' => 'background-color', ), ), 'section' => 'catalog_page_header', ), 'catalog_page_header_text_color' => array( 'type' => 'color', 'label' => esc_html__( 'Title Color', 'razzi' ), 'transport' => 'postMessage', 'default' => '', 'active_callback' => array( array( 'setting' => 'catalog_page_header', 'operator' => '==', 'value' => 'layout-2', ), array( 'setting' => 'catalog_page_header_els', 'operator' => 'in', 'value' => 'title', ), ), 'js_vars' => array( array( 'element' => '.catalog-page-header--layout-2 .page-header', 'property' => '--rz-color-dark', ), ), 'section' => 'catalog_page_header', ), 'catalog_page_header_bread_color' => array( 'type' => 'color', 'label' => esc_html__( 'Breadcrumb Color', 'razzi' ), 'transport' => 'postMessage', 'default' => '', 'active_callback' => array( array( 'setting' => 'catalog_page_header', 'operator' => '==', 'value' => 'layout-2', ), array( 'setting' => 'catalog_page_header_els', 'operator' => 'in', 'value' => 'breadcrumb', ), ), 'js_vars' => array( array( 'element' => '.catalog-page-header--layout-2 .page-header .site-breadcrumb', 'property' => 'color', ), ), 'section' => 'catalog_page_header', ), 'shop_header_template_id' => array( 'type' => 'select', 'label' => esc_html__( 'Template', 'razzi' ), 'section' => 'catalog_page_header', 'default' => 'homepage-mobile', 'choices' => class_exists( 'Kirki_Helper' ) && is_admin() ? \Kirki_Helper::get_posts( array( 'posts_per_page' => - 1, 'post_type' => 'elementor_library', ) ) : '', 'active_callback' => array( array( 'setting' => 'catalog_page_header', 'operator' => '==', 'value' => 'template', ), ), ), // Banners 'shop_page_banners' => array( 'type' => 'toggle', 'label' => esc_html__( 'Show on Shop Page', 'razzi' ), 'section' => 'shop_banners', 'default' => false, ), 'category_page_banners' => array( 'type' => 'toggle', 'label' => esc_html__( 'Show on Category Page', 'razzi' ), 'section' => 'shop_banners', 'default' => false, ), 'shop_banners_images' => array( 'type' => 'repeater', 'label' => esc_html__( 'Images', 'razzi' ), 'section' => 'shop_banners', 'row_label' => array( 'type' => 'text', 'value' => esc_html__( 'Image', 'razzi' ), ), 'fields' => array( 'image' => array( 'type' => 'image', 'label' => esc_html__( 'Image', 'razzi' ), 'default' => '', ), 'link' => array( 'type' => 'text', 'label' => esc_html__( 'Link', 'razzi' ), 'default' => '', ), ), 'active_callback' => array( array( 'setting' => 'shop_banners', 'operator' => '==', 'value' => '1', ), ), ), 'taxonomy_description_enable' => array( 'type' => 'toggle', 'label' => esc_html__( 'Taxonomy Description', 'razzi' ), 'section' => 'taxonomy_description', 'default' => true, ), 'taxonomy_description_position' => array( 'type' => 'select', 'label' => esc_html__( 'Taxonomy Description Position', 'razzi' ), 'description' => esc_html__('This option works with the taxonomy such as product category, tag, brand...', 'razzi'), 'default' => 'above', 'section' => 'taxonomy_description', 'choices' => array( 'above' => esc_html__( 'Above the Products', 'razzi' ), 'below' => esc_html__( 'Below the Products', 'razzi' ), ), 'active_callback' => array( array( 'setting' => 'taxonomy_description_enable', 'operator' => '==', 'value' => true, ), ), ), // Catalog Toolbar 'catalog_toolbar' => array( 'type' => 'toggle', 'label' => esc_html__( 'Catalog Toolbar', 'razzi' ), 'default' => true, 'section' => 'catalog_toolbar', ), 'catalog_toolbar_layout' => array( 'type' => 'select', 'label' => esc_html__( 'Toolbar Layout', 'razzi' ), 'default' => 'v1', 'section' => 'catalog_toolbar', 'choices' => array( 'v1' => esc_html__( 'Layout V1', 'razzi' ), 'v2' => esc_html__( 'Layout V2', 'razzi' ), 'v3' => esc_html__( 'Layout V3', 'razzi' ), ), ), 'catalog_toolbar_layout_1' => array( 'type' => 'custom', 'default' => '', 'section' => 'catalog_toolbar', 'description' => esc_html__( 'Add Razzi - Product filter widget in Appearance > Widgets > Catalog Filters sidebar.', 'razzi' ), 'active_callback' => array( array( 'setting' => 'catalog_toolbar_layout', 'operator' => '!=', 'value' => 'v1', ), ), ), 'catalog_toolbar_els' => array( 'type' => 'select', 'label' => esc_html__( 'Toolbar Left', 'razzi' ), 'default' => 'page_header', 'section' => 'catalog_toolbar', 'choices' => array( 'page_header' => esc_html__( 'Page Header', 'razzi' ), 'result' => esc_html__( 'Showing Result', 'razzi' ), ), 'active_callback' => array( array( 'setting' => 'catalog_toolbar_layout', 'operator' => '==', 'value' => 'v1', ), ), ), 'catalog_toolbar_hr_1' => array( 'type' => 'custom', 'default' => '
', 'section' => 'catalog_toolbar', 'active_callback' => array( array( 'setting' => 'catalog_toolbar_layout', 'operator' => '==', 'value' => 'v3', ), ), ), 'catalog_toolbar_tabs' => array( 'type' => 'select', 'label' => esc_html__( 'Products Tabs', 'razzi' ), 'default' => 'category', 'section' => 'catalog_toolbar', 'choices' => array( 'group' => esc_html__( 'Groups', 'razzi' ), 'category' => esc_html__( 'Categories', 'razzi' ), ), 'active_callback' => array( array( 'setting' => 'catalog_toolbar_layout', 'operator' => '==', 'value' => 'v3', ), ), ), 'catalog_toolbar_tabs_groups' => array( 'type' => 'multicheck', 'default' => array( 'best_sellers', 'new', 'sale' ), 'section' => 'catalog_toolbar', 'choices' => array( 'best_sellers' => esc_html__( 'Best Sellers', 'razzi' ), 'featured' => esc_html__( 'Hot Products', 'razzi' ), 'new' => esc_html__( 'New Products', 'razzi' ), 'sale' => esc_html__( 'Sale Products', 'razzi' ), ), 'active_callback' => array( array( 'setting' => 'catalog_toolbar_tabs', 'operator' => '==', 'value' => 'group', ), array( 'setting' => 'catalog_toolbar_layout', 'operator' => '==', 'value' => 'v3', ), ), ), 'catalog_toolbar_tabs_categories' => array( 'type' => 'text', 'description' => esc_html__( 'Product categories. Enter category names, separate by commas. Leave empty to get all categories. Enter a number to get limit number of top categories.', 'razzi' ), 'default' => 3, 'section' => 'catalog_toolbar', 'active_callback' => array( array( 'setting' => 'catalog_toolbar_tabs', 'operator' => '==', 'value' => 'category', ), array( 'setting' => 'catalog_toolbar_layout', 'operator' => '==', 'value' => 'v3', ), ), ), 'catalog_toolbar_tabs_subcategories' => array( 'type' => 'checkbox', 'label' => esc_html__( 'Replace by sub-categories', 'razzi' ), 'default' => false, 'section' => 'catalog_toolbar', 'active_callback' => array( array( 'setting' => 'catalog_toolbar_tabs', 'operator' => '==', 'value' => 'category', ), array( 'setting' => 'catalog_toolbar_layout', 'operator' => '==', 'value' => 'v3', ), ), ), 'catalog_toolbar_hr_2' => array( 'type' => 'custom', 'default' => '
', 'section' => 'catalog_toolbar', 'active_callback' => array( array( 'setting' => 'catalog_toolbar_layout', 'operator' => '==', 'value' => 'v3', ), ), ), 'catalog_toolbar_products_filter' => array( 'type' => 'radio', 'label' => esc_html__( 'Products Filter', 'razzi' ), 'tooltip' => esc_html__( 'Add Razzi - Product filter widget in Appearance > Widgets > Catalog Filters sidebar.', 'razzi' ), 'default' => 'dropdown', 'choices' => array( 'modal' => esc_html__( 'Open filters on side', 'razzi' ), 'dropdown' => esc_html__( 'Open filters bellow', 'razzi' ), ), 'active_callback' => array( array( 'setting' => 'catalog_toolbar_layout', 'operator' => '==', 'value' => 'v3', ), ), 'section' => 'catalog_toolbar', ), 'catalog_filters_sidebar_collapse_content' => array( 'type' => 'toggle', 'label' => esc_html__( 'Collapse Widget', 'razzi' ), 'default' => 1, 'active_callback' => array( array( 'setting' => 'catalog_toolbar_layout', 'operator' => '==', 'value' => 'v3', ), array( 'setting' => 'catalog_toolbar_products_filter', 'operator' => '==', 'value' => 'modal', ), ), 'section' => 'catalog_toolbar', ), 'catalog_filters_sidebar_collapse_status' => array( 'type' => 'select', 'label' => esc_html__( 'Collapse Widget Status', 'razzi' ), 'default' => 'show', 'active_callback' => array( array( 'setting' => 'catalog_toolbar_layout', 'operator' => '==', 'value' => 'v3', ), array( 'setting' => 'catalog_toolbar_products_filter', 'operator' => '==', 'value' => 'modal', ), array( 'setting' => 'catalog_filters_sidebar_collapse_content', 'operator' => '==', 'value' => '1', ), ), 'choices' => array( 'show' => esc_html__( 'Show the content', 'razzi' ), 'hide' => esc_html__( 'Hide the content', 'razzi' ), ), 'section' => 'catalog_toolbar', ), 'catalog_toolbar_hr_3' => array( 'type' => 'custom', 'default' => '
', 'section' => 'catalog_toolbar', 'active_callback' => array( array( 'setting' => 'catalog_toolbar_layout', 'operator' => '==', 'value' => 'v3', ), ), ), 'catalog_toolbar_products_sorting' => array( 'type' => 'toggle', 'label' => esc_html__( 'Product Sorting', 'razzi' ), 'default' => true, 'section' => 'catalog_toolbar', 'active_callback' => array( array( 'setting' => 'catalog_toolbar_layout', 'operator' => '==', 'value' => 'v3', ), ), ), // Categories 'top_categories_shop_page' => array( 'type' => 'toggle', 'label' => esc_html__( 'Show on Shop Page', 'razzi' ), 'section' => 'catalog_categories', 'default' => false, ), 'custom_top_categories' => array( 'type' => 'toggle', 'label' => esc_html__( 'Custom Categories', 'razzi' ), 'section' => 'catalog_categories', 'default' => 0, 'active_callback' => array( array( 'setting' => 'top_categories_shop_page', 'operator' => '==', 'value' => true, ), ), ), 'top_categories_name' => array( 'type' => 'text', 'description' => esc_html__( 'Enter product category name, separate by commas.', 'razzi' ), 'section' => 'catalog_categories', 'default' => '', 'active_callback' => array( array( 'setting' => 'top_categories_shop_page', 'operator' => '==', 'value' => true, ), array( 'setting' => 'custom_top_categories', 'operator' => '==', 'value' => 1, ), ), ), 'top_categories_shop_page_custom' => array( 'type' => 'custom', 'section' => 'catalog_categories', 'default' => '
', ), 'top_categories_category_page' => array( 'type' => 'toggle', 'label' => esc_html__( 'Show on Category Page', 'razzi' ), 'section' => 'catalog_categories', 'default' => false, ), 'catalog_top_categories_subcategories' => array( 'type' => 'checkbox', 'label' => esc_html__( 'Replace by sub-categories', 'razzi' ), 'default' => false, 'section' => 'catalog_categories', ), 'catalog_top_categories_count' => array( 'type' => 'toggle', 'label' => esc_html__( 'Products Count', 'razzi' ), 'section' => 'catalog_categories', 'default' => 1, ), 'catalog_top_categories_limit' => array( 'type' => 'number', 'label' => esc_html__( 'Limit', 'razzi' ), 'section' => 'catalog_categories', 'default' => 10, 'active_callback' => function() { return $this->display_top_categories(); }, ), 'catalog_top_categories_orderby' => array( 'type' => 'select', 'label' => esc_html__( 'Order By', 'razzi' ), 'section' => 'catalog_categories', 'default' => 'order', 'choices' => array( 'order' => esc_html__( 'Category Order', 'razzi' ), 'name' => esc_html__( 'Category Name', 'razzi' ), 'id' => esc_html__( 'Category ID', 'razzi' ), 'count' => esc_html__( 'Product Counts', 'razzi' ), ), 'active_callback' => function() { return $this->display_top_categories(); }, ), 'top_categories_ajax_filter' => array( 'type' => 'toggle', 'label' => esc_html__( 'Filter With AJAX', 'razzi' ), 'section' => 'catalog_categories', 'default' => true, ), ) ); return $fields; } /** * Get categories Product * * @since 1.0.0 * * @param $taxonomies * @param $default * * @return array */ public static function get_categories_product($taxonomies, $default = false) { if (!taxonomy_exists($taxonomies)) { return []; } $output = []; if ($default) { $output[0] = esc_html__('Select Category', 'razzi'); } global $wpdb; $post_meta_infos = $wpdb->get_results( $wpdb->prepare( "SELECT a.term_id AS id, b.name as name, b.slug AS slug FROM {$wpdb->term_taxonomy} AS a INNER JOIN {$wpdb->terms} AS b ON b.term_id = a.term_id WHERE a.taxonomy = '%s'", $taxonomies ), ARRAY_A ); if (is_array($post_meta_infos) && !empty($post_meta_infos)) { foreach ($post_meta_infos as $value) { $output[$value['slug']] = $value['name']; } } return $output; } /** * Display top categories * * @since 1.0.0 * * @return array */ public function display_top_categories() { if ( get_theme_mod( 'custom_top_categories' ) != 0 ) { if( get_theme_mod( 'catalog_top_categories_subcategories' ) == true ) { return true; } else { return false; } } else { return true; } } /** * Get product attributes * * @return string */ public function get_product_attributes() { $output = array(); if ( function_exists( 'wc_get_attribute_taxonomies' ) ) { $attributes_tax = wc_get_attribute_taxonomies(); if ( $attributes_tax ) { $output['none'] = esc_html__( 'None', 'razzi' ); foreach ( $attributes_tax as $attribute ) { $output[$attribute->attribute_name] = $attribute->attribute_label; } } } return $output; } }