子主题没有覆盖实时站点上的模板部分-但在本地站点上

时间:2017-04-17 作者:ibbadib

我正在使用llorix\\u one\\u lite主题,我喜欢它。它有一个很棒的头版,有不同的部分,包括在一个;“章节”;文件夹例如:llorix\\u one\\u lite\\u contact\\u info\\u section。php。

我在本地站点的主题定制器中添加了一个简单的文本字段。它工作得很好。

为此,我首先创建了一个子主题:Llorrix\\u one\\u lite\\u child。然后在a中;“章节”;文件夹中有一个文件名为:Llorix\\u one\\u lite\\u child\\u contact\\u info\\u section。php,它与父文件相同,只是我正在通过customizer编辑h2标记。

当我把它上传到一个实时站点时,它不起作用。子文件(llorix\\u one\\u lite\\u child\\u contact\\u info\\u section.php)未覆盖父对应文件(llorix\\u one\\u lite\\u contact\\u info\\u section.php)。

我知道函数中的代码。php正在工作,因为它将设置保存在customizer中,但没有输出(因为从未在said上调用get\\u theme\\u mod)。

我是否应该将子文件重命名为:llorix\\u one\\u lite\\u contact\\u info\\u section\\u child。php?--或:llorix\\u one\\u lite\\u contact\\u info\\u部分。php?

我只在我本地的机器上尝试了后者,但它打破了部分。它会显示在自定义程序中,但不会在前端更改任何内容。

感谢您阅读我在wordpress社区的长篇(也是第一篇帖子)。我是wordpress开发的新手,但希望能从事web开发和/或前端开发。

谢谢

编辑:根据WebElaine的要求,我包括了以下文件。

首先是子主题功能。php

//add contact_info_heading in customizer
function wpl_customize_register( $wp_customize )
{
//sections, control, and settings go here
$wp_customize->add_setting( \'contact_heading_text\' , array(
    \'default\' =>    \'Giver Uforpligtende Tilbud\',
    \'transport\' =>  \'refresh\',
    \'type\' => \'theme_mod\',
    ) );
$wp_customize->add_control( new WP_Customize_Control( $wp_customize, \'contact_heading_text\', array(
    \'label\'      => __( \'Contact Heading Text\', \'wpl\' ),
    \'section\'    => \'contact_heading_section\',
    \'settings\'   => \'contact_heading_text\',
    \'type\'      => \'text\',
) ) );
$wp_customize->add_section( \'contact_heading_section\' , array(
    \'title\'      => __( \'Kontakt overskrift\', \'wpl\' ),
    \'priority\'   => 60,
) );

}

add_action( \'customize_register\', \'wpl_customize_register\' );
现在是llorix\\u one\\u lite\\u child\\u contact\\u info\\u部分。php(我试图更改的h2标记。告诉我你是否需要整个文件。它很长,大部分都是HTML

    <h2 class="tilbud-text"><?php echo get_theme_mod( \'contact_heading_text\' ); 
以及主题和子主题的文件结构的图像。enter image description here

这两个文件都在我的本地机器上,在那里一切都很正常。

现在,live server的相应文件:

功能。php完全相同(我只是复制粘贴它)。llorix\\u one\\u lite\\u child\\u contact\\u info\\u部分也是如此。php。

为了测试发生了什么,我在live server的父服务器中写了一条评论:llorix\\u one\\u lite\\u contact\\u info\\u部分。php,它告诉我是否正在使用父文件。我在下面有一个屏幕截图,上面标记了上述评论。图片中的标题是我正在尝试更改的标题:enter image description here

我希望这能把事情弄清楚。

编辑:

除了我不明白的事情之外,我还浏览了我的头版。php(成功覆盖父级)在本地和实时服务器上。

它有一个id用于包含首页上的部分的数组:

$sections_array = apply_filters(
    \'llorix_one_companion_sections_filter\',
    array(
        \'sections/llorix_one_lite_logos_section\',
        \'sections/llorix_one_lite_our_story_section\',
        \'sections/llorix_one_lite_content_section\',
        \'sections/llorix_one_lite_ribbon_section\',
        \'sections/llorix_one_lite_latest_news_section\',
        \'sections/llorix_one_lite_child_contact_info_section\',
        \'sections/llorix_one_lite_map_section\',
    )
);

if ( ! empty( $sections_array ) ) {
    foreach ( $sections_array as $section ) {
        llorix_one_lite_get_template_part( $section );
    }
}
我尝试更改文件名以匹配不同的方式。如果我的实际文件名为:llorix\\u one\\u lite\\u child\\u contact\\u info\\u section,并且字符串引用与everthing works(本地)相同。但是,如果我更改字符串引用(或完全删除数组),一切仍然正常。。。但是,如果我将实际文件名更改为正确的名称(不带\\u子项),并将数组更改为相同的名称,则不会起作用。frontpage中不包含该文件。

1 个回复
SO网友:ibbadib

我完全重新设计了儿童主题。我想我在什么地方有一些冲突的代码。我要感谢@WebElaine一千次,感谢你的时间和帮助。

我认为这个故事的寓意是:思考。

相关推荐

Wp-Content/Themes文件夹在哪里?

我想为我的wordpress站点创建一个子主题(仅供参考),这样我的更改就不会被每次更新所覆盖。显然,我需要在wp-content/themes文件夹中为子主题创建一个子文件夹。问题是,我找不到它。我曾尝试将wp内容和wp内容/主题添加到域中-它生成了一个空白的白色页面。我试着在spotlight文件搜索(是的,我有一台mac电脑)中搜索它(只是“wordpress”),它只找到了一些我在2010年安装的wordpress文件夹,我甚至都不记得做过这些。由于我最近在过去两周(2014年5月)建立了这个网站