• 如果您觉得本站非常有看点,那么赶紧使用Ctrl+D 收藏吧

有条件的声明,将image.php中的CSS入队

php 来源:Snowman 7次浏览

我正在尝试在WordPress子主题中创建一个新的附件页面。有条件的声明,将image.php中的CSS入队

我已经创建image.php,并在我的函数中我想获得一个新的CSS文件加载。我已经有这个存档页面,似乎工作正常。我曾尝试将是页面模板(image.php),是固定的,但似乎并没有工作

<code class="prettyprint-override">if (is_archive()) { 
    wp_enqueue_style('newlayout-style' , get_stylesheet_directory_uri() . '/layouts/archive.css'); 
} elseif (is_page_template('image.<a href="http://www.fixbbs.com/p/tag/php" title="查看更多关于php的文章" target="_blank">php</a>')) { 
    wp_enqueue_style('newlayout-style' , get_stylesheet_directory_uri() . '/layouts/attachment.css'); 
} elseif (is_attachment()) { 
    wp_enqueue_style('newlayout-style' , get_stylesheet_directory_uri() . '/layouts/attachment.css'); 
} 
</code>


===========解决方案如下:

两点需要了解:

1)is_page_template功能是有用的确定当前的页面模板(如果使用),页面模板是不同的概念,然后是模板层次结构。您可以在食品检查的详细信息:

Page Templates

Template Hierarchy

2)在functions.php,你需要确定是否越来越显示图片附件,在这种情况下,@PieterGoosen已经正确地指出,你需要使用is_singleis_attachment模板标签,还可以检查附件mime-type的形象,所以代码应该是这样的:

function add_css_conditionally() { 

    if (is_archive()) { 
     wp_enqueue_style('newlayout-style' , get_stylesheet_directory_uri() . '/layouts/archive.css'); 
    } elseif (is_single() && is_attachment()) { 
     if(stripos($wp_query->post->post_mime_type, 'image') !== false) { 
      wp_enqueue_style('newlayout-style' , get_stylesheet_directory_uri() . '/layouts/attachment.css'); // for image attachments, should be different css file. 
     } else { 
      wp_enqueue_style('newlayout-style' , get_stylesheet_directory_uri() . '/layouts/attachment.css'); 
     } 
    } 
} 
add_filter('wp_enqueue_scripts', 'add_css_conditionally'); 

版权声明:本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系管理员进行删除。
喜欢 (0)