我设法按照codex:
在HOME页面上正确地排列子样式表<?php
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, 'photobox', 'default', 'bootstrap', 'enigma-theme' ));
}
add_action( 'wp_enqueue_scripts', 'theme_enqueue_styles' );
?>
我得到了以下输出,其中包括&#39; child-style&#39;最后,这就是我想要的:
<link rel="stylesheet" href="http://.../enigma-child/style.css" type="text/css" media="screen" />
<link rel='stylesheet' id='parent_style-css' href='http://.../enigma/style.css?ver=4.4.2' type='text/css' media='all' />
<link rel='stylesheet' id='photobox-css' href='http://.../enigma/css/photobox.css?ver=4.4.2' type='text/css' media='all' />
<link rel='stylesheet' id='default-css' href='http://.../enigma/css/default.css?ver=4.4.2' type='text/css' media='all' />
<link rel='stylesheet' id='bootstrap-css' href='http://.../enigma/css/bootstrap.css?ver=4.4.2' type='text/css' media='all' />
<link rel='stylesheet' id='enigma-theme-css' href='http://.../enigma/css/enigma-theme.css?ver=4.4.2' type='text/css' media='all' />
<link rel='stylesheet' id='child-style-css' href='http://.../enigma-child/style.css?ver=4.4.2' type='text/css' media='all' />
虽然,第一个样式表创建了冗余,但现在并不那么重要。所以它适用于我的主页。但是,当我加载其他页面时,样式表最后不会加载。实际上,&#39;儿童风格&#39;根本没有入队。我知道theme_enqueue_styles()会运行,因为它命名了父母样式&#39; parent_style&#39;。
如果它是相关的,这是我的孩子style.css的开始:
/*
Theme Name: enigma child
Theme URI: https://weblizar.com/
Description: This is a child of enigma
Template: enigma
Version: 0.1
*/
所以简而言之,我的问题是为什么我的孩子在我的头版上排队,而不是在任何其他页面上排队?
编辑:由于我仍然不知道如何解决这个问题,我已经做了一个我不满意的快速修复。我将header.php复制到我的子主题,并在头标记的最后一个样式表中手动编写: <link rel="stylesheet" href="<?php echo get_stylesheet_uri(); ?>" type="text/css" media="screen" />
<?php wp_head(); ?>
<link rel="stylesheet" href="http://.../enigma-child/style.css" type="text/css" media="all" /><!--LE: Quick fix-->
</head>
这可能是一个糟糕的解决方案,有一天会适得其反,但它必须要做,直到我得到更好的理解。通过此更改,我对functions.php的输入已过时。