'priority' => 20, ), 'footer_payment_images' => array( 'type' => 'repeater', 'label' => esc_html__( 'Footer Images', 'martfury' ), 'section' => 'footer_payment', 'priority' => 40, 'row_label' => array( 'type' => 'text', 'value' => esc_html__( 'Image', 'martfury' ), ), 'fields' => array( 'image' => array( 'type' => 'image', 'label' => esc_html__( 'Image', 'martfury' ), 'default' => '', ), 'alt' => array( 'type' => 'text', 'label' => esc_html__( 'Alt Text', 'martfury' ), 'default' => '', ), 'link' => array( 'type' => 'text', 'label' => esc_html__( 'Link', 'martfury' ), 'default' => '', ), ), ), // Recent viewed 'footer_recently_viewed' => array( 'type' => 'toggle', 'label' => esc_html__( 'Show Recently Viewed', 'martfury' ), 'section' => 'footer_recently_viewed', 'default' => 1, 'priority' => 90, 'description' => esc_html__( 'Check this option to show the recently viewed products above the footer.', 'martfury' ), ), 'footer_recently_viewed_layout' => array( 'type' => 'select', 'label' => esc_html__( 'Recently Viewed Layout', 'martfury' ), 'section' => 'footer_recently_viewed', 'default' => '1', 'priority' => 90, 'choices' => array( '1' => esc_html__( 'Layout 1', 'martfury' ), '2' => esc_html__( 'Layout 2', 'martfury' ), ), ), 'footer_recently_viewed_ajax' => array( 'type' => 'toggle', 'label' => esc_html__( 'Loading with AJAX', 'martfury' ), 'section' => 'footer_recently_viewed', 'default' => 1, 'priority' => 90, 'description' => esc_html__( 'Check this option to load the recently viewed products with AJAX.', 'martfury' ), 'active_callback' => array( array( 'setting' => 'footer_recently_viewed_layout', 'operator' => '==', 'value' => '1', ), ), ), 'footer_recently_viewed_empty' => array( 'type' => 'toggle', 'label' => esc_html__( 'Hide Recently Viewed Empty', 'martfury' ), 'section' => 'footer_recently_viewed', 'default' => 1, 'priority' => 90, 'description' => esc_html__( 'Check this option to hide the recently viewed products when empty.', 'martfury' ), 'active_callback' => array( array( 'setting' => 'footer_recently_viewed_layout', 'operator' => '==', 'value' => '1', ), ), ), 'footer_recently_viewed_pt' => array( 'type' => 'toggle', 'label' => esc_html__( 'No Padding Top', 'martfury' ), 'section' => 'footer_recently_viewed', 'default' => 0, 'priority' => 90, 'description' => esc_html__( 'Check this option to remove padding top of the recently viewed products. This option is used for the homepage only.', 'martfury' ), 'active_callback' => array( array( 'setting' => 'footer_recently_viewed_layout', 'operator' => '==', 'value' => '1', ), ), ), 'footer_recently_viewed_no_bg' => array( 'type' => 'toggle', 'label' => esc_html__( 'No Background', 'martfury' ), 'section' => 'footer_recently_viewed', 'default' => 0, 'priority' => 90, 'description' => esc_html__( 'Check this option to disable background of the recently viewed products. This option is used for the homepage only.', 'martfury' ), 'active_callback' => array( array( 'setting' => 'footer_recently_viewed_layout', 'operator' => '==', 'value' => '1', ), ), ), 'footer_recently_viewed_els' => array( 'type' => 'multicheck', 'label' => esc_html__( 'Show Recently Viewed in', 'martfury' ), 'section' => 'footer_recently_viewed', 'default' => array( 'homepage', 'catalog', 'single_product' ), 'priority' => 90, 'choices' => array( 'homepage' => esc_html__( 'HomePage', 'martfury' ), 'catalog' => esc_html__( 'Catalog', 'martfury' ), 'single_product' => esc_html__( 'Single Product', 'martfury' ), 'page' => esc_html__( 'Page', 'martfury' ), 'post' => esc_html__( 'Post', 'martfury' ), 'other' => esc_html__( 'Other Pages', 'martfury' ), ), 'description' => esc_html__( 'Check pages to show the recently viewed products above the footer.', 'martfury' ), ), 'footer_recently_viewed_title' => array( 'type' => 'text', 'label' => esc_html__( 'Recently Viewed Title', 'martfury' ), 'section' => 'footer_recently_viewed', 'default' => esc_html__( 'Your Recently Viewed Products', 'martfury' ), 'priority' => 90, ), 'footer_recently_viewed_number' => array( 'type' => 'number', 'label' => esc_html__( 'Products Per Page', 'martfury' ), 'section' => 'footer_recently_viewed', 'default' => 12, 'priority' => 90, ), 'footer_recently_viewed_link_text' => array( 'type' => 'text', 'label' => esc_html__( 'View All Text', 'martfury' ), 'section' => 'footer_recently_viewed', 'default' => '', 'priority' => 90, ), 'footer_recently_viewed_link_url' => array( 'type' => 'text', 'label' => esc_html__( 'View All URL', 'martfury' ), 'section' => 'footer_recently_viewed', 'default' => '', 'priority' => 90, ), ); $catalog_layouts = array( 'shop_layout' => array( 'section' => 'shop_page', 'field' => 'shop', 'label' => esc_html__( 'Shop Layout', 'martfury' ), 'description' => esc_html__( 'Select default layout for shop.', 'martfury' ), ), 'products_cat_level_1_layout' => array( 'section' => 'product_cat_level_1_page', 'field' => 'products_cat_level_1', 'label' => esc_html__( 'Category Layout', 'martfury' ), 'description' => esc_html__( 'Select default layout for category level 1.', 'martfury' ), ), ); $catalog_fields = array(); foreach ( $catalog_layouts as $layout ) { $catalog_fields[ $layout['field'] . '_layout' ] = array( 'type' => 'select', 'label' => $layout['label'], 'default' => '10', 'section' => $layout['section'], 'description' => $layout['description'], 'priority' => 70, 'choices' => array( '10' => esc_html__( 'Default', 'martfury' ), '1' => esc_html__( 'Catalog Layout 1', 'martfury' ), '2' => esc_html__( 'Catalog Layout 2', 'martfury' ), '3' => esc_html__( 'Catalog Layout 3', 'martfury' ), ), ); $catalog_fields[ $layout['field'] . '_els_1' ] = array( 'type' => 'multicheck', 'label' => $layout['label'] . ' ' . esc_html__( 'Elements', 'martfury' ), 'default' => array( 'banners', 'brands', 'categories', 'products_carousel', 'breadcrumb' ), 'section' => $layout['section'], 'priority' => 70, 'description' => esc_html__( 'Select which elements you want to show.', 'martfury' ), 'choices' => array( 'title' => esc_html__( 'Page Title', 'martfury' ), 'breadcrumb' => esc_html__( 'Breadcrumb', 'martfury' ), 'banners' => esc_html__( 'Banners', 'martfury' ), 'brands' => esc_html__( 'Brands', 'martfury' ), 'categories' => esc_html__( 'Categories Box', 'martfury' ), 'products_carousel' => esc_html__( 'Products Carousel', 'martfury' ), ), 'active_callback' => array( array( 'setting' => $layout['field'] . '_layout', 'operator' => '==', 'value' => '1', ), ), ); $catalog_fields[ $layout['field'] . '_els_2' ] = array( 'type' => 'multicheck', 'label' => $layout['label'] . ' ' . esc_html__( 'Elements', 'martfury' ), 'default' => array( 'title', 'top_categories', 'products_carousel', 'featured_categories', 'other_categories', 'breadcrumb' ), 'section' => $layout['section'], 'priority' => 70, 'description' => esc_html__( 'Select which elements you want to show.', 'martfury' ), 'choices' => array( 'title' => esc_html__( 'Page Title', 'martfury' ), 'breadcrumb' => esc_html__( 'Breadcrumb', 'martfury' ), 'top_categories' => esc_html__( 'Top Categories', 'martfury' ), 'products_carousel' => esc_html__( 'Products Carousel', 'martfury' ), 'featured_categories' => esc_html__( 'Featured Categories', 'martfury' ), 'other_categories' => esc_html__( 'Other Categories', 'martfury' ), ), 'active_callback' => array( array( 'setting' => $layout['field'] . '_layout', 'operator' => '==', 'value' => '2', ), ), ); $catalog_fields[ $layout['field'] . '_els_3' ] = array( 'type' => 'multicheck', 'label' => $layout['label'] . ' ' . esc_html__( 'Elements', 'martfury' ), 'default' => array( 'title', 'banners', 'products_carousel', 'breadcrumb' ), 'section' => $layout['section'], 'priority' => 70, 'description' => esc_html__( 'Select which elements you want to show.', 'martfury' ), 'choices' => array( 'title' => esc_html__( 'Page Title', 'martfury' ), 'breadcrumb' => esc_html__( 'Breadcrumb', 'martfury' ), 'banners' => esc_html__( 'Banners', 'martfury' ), 'products_carousel' => esc_html__( 'Products Carousel', 'martfury' ), ), 'active_callback' => array( array( 'setting' => $layout['field'] . '_layout', 'operator' => '==', 'value' => '3', ), ), ); $catalog_fields[ $layout['field'] . 'custom' ] = array( 'type' => 'custom', 'default' => '
', 'section' => $layout['section'], 'priority' => 70, ); } $catalog_fields['products_cat_level_1_els_10'] = array( 'type' => 'multicheck', 'label' => esc_html__( 'Category Layout Elements', 'martfury' ), 'default' => array( 'breadcrumb' ), 'section' => 'product_cat_level_1_page', 'priority' => 70, 'description' => esc_html__( 'Select which elements you want to show.', 'martfury' ), 'choices' => array( 'title' => esc_html__( 'Page Title', 'martfury' ), 'breadcrumb' => esc_html__( 'Breadcrumb', 'martfury' ), 'banners' => esc_html__( 'Banners', 'martfury' ), ), 'active_callback' => array( array( 'setting' => 'products_cat_level_1_layout', 'operator' => '==', 'value' => '10', ), ), ); $fields = array_merge( $fields, $catalog_fields ); if ( did_action( 'elementor/loaded' ) ) { $fields = array_merge( $fields, array( // Other Catlog 'elementor_columns_space' => array( 'type' => 'toggle', 'label' => esc_html__( 'Remove Default Columns Space', 'martfury' ), 'section' => 'elementor', 'default' => 1, 'priority' => 90, 'description' => esc_html__( 'Check this option to remove the default padding top, padding bottom of columns', 'martfury' ), ), ) ); } $settings['panels'] = apply_filters( 'martfury_customize_panels', $panels ); $settings['sections'] = apply_filters( 'martfury_customize_sections', $sections ); $settings['fields'] = apply_filters( 'martfury_customize_fields', $fields ); return $settings; } $martfury_customize = new Martfury_Customize( martfury_customize_settings() ); // Fix downloaded fonts from Google. if ( defined( 'KIRKI_VERSION' ) && version_compare( KIRKI_VERSION, '5.0.0', '<=' ) ) { /** * Change the http request headers of 'user-agent' to download .woff2 fonts frm Google. * * @param array $args * @param string $url * * @return array */ function martfury_fix_kirki_fonts_request_headers( $args, $url ) { if ( false === strpos( $url, 'https://fonts.googleapis.com/css' ) ) { return $args; } if ( isset( $args['user-agent'] ) && $args['user-agent'] == 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_10_5) AppleWebKit/603.3.8 (KHTML, like Gecko) Version/10.1.2 Safari/603.3.8' ) { $args['user-agent'] = 'Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:73.0) Gecko/20100101 Firefox/73.0'; } return $args; } add_filter( 'http_request_args', 'martfury_fix_kirki_fonts_request_headers', 10, 2 ); /** * Fix incorrect fonts files downloaded from Google. * Delete the Kirki's transients to force downloading font files again. * * @return void */ function martfury_fix_kirki_fonts() { delete_transient( 'kirki_remote_url_contents' ); } add_action( 'after_switch_theme', 'martfury_fix_kirki_fonts' ); add_action( 'wp_ajax_kirki_clear_font_cache', 'martfury_fix_kirki_fonts' ); }