首页 > CMS > Wordpress > 正文

WordPress当前页面调用上下级分类目录

2024-09-07 00:50:26
字体:
来源:转载
供稿:网友

获取文章页面上级目录或下级目录时会用到下面的程序了,下面我分别与各位同学一看看调用上下级分类目录程序代码.在当前分类或者正文页面想调用显示与当前分类存在父子关系的分类目录时会用到.

代码一:将下面代码加到主题模板适当位置,比如侧边栏:

  1. <?php 
  2.         $current = ""
  3.         if(is_single()){ 
  4.             $parent = get_the_category(); 
  5.             $parent = $parent[0]; 
  6.             $current = "&current_category=".$parent->term_id; 
  7.         }else if(is_category()){ 
  8.             global $cat
  9.             $parent = get_category($cat); 
  10.         } 
  11.         if($parent->category_parent != 0){ 
  12.             $cat_id = $parent->category_parent; 
  13.             $parent = get_category($cat_id); 
  14.             if($parent->category_parent != 0){ 
  15.                 $cat_id = $parent->category_parent; 
  16.             }else
  17.                 $cat_id = $parent->term_id; 
  18.             } 
  19.         }else
  20.             $cat_id = $parent->term_id; 
  21.         } 
  22.     ?> 
  23.     <?php if(!is_page()) { ?> 
  24.         <h3><?php echo $parent->cat_name; ?><span><?php echo $parent->slug; ?></span></h3> 
  25.         <ul id="cat_list"
  26.             <?php wp_list_categories("title_li=&child_of=$cat_id".$current); ?>    
  27.         </ul> 
  28.     <?php } ?> 

代码二:将下面代码加到主题function.php模板文件中:

  1. function get_category_root_id($cat
  2.     { 
  3.         $this_category = get_category($cat); // 取得当前分类 
  4.         while($this_category->category_parent) // 若当前分类有上级分类时,循环 
  5.         { 
  6.             $this_category = get_category($this_category->category_parent); // 将当前分类设为上级分类(往上爬) 
  7.         } 
  8.         return $this_category->term_id; // 返回根分类的id号 

调用显示代码加到主题模板的适当位置,代码如下:

  1. <?php 
  2.         if(is_category()) 
  3.         { 
  4.             if(get_category_children(get_category_root_id(the_category_ID(false)))!= "" ) 
  5.             { 
  6.                 echo '<ul>'
  7.                 echo wp_list_categories("child_of=".get_category_root_id(the_category_ID(false)). "&depth=0&hide_empty=0&title_li=&orderby=id&order=ASC"); 
  8.                 echo '</ul>'
  9.             } 
  10.         } 
  11. ?> 

如果我们要调用当前目录下文章怎么调用?在想要调用分类最新文章列表的地方添加以下代码:

  1. <?php 
  2. query_posts('showposts=1&cat=3'); 
  3. while(have_posts()) : the_post(); 
  4. ?> 
  5. <ul> 
  6. <li><h3><a href="<?php the_permalink() ?>" rel="bookmark"><?php the_title(); ?></a></h3> 
  7. <ul><li><?php the_content(); ?></li> 
  8. </ul> 
  9. </li> 
  10. </ul> 
  11. <?php endwhile; ?> 

其中showposts后面的数码表示显示的文章数量,cat后面的数值表示分类ID,调用wordpress指定文章,代码如下:

  1. <?php query_posts('p=1'); ?> 
  2. <?php while (have_posts()) : the_post(); ?> 
  3. <a href="<?php the_permalink(); ?>"><?php the_content(); ?></a> 
  4. <?php endwhile;wp_reset_query();?> 

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表