(我正在阅读本书" Bootstrap站点蓝图"我现在在第3章。它介绍了如何使用Roots作为Wordpress的起始主题。)
我正在为Wordpress创建自定义主题,当我尝试通过修改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);
然后我检查了浏览器,发出404错误请求" main.css"从请求日志中读取的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
文件夹及其
Examlpe 1
例如,如果我将scripts.php
中的代码更改为
/wp-content/themes/bootstrappin-theme-example/assets/css/main.css
浏览器中的路径输出将忽略/wp-content/themes/bootstrappin-theme-example
之前的所有内容,它将如下所示:
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
提前谢谢。
答案 0 :(得分:0)
已经回答here。
要避免这种情况,请修改 /wp-content/themes/bootstrappin-theme/lib/config.php 然后将这一行(通常是第6行)转到评论:
// add_theme_support('rewrites');