Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/css/32.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Css wordpress子主题加载子样式两次,没有父样式_Css_Wordpress_Themes - Fatal编程技术网

Css wordpress子主题加载子样式两次,没有父样式

Css wordpress子主题加载子样式两次,没有父样式,css,wordpress,themes,Css,Wordpress,Themes,WP抄本让我纠结在一起,它围绕着创造一个儿童主题的所有自相矛盾和错误信息。子主题页面说我只需要style.css和functions.php。那是错误的。父主题是215。我尝试了推荐的模式,然后按照产生的PHP错误添加了投诉中提到的所有文件。我的孩子主题Twenty15Child现在包含:footer.php、functions.php、header.php、index.php、sidebar.php和style.css child style.css文件仅包含样式表标题: Theme Name

WP抄本让我纠结在一起,它围绕着创造一个儿童主题的所有自相矛盾和错误信息。子主题页面说我只需要style.css和functions.php。那是错误的。父主题是215。我尝试了推荐的模式,然后按照产生的PHP错误添加了投诉中提到的所有文件。我的孩子主题Twenty15Child现在包含:footer.php、functions.php、header.php、index.php、sidebar.php和style.css

child style.css文件仅包含样式表标题:

Theme Name: Twenty Fifteen Child
Theme URI: http://dwp.avionicsspecialists.net/wordpress/wp-content/themes/twenty-fifteen-child/
因为抄本是矛盾的,我尝试了主题URI文件夹的变体:215个孩子,215个孩子和215个。这些变异都没有影响结果

php文件包含以下Enquence代码

add_action( 'wp_enqueue_scripts', 'theme_enqueue_styles' );
function theme_enqueue_styles() {
    $parent_style = 'parent-style';

    wp_enqueue_style( $parent_style, get_template_directory_uri() . '/style.css' );
    wp_enqueue_style( 'child-style',
        get_stylesheet_directory_uri() . '/style.css',
        array( $parent_style )
    );
}
我直接从父Twenty15主题复制的其他文件没有任何更改

当我激活子主题时,它会显示一个没有任何样式的WP站点。它加载子样式表两次,而不是加载父样式表。法典说get_template_directory_uri()总是返回父主题路径。不是真的。在我的主题中,它返回子主题路径。在数据库中,其中wp_options.option_name='template'的值为'Twenty15Child'

如果我手动将该值更改为'Twenty15',我会得到更接近我需要的结果。这种情况会同时加载父样式表和子样式表。但是,手动更改数据库不是有效的解决方案


我对变体已经没有想法了。非常感谢您的帮助。

请确保
样式.css
主题的标题是css注释(它应该以
/*
开头,以
*/
结尾),并且它有以下行:

/* 
Template:     twentyfifteen
*/
编程中的经验法则:

不要删除您不完全理解的代码。它迟早会击中风扇

有关子主题及其标题的更多详细信息

需要
style.css
中的注释标题行,WordPress才能识别主题
,并将其作为可用的主题选项与任何其他已安装的主题一起显示在“设计>主题”下的“管理”面板中


在wordpress中创建子主题所需的唯一项目是
style.css中的以下信息:

   /*
   * Theme Name: Your Child Theme Name
   * Author: Who you are
   * Version: 1.0
   * Template: twentyfifteen
   */

您不需要在
functions.php

Samantha中包含URI函数,您的语句不太正确。请运行一个子主题,标题只有一行:
/*模板:Twentytent*/
谢谢@samantha ingram,您的回答确实有帮助。我还发现子functions.php文件中确实需要函数theme_enqueue_styles(),以使我的站点正常工作。我缺少模板行。我的示例没有显示注释标记——它只是显示了我从Codex子主题页面示例代码中编辑的行。该Codex页面可以更清楚地了解成功创建子主题所需的步骤。要成功创建有效的子主题,只需在其
样式.css
的开头添加
/*模板:父主题文件夹名称*/
,但不推荐使用。根据父主题的不同,父样式表可能会加载,也可能不会加载。它会自动加载到
215
,所以我的答案不会过于复杂:)。