本站使用的Girdlove主题的主题设置用的是Redux框架,在对主题进行二次开发的时候,需要在菜单栏展示一个购物车的按钮,但是在主题设置中并没有这个选项,于是通过查找相关文档,增加了这个选项。为了不影响主题的升级,所以本站所有对主题的设置和修改都是在子主题中进行的,通过修改,在子主题的设置中就会出现下图Cart2的选项。

先研究原来的设置选项,在options-fields.php可以查看到,此部分设置的代码
array( 'id' => 'header_actions', 'type' => 'sortable', 'mode' => 'checkbox', 'title' => esc_html__( 'Enable special elements in header', 'gridlove' ), 'subtitle' => esc_html__( 'Check and reorder special elements you want to display', 'gridlove' ), 'options' => array( 'search-button' => esc_html__( 'Search button', 'gridlove' ), 'sidebar-button' => esc_html__( 'Header Sidebar button', 'gridlove' ), 'search-form' => esc_html__( 'Search form', 'gridlove' ), 'social-menu-drop' => esc_html__( 'Social menu button', 'gridlove' ), 'social-menu' => esc_html__( 'Social menu icons list', 'gridlove' ), 'login-form' => esc_html__( 'Login form (icon/dropdown)', 'gridlove' ), ), 'default' => array( 'search-button' => 1, 'sidebar-button' => 1, 'search-form' => 0, 'social-menu-drop' => 0, 'social-menu' => 0, ), ),
当然可以在这个文件中直接增加一个选项,当时考虑到将来主题升级会覆盖掉原来的文件,那么这样的修改就行不通了。通过查看redux的文档,可以在function.php中进行修改。
function add_option_for_redux( $field ){ $field['options']['woo-cart']=esc_html__( 'Cart2', 'gridlove' ); $field['default']['woo-cart']=0; return $field; } add_filter("redux/options/gridlove_settings/field/header_sticky_actions", 'add_option_for_redux'); add_filter("redux/options/gridlove_settings/field/header_actions", 'add_option_for_redux');
其中 gridlove_settings
为 opt_name
,在option.php中可以查到。 header_sticky_actions
header_actions
为设置选项的ID,这里为两个设置都增加了这个选项。
这样在以后更新主题的时候就不会影响这些设置了。
声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。