最新公告
  • 本站一直秉承服务宗旨:履行“站长”责任,销售只是起点 服务永无止境!”的经营理念立即加入
  • WP博客分类添加选择不同模板选项

    我们有时会根据分类的内容,想让不同的分类以不同的样式展示。通常的方法是在当前主题根目录中多建几个不同布局样式的分类模板,比如category-1.php、category-2.php、category-3.php…..,后面的数字是对应该的分类ID号,或者使用is_category()函数添加判断,操作有些繁琐

    有个更简单的方法,安装 Custom Category Templates 插件

    启用插件后,在编辑分类时会添加一个选择模板的选项。

    制作几个不同布局风格的页面模板,模板头部必须有类似的标识:

    <?php /* Template Name: 模板A */

    然后在编辑或者添加分类时,为不同的分类选择专用的模板即可。

     

    下面是从 Custom Category Templates 插件中提取出来的代码,可以直接添加到当前主题函数模板functiоns.php中即可。

    代码版:

    // 分类选择模板 class Select_Category_Template{ public functiоn __construct() { add_filter( category_template, array($this,get_custom_category_template )); add_action ( edit_category_form_fields, array($this,category_template_meta_box)); add_action( category_add_form_fields, array( &$this, category_template_meta_box) ); add_action( created_category, array( &$this, save_category_template )); add_action ( edited_category, array($this,save_category_template)); do_action(Custom_Category_Template_constructor,$this); } // 添加表单到分类编辑页面 public functiоn category_template_meta_box( $tag ) { $t_id = $tag->term_id; $cat_meta = get_option( “category_templates”); $template = isset($cat_meta[$t_id]) ? $cat_meta[$t_id] : false; ?> <tr class=“form-field“> <th scope=“row“ valign=“top“><label for=“cat_Image_url“><?php _e(Category Template); ?></label></th> <td> <select name=“cat_template“ id=“cat_template“> <option value=default><?php _e(Default Template); ?></option> <?php page_template_dropdown($template); ?> </select> <br /> <span class=“description“><?php _e(为此分类选择一个模板); ?></span> </td> </tr> <?php do_action(Custom_Category_Template_ADD_FIELDS,$tag); } // 保存表单 public functiоn save_category_template( $term_id ) { if ( isset( $_POST[cat_template] )) { $cat_meta = get_option( “category_templates”); $cat_meta[$term_id] = $_POST[cat_template]; update_option( “category_templates”, $cat_meta ); do_action(Custom_Category_Template_SАVE_FIELDS,$term_id); } } // 处理选择的分类模板 functiоn get_custom_category_template( $category_template ) { $cat_ID = absint( get_query_var(cat) ); $cat_meta = get_option(category_templates); if (isset($cat_meta[$cat_ID]) && $cat_meta[$cat_ID] != default ){ $temp = locate_template($cat_meta[$cat_ID]); if (!empty($temp)) return apply_filters(“Custom_Category_Template_found”,$temp); } return $category_template; } } $cat_template = new Select_Category_Template();

    猜你在找

    1. 本站所有资源来源于用户上传和网络,如有侵权请邮件联系站长!
    2. 分享目的仅供大家学习和交流,您必须在下载后24小时内删除!
    3. 不得使用于非法商业用途,不得违反国家法律。否则后果自负!
    4. 本站提供的源码、模板、插件等等其他资源,都不包含技术服务请大家谅解!
    5. 如有链接无法下载、失效或广告,请联系管理员处理!
    6. 本站资源售价只是赞助,收取费用仅维持本站的日常运营所需!
    7. 如有侵权麻烦联系邮箱2697381891@qq.com删除文章!

    源码库 » WP博客分类添加选择不同模板选项
    • 3028会员总数(位)
    • 37633资源总数(个)
    • 538本周发布(个)
    • 50 今日发布(个)
    • 1171稳定运行(天)

    提供最优质的资源集合

    立即查看 了解详情