如何在wordpress

时间:2018-01-16 15:46:37

标签: css wordpress child-theming

我对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' );
}

2 个答案:

答案 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()返回父主题的目录,即使您从子主题调用它。