我对Wordpress很新,但我确实理解儿童主题 这是我第一次遇到一个插件有一个自己的样式表排队的主题。下面的代码是否已经将预订插件的样式表添加到主要父样式表中(所以我不需要在子主题中包含它),或者这是一个额外的排队样式表,我还必须单独包含它在我孩子的主题中。
有关此代码与父样式的确切内容和方式的任何解释将不胜感激。 Wordpress codex在这个领域几乎没用。
{
wp_enqueue_style( 'villagio-style', get_stylesheet_uri(), array(),
villagio_get_theme_version() );
if ( is_plugin_active( 'motopress-hotel-booking/motopress-hotel-
booking.php' ) ) {
wp_enqueue_style( 'villagio-motopress-hotel-booking',
get_template_directory_uri() . '/css/motopress-hotel-booking.css',
array('villagio-style'), villagio_get_theme_version(), 'all' );
}
答案 0 :(得分:0)
如果我理解正确,您只想在父主题中将CSS排入队列,请尝试以下操作:
if (is_plugin_activate( 'plugin-name' ) && ! is_child_theme() ) {
//the code will show only in parent theme
}
参考here
答案 1 :(得分:0)
是的,您可以将该代码放入您的子主题functions.php
文件中。当插件motopress-hotel-booking.css
处于活动状态时,它会调用motopress-hotel-booking.php
文件。这是完整的代码:
function custom_add_css_for_theme()
{
wp_enqueue_style('villagio-style', get_stylesheet_uri(), array(), villagio_get_theme_version());
if (is_plugin_active('motopress-hotel-booking/motopress-hotel-booking.php')) {
wp_enqueue_style('villagio-motopress-hotel-booking', get_template_directory_uri() . '/css/motopress-hotel-booking.css', array('villagio-style'), villagio_get_theme_version(), 'all');
}
}
add_action( 'wp_enqueue_scripts', 'custom_add_css_for_theme' );
从你调用你的函数(从子主题或父主题)开始,这不重要。函数get_template_directory_uri()返回父主题的目录,即使您从子主题调用它。