我一直在寻找SOF的答案,但没有找到明确的答案
我有一个插件,可以在满足某些条件时强制显示页面。但是当我尝试包含用于样式的css文件时,我没有得到任何回应。
我尝试使用普通的html包含该文件,这是一个失败
然后尝试了wp_register_style
和wp_enqueue_style
:
function rw_add_style(){
$rw_path = plugins_url('kawaleb/style.css');
wp_register_style('testili',plugins_url('kawaleb/style.css'));
wp_enqueue_style( 'testili' );
}
add_action ('wp_enqueue_scripts','rw_add_style');
wp_enqueue_style( 'testili' );
}
我将此代码放在应满足条件时应显示的页面
我在这里不知道的是在入队后如何处理!
我是否需要使用html来包含样式表文件(然后使用enqueing是什么?)或者它自己做什么(然后我在这里缺少什么?)
在法典文件中,他们不要再告诉你注册风格然后将它排队了!!!
谢谢大家:)
答案 0 :(得分:0)
您无需注册样式,只需将其排入队列即可。另外,你提到你已经将代码放在你想要显示的文件中,你应该把它放在插件的索引文件中,所以在/your-plugin/index.php或者无论主文件是什么被调用,添加此代码:
function rw_add_style() {
wp_enqueue_style( 'testili', plugins_url( 'kawaleb/style.css' ) );
}
add_action( 'wp_enqueue_scripts', 'rw_add_style' );
如果只在某个页面上需要它,那么你应该在函数中添加条件,所以你可以这样做:
function rw_add_style() {
global $post;
if ( $post->post_name == 'post_name' ) {
wp_enqueue_style( 'testili', plugins_url( 'kawaleb/style.css' ) );
}
}
add_action( 'wp_enqueue_scripts', 'rw_add_style' );
您可以通过将以下代码临时添加到页面模板,找出您需要将页面名称排列的页面的名称:
global $post;
echo $post->post_name;
要明确的是,你不需要添加任何html <link>
来包含CSS,因为你是正确的,那么将它排队是没有意义的。只需在插件的主索引文件中添加如上所述的enqueue,它将自动包含在标题中的wp_head()中,并在</head>
之前输出。
我希望这会有所帮助。祝好运。 =)