WordPress自定义文章页面模板

2014年08月23日07:07:45 17 29,498
WordPress自定义文章页面模板

WordPress

如果想让某个分类的文章页面样式有别于其它分类,我们可以使用自定义的模板的方法实现。例如,我们准备让名称为 WordPress 的分类文章使用有别于其它分类的模板样式,

首先在所用主题根目录新建一个名称 single-wordpress.php的模板文件。将以下代码片段添加到您的当前主题的 functions.php 文件:

展开代码:展开

  1. add_action('template_include', 'load_single_template');
  2.   function load_single_template($template) {
  3.     $new_template = '';
  4.     // single post template
  5.     if( is_single() ) {
  6.       global $post;
  7.       // 'wordpress' is category slugs
  8.       if( has_term('wordpress', 'category', $post) ) {
  9.         // use template file single-wordpress.php
  10.         $new_template = locate_template(array('single-wordpress.php' ));
  11.       }
  12.     }
  13.     return ('' != $new_template) ? $new_template : $template;
  14.   }

上面的代码将指定 WordPress 分类的文章,使用 single-wordpress.php 模板文件。同理,你可以重复以上的步骤,让其它分类也可以使用自定义模板。

原文:http://www.trickspanda.com/2014/08/use-custom-template-posts-based-categories-wordpress/

weinxin
我的微信
分享交流WordPress经验与技巧,关注前端设计与网站制作。仅用于功能演示。
Begin主题购买
Begin主题购买

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen:

目前评论:17   其中:访客  16   博主  1

    • 两天 6

      鸟哥做个ality收费版吧

      • musk100 4

        前排支持

        • 灰常记忆 3

          :grin: 不想折腾~

          • 松果 1

            需要用插件木…….

            • 李寻欢 5

              代码看到别的

              • 电脑天空 5

                鸟哥,请问下“HotNews Pro Plus 主题” 啥时候更新啊~~? :mrgreen:

                  • 知更鸟 Admin

                    @电脑天空 一个人同时维护两款主题,有难度啊
                    本来升级修改已差不多了,可惜制作新主题时,居然不知道修改过的HotNews放哪了,杯具 :???:

                  • 服装营销策划 2

                    这个后台不是自己就有的啊

                    • rodney 0

                      为什么做不到啊

                      • wp小白 0

                        鸟哥,如果是两个分类(video book)或者多个分类怎么用?直接复制好像不行啊

                        • aaa 1

                          按照方法老是报:
                          includesaddclass.php on line 21
                          错误,咋回事啊。
                          另外换了各种代码都是这个错误:

                          cat_ID.’.php’;
                          if(is_file($current_single_file)){
                          include($current_single_file);
                          }
                          else{
                          ?>

                          cat_ID.’.php’;
                          if(is_file($current_single_file)){
                          include($current_single_file);
                          }
                          else{
                          ?>

                            • aaa 1

                              @aaa 哦!好了! 和我以前用的代码重叠了,谢谢。
                              只不过这种方法太繁琐了。有没有写一行代码就可以的?比如:

                              可以放在里面吗?

                                • aaa 1

                                  @aaa 代码也被吞了,比如:
                                  if ( in_category(array( 2,3 )) )

                                  另外这种方法是不是header也得改了?

                              • aaa 1

                                不支持中文吧

                                • 琴鸟语录 0

                                  正是我要找的功能,谢谢了啊

                                  • 美剧天堂网 1

                                    不错,试试看