Wordpress主题化,无法在scripts.php中找到样式表
(我正在阅读这本书《引导站点蓝图》,现在我将进入第3章。它介绍了如何使用根作为Wordpress的起始主题。) 我正在为Wordpress创建自定义主题,当我试图通过修改Wordpress主题化,无法在scripts.php中找到样式表,wordpress,wordpress-theming,Wordpress,Wordpress Theming,(我正在阅读这本书《引导站点蓝图》,现在我将进入第3章。它介绍了如何使用根作为Wordpress的起始主题。) 我正在为Wordpress创建自定义主题,当我试图通过修改scripts.php连接到自己的样式表时遇到了一个问题 以下是我的文件结构: |bootstrappin-theme |assets |css |main.css |lib |scripts.php 下面是scripts.php if (WP_ENV === 'd
scripts.php
连接到自己的样式表时遇到了一个问题
以下是我的文件结构:
|bootstrappin-theme
|assets
|css
|main.css
|lib
|scripts.php
下面是scripts.php
if (WP_ENV === 'development') {
$assets = array(
'css' => '/assets/css/main.css',
'js' => '/assets/js/scripts.js',
'modernizr' => '/assets/vendor/modernizr/modernizr.js',
'jquery' => '//ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.js'
);
}
else {
$get_assets = file_get_contents(get_template_directory() . '/assets/manifest.json');
$assets = json_decode($get_assets, true);
$assets = array(
'css' => '/assets/css/main.min.css?' . $assets['assets/css/main.min.css']['hash'],
'js' => '/assets/js/scripts.min.js?' . $assets['assets/js/scripts.min.js']['hash'],
'modernizr' => '/assets/js/vendor/modernizr.min.js',
'jquery' => '//ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js'
);
}
wp_enqueue_style('roots_css', get_template_directory_uri() . $assets['css'], false, null);
然后我检查了浏览器,请求“main.css”时出现404错误,url从请求日志中读取:“127.0.0.1/wordpress/assets/css”
因此,我将
css
的路径从'/assets/css/main.css'
更改为
”/wp content/themes/bootstrappin theme/assets/css/main.css'
现在看来:
if (WP_ENV === 'development') {
$assets = array(
'css' => '/wp-content/themes/bootstrappin-theme/assets/css/main.css',
...
wp_enqueue_style('roots_css', get_template_directory_uri() . $assets['css'], false, null);
然而,它仍然是404错误,奇怪的是,当我在浏览器中检查路径时,main.css
的路径仍然存在
main.css
127.0.0.1/wordpress/assets/css
我发现最棘手的部分是,路径输出永远不会到达我的bootstrappin-theme
文件夹及其子文件夹
行为怪异
示例1 例如,如果我将
scripts.php
中的代码更改为
/wp content/themes/bootstrappin主题示例/assets/css/main.css
浏览器中的路径输出将忽略主题示例中/wp content/themes/bootstrappin之前的所有内容,如下所示:
127.0.0.1/wordpress/assets/css
是的,和以前一样
示例2
如果我把代码改成
/wp-content/themes-example/bootstrappin-theme/assets/css/main.css
输出将是:
127.0.0.1/wordpress/wp-content/themes-example/bootstrappin-theme/assets/css/main.css
提前谢谢。已经回答了
为了避免这种情况,请修改/wp-content/themes/bootstrappin-theme/lib/config.php
把这一行(通常是第6行)变成评论:
//添加主题支持(“重写”)代码>