建设工作站服务器
本文主要介绍了如何在WordPress分类中添加选择不同模板选项的方法。 文章做了非常详细的说明,有一定的参考价值。 感兴趣的伙伴一定要读一下。
根据分类的内容,我们有时会想用不同的形式展示不同的分类。 通常的方法是在当前主题根目录中创建几种不同布局样式的分类模板。 例如,category-1.php、category-2.php、category-3.php…,后面的数字可以是相应的分类ID号,也可以是使用is_category ( )函数的更简单方法安装自定义类别模板插件。
启用插件后,将会添加编辑分类时选择模板的选项。
创建几种不同布局样式的页面模板,模板的开头必须有类似的徽标:
? php
/*
模板名称:模板a
*/
然后,在编辑或添加分类时,为每个分类选择专用模板即可。
效果如下。
以下是从Custom Category Templates插件中提取的代码,可以直接添加到当前主题函数模板functions.php中。
代码版:
//分类选择模板
class Select_Category_Template{
公共函数_ _ construct (
add_filter(category_template,array ) )、) get_custom_category_template ) );
add _ action ( edit _ category _ form _ fields & amp; #039;array ) $this,) category_template_meta_box&; #039; );
add _ action ( category _ add _ form _ fields & amp; #039;array ) $this,) category_template_meta_box&; #039; );
add_action(created_category,array ) )、) save_category_template ) );
add_action(edited_category,array ) )、) save_category_template ) );
do _ action ( custom _ category _ template _ constructor & amp; #039;$this );
}
//向分类编辑页面添加表单
publicfunctioncategory _ template _ meta _ box {
$t_id=$tag-term_id;
$ cat _ meta=get _ option ( category _ templates );
$ template=isset ( $ cat _ meta [ $ t _ id ] )? $cat_meta[$t_id] : false;
?
tr class=&; #039; form-field&; #039;
thscope=&; #039; row&; #039; valign=&; #039; top&; #039; labelfor=&; #039; cat_image_URL&; #039; PHP _ e (类别模板); /label/th
td
selectname=&; #039; cat_template&; #039; id=&; #039; cat_template&; #039;
option value=&; #039; 默认& amp; #039; PHP_e(defaulttemplate ); /option
? PHP page _ template _ drop down ( $ template;
/select
br /
span class=&; #039; 描述和映射; #039; php _e (选择此分类的模板); /span
/td
/tr
? php
do _ action ( custom _ category _ template _ add _ fields & amp; #039;$tag );
}
//保存表单
publicfunctionsave _ category _ template ( $ term _ id ) {
if(isset($_post[&; #039; cat_template&; #039; ] ) )
$ cat _ meta=get _ option ( category _ templates );
$ cat _ meta [ $ term _ id ]=$ _ post [ & amp; #039; cat_template&; #039; ];
udate _ option ( category _ templates ),$cat_meta );
do _ action ( custom _ category _ template _ save _ fields ),$term_id );
}
}
//处理选定的分类模板
函数get _ custom _ category _ template ( $ category _ template ) {
$cat_id=ABSint(get_query_var ) &; #039; cat );
$ cat _ meta=get _ option ( category _ templates );
if(isset ) $cat_meta[$cat_ID] ) $cat_meta[$cat_ID]!=&; #039; 默认& amp; #039; ) {
$ 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 (;
以上是在WordPress分类中添加了选择不同模板选项的方法。 谢谢您的阅读。 想分享的内容对大家有帮助,请多了解一些知识,关注信息频道!
详情请访问云服务器、域名注册、虚拟主机的问题,请访问西部数码代理商官方网站: www.chenqinet.cn