• a***n 登录了本站
  • a***n 下载了资源 WP Reset PRO Wordpress Plugin
  • a***n 下载了资源 Content Views Pro Wordpress Plugin - 最佳过滤器和网格插件
  • a***n 登录了本站
  • a***n 登录了本站
  • a***n 登录了本站
  • a***n 登录了本站
  • a***n 登录了本站
  • a***n 下载了资源 The Events Calendar Pro - 活动日历专业版插件
  • a***n 登录了本站
所有分类
  • 所有分类
  • WP主题集
  • WP插件集

用wordpress做网站特别是企业网站建设的时候,多个分类的内容不同需要显示的页面也不一样,比如有些分类显示的是产品缩略图,有些显示的是公司新闻公告等,此时需要不同的分类模板。

然wordpress默认只有一个通用的分类目录模板(archive.php),但是可以通过函数代码实现不同的分类调用不同的模板。

实现wordpress不同分类调用不同模板的方法

第一步在模板函数里添加获取子分类的函数代码

//获取并输入某个分类的子分类
function post_is_in_descendant_category( $cats, $_post = null )
{
foreach ( (array) $cats as $cat ) {
// get_term_children() accepts integer ID only
$descendants = get_term_children( (int) $cat, ‘category’);
if ( $descendants && in_category( $descendants, $_post ) )
return true;
}
return false;
}

//调用子分类、
function get_category_root_id($cat)
{
$this_category = get_category($cat); // 取得当前分类
while($this_category->category_parent) // 若当前分类有上级分类时,循环
{
$this_category = get_category($this_category->category_parent); // 将当前分类设为上级分类(往上爬)
}
return $this_category->term_id; // 返回根分类的id号
}

在当前wordpress主题的category.php文件中(没有就新建一个),添加以下判断代码:

<?php
$post = $wp_query->post;

if (is_category(array("1","2"))){
include(TEMPLATEPATH . '/category-pro.php');
}
elseif ( is_category('3') || post_is_in_descendant_category(3) ){
include(TEMPLATEPATH . '/category-news.php');
}
else {
include(TEMPLATEPATH . '/category-wz.php');
}  ?>

该判断函数表示:判断分类id是否为‘1’,2,如果是,则调用category-a.php模板,如果分类id是3则调用category-b.php模板,如果以上两者都不是则调用category-all.php模板.

常见问题
是100% 正品 - 包含所有高级功能嘛?
我们从原开发者那里购买和下载,以提供最真实和相关的版本。注意:我们与开发人员没有直接隶属关系或关联,我们感谢作者的努力和原创作品。名称、表述和商标的使用应尽可能真实、准确地识别商品。
是否安全可靠的嘛?
每个文件上传前由诺顿和迈克菲扫描,以确保安全,100% 不含病毒/恶意软件/恶意脚本等。立即运行您自己的在线安全检查(产品图像下的按钮)。
是不限制网站数量和域名数量嘛?
根据 WordPress 的 GPL 许可政策,您可以在任意数量的网站上使用
获得产品的更新版本需要多长时间?
您可以请求更新任何购买的产品。我们保证在收到您的请求后48小时内更新。
购买后能退款嘛?
所有销售均为最终销售。除虚拟产品完全无法使用的情况外,不予退款。 如虚拟产品无法使用,我们需要时间来尝试修复它。不能修复则退款。
原文链接:https://www.7wp.net/118.html,转载请注明出处。
0

评论0

没有账号?注册  忘记密码?

社交账号快速登录