WordPress分類怎麼用不同的模板?Custom Category Templates試試
醬茄 jiangqie.com
WordPress插件Custom Category Templates 是一款簡單輕量級插件,允許你為每個類別選擇特定模板,就像頁面模板一樣。
安裝方法:後台-插件-搜索:Custom Category Templates 安裝並啟用,在編輯分類時會添加一個選擇模板的選項。
面是不用安裝插件的解決方法,可以直接添加到當前主題函數模板functions.php中即可。
// 分類選擇模板
class Select_Category_Template{
public function __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 function 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 function 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_SAVE_FIELDS",$term_id);
}
}
// 處理選擇的分類模板
function 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();
原文來自:https://www.jiangqie.com/jc/6214.html
※Regenerate Thumbnails讓WordPress重新生成特色圖像更簡單
※教你怎麼修改WordPress後台註冊登錄界面LOGO和鏈接
TAG:醬茄小程序 |