我想改变主题的核心文件。我正在使用子主题,我想从我的functions.php
改变我的核心文件功能。
这是核心文件功能:
// main blog drag and drop options
function cyberchimps_selected_elements() {
$options = array(
'boxes_lite' => __( 'Boxes Lite', 'cyberchimps_elements' ),
"portfolio_lite" => __( 'Portfolio Lite', 'cyberchimps_elements' ),
"blog_post_page" => __( 'Post Page', 'cyberchimps_elements' ),
"slider_lite" => __( 'Slider Lite', 'cyberchimps_elements' )
);
return $options;
}
add_filter( 'cyberchimps_elements_draganddrop_options', 'cyberchimps_selected_elements' );
现在,我只想在此代码中添加一行:
"box_lite" => __( 'box', 'cyberchimps_elements' ),
这一个:
require_once( $directory_path . '/elements/boxes2.php' );
有人帮我这个吗?
答案 0 :(得分:1)
有一个很棒的WordPress函数叫remove_filter()。您可以使用它来删除上述功能,然后在您的子主题的 functions.php 中重新添加修改后的版本。类似的东西:
remove_filter( 'cyberchimps_elements_draganddrop_options', 'cyberchimps_selected_elements' );
add_filter( 'cyberchimps_elements_draganddrop_options', 'cyberchimps_selected_elements_child' );
// main blog drag and drop options
function cyberchimps_selected_elements_child() {
$options = array(
"box_lite" => __( 'box', 'cyberchimps_elements' ),
"portfolio_lite" => __( 'Portfolio Lite', 'cyberchimps_elements' ),
"blog_post_page" => __( 'Post Page', 'cyberchimps_elements' ),
"slider_lite" => __( 'Slider Lite', 'cyberchimps_elements' )
);
return $options;
}
答案 1 :(得分:0)
你可以根据下面给出的代码应用一个参数变量,它肯定会工作,你必须确保无论你想要检索更改的数组选项,你必须传递参数值“false”。函数调用也写在代码下面..祝你好运...
// main blog drag and drop options
function cyberchimps_selected_elements($default=true) {
if($default){
$options = array(
"boxes_lite" => __( 'Boxes Lite', 'cyberchimps_elements' ),
"portfolio_lite" => __( 'Portfolio Lite', 'cyberchimps_elements' ),
"blog_post_page" => __( 'Post Page', 'cyberchimps_elements' ),
"slider_lite" => __( 'Slider Lite', 'cyberchimps_elements' )
);
} else {
$options = array(
"boxes_lite" => __( 'Boxes Lite', 'cyberchimps_elements' ),
"portfolio_lite" => __( 'Portfolio Lite', 'cyberchimps_elements' ),
"blog_post_page" => __( 'Post Page', 'cyberchimps_elements' ),
"slider_lite" => __( 'Slider Lite', 'cyberchimps_elements' ),
"box_lite" => __( 'box', 'cyberchimps_elements' )
);
}
return $options;
}
函数调用示例:
//function call
cyberchimps_selected_elements(false);