从子主题加载文件(函数和变量值)

时间:2017-05-05 作者:Caracos

有没有加载文件的方法(copyright.php) 功能(&A);变量的值转换为子主题的functions.php

我试图传递该值以更改页脚信用。如果我将代码直接包含在functions.php, 但是我正在尝试将代码排除到另一个文件中,以便我的客户端可以在将来轻松地更改变量值,而无需接触functions.php. 以下是我的代码,但它不起作用:

copyright.php (在子主题文件夹中)

function display_company_url() {    
global $company_url;
$company_url = \'www.mycompany.com\';
return $company_url;
}

function display_company_name() {   
global $company_name;
$company_name = \'MY COMPANY\';
return $company_name;
}
functions.php (儿童主题)

add_action( \'wp_enqueue_scripts\', \'my_assets\' );)
function my_assets() {
wp_register_script( \'copyright\', get_stylesheet_directory_uri() . \'/copyright.php\' );
wp_enqueue_script( \'copyright\' );   
}


// REMOVE AND MODIFIED PARENT\'S FOOTER
add_action( \'init\', \'remove_parent_footer\', 10);
function remove_parent_footer() {
remove_action(\'parent_footer\', \'parent_footer_credits\', 8);


add_action(\'parent_footer\', \'child_footer_credits\', 8); 
function child_footer_credits() {
    ?>
        <div class="site-info col-md-6">
            <a href="<?php echo esc_url( __( \'/login\', \'childtheme\' ) ); ?>" rel="nofollow"> <?php echo "Copyright" ?></a> &copy; <?php echo date("Y"); ?>
            <?php echo get_bloginfo( \'name\' ) . ". All rights reserved."; ?> <br> <?php echo "Powered by"; ?>
            <a href="<?php echo esc_url( __( display_company_url(), \'childtheme\' ) ); ?>" rel="nofollow"><?php echo display_company_name(); ?></a>
        </div><!-- .site-info -->
    <?php
}

}
页脚贷方应显示:

版权所有©2017 BLOGNAME。保留所有权利<由我的公司提供动力

1 个回复
最合适的回答,由SO网友:Ale 整理而成

我建议使用WordPress Customize API. 在那里,您可以根据需要设置任意多的字段,所有字段都将很好地显示在主题的“自定义”菜单中。

<?php
/* New Section in Customize */
add_action( \'customize_register\',\'new_customize_option\');
function new_customize_option( $wp_customize ) {

    /* --------------REGISTERING NEW SECTION --------------- */


    $wp_customize->add_section( \'rewp_logo\' , array(
    \'title\'      => __( \'Copywrite fields\', \'textdomain\' ),
    \'priority\'   => 260,
    ) );

    /* -------------- S E T T I N G S --------------- */


    /* Setting: Set a text field   */
    $wp_customize->add_setting( \'rewp-text\' , array(
    \'default\'     => \'Copywrite 2017\',
    \'capability\'  => \'edit_theme_options\',
    ) );

    /* -------------- C O N T R O L S --------------- */

    /* Control: Upload Background */
    /* Control: Set a link */
    $wp_customize->add_control( new WP_Customize_Control( $wp_customize, \'rewp-text\', array(
    \'label\'     => __( \'Copywrite text\', \'textdomain\' ),
    \'section\'   => \'rewp_logo\',
    \'settings\'  => \'rewp-text\',
    \'type\'      => \'text\',
    \'priority\'  => 1
    ) ) );

} ?>
然后您可以像这样使用它:

$mods = get_theme_mods();
echo $mods[\'rewp-text\'];
@Rishabh的建议也会起作用,但请记住,如果此页面被意外删除,则需要创建一个新页面并再次编辑代码。

相关推荐

Admin Theme customization

我遵循wordpress codex网站上关于通过插件创建管理主题的说明。我激活了插件,但我的样式表没有包含在<head>.. 这是我的代码:add_action( \'admin_init\', \'kd_plugin_admin_init\' ); add_action( \'admin_menu\', \'kd_plugin_admin_menu\' ); function kd_plugin_admin_init() { /* Register