学做网站培训课程介绍

当前位置:

PHP代码判断WordPress不同页面调用边栏导航

我们在自己建网站时,经过碰到网站上的不同页面的边栏是显示各自栏目下的子栏目或者子页面。如果每个都去单独写的话比较麻烦,为了简洁代码,我们可以使用Wordpress的判断来显示。
Wordpress不同页面调用子栏目
Wordpress不同页面调用子栏目代码判断写法如下:


<?php if(is_category()){?>
<h3><?php echo get_cat_name( get_category_root_id($cat) );?></h3>
<ul>
<?php
$args=array(
'child_of'=> get_category_root_id($cat),
'hide_empty'=>'0',
);
$categories=get_categories($args);
foreach($categories as $category) {
if($cat == $category->term_id){$ons='actions';}else{$ons='';}
echo '<li><a href="' . get_category_link( $category->term_id ) . '" class="lis '.$ons.'">' . $category->name.'</a></li>';
}
?>
</ul>
<?php }elseif(is_single()){?>
<?php $currecategory = get_the_category();$djcatid = get_category_root_id($currecategory[0]->cat_ID);?>
<h3><?php echo get_cat_name( $djcatid );?></h3>
<ul>
<?php
$args=array(
'child_of'=> $djcatid,
'hide_empty'=>'0',
);
$categories=get_categories($args);
foreach($categories as $category) {
if($currecategory[0]->cat_ID == $category->term_id){$ons='actions';}else{$ons='';}
echo '<li><a href="' . get_category_link( $category->term_id ) . '" class="lis '.$ons.'">' . $category->name.'</a></li>';
}
?>
</ul>
<?php }elseif(is_page()){?>
<h3><?php wp_title('');?></h3>
<ul>
<?php
$pageArray = get_post_ancestors($post->ID);//获取父页面ID
if($pageArray){
$pageid = $pageArray[0];
}else{
$pageid = $post->ID;
}
$pages = get_pages('child_of='.$pageid.'&sort_column=post_date&sort_order=desc&parent='.$pageid);
if($pages){
foreach($pages as $page){
if($post->ID == $page->ID){$ons='actions';}else{$ons='';}
echo '<li><a href="' . get_page_link($page->ID) . '" class="lis '.$ons.'">' . $page->post_title.'</a></li>';
}
}else{
$pagesr = get_pages();
foreach ($pagesr as $paggr) {
if($post->ID == $page->ID){$ons='actions';}else{$ons='';}
echo '<li><a href="' . get_page_link($paggr->ID). '" class="lis '.$ons.'">' . $paggr->post_title. '</a></li>';
}
}
?>
</ul>
<?php }else{?>
<h3>栏目导航</h3>
<ul>
<?php
$args=array(
'orderby' => 'ID',
'order' => 'ASC',
);
$categories=get_categories($args);
$kk=1;
foreach($categories as $category) {
echo '<li><a href="' . get_category_link( $category->term_id ) . '" class="lis" >' . $category->name.'</a></li>';
$kk++;
if($kk>6)
break;
}
?>
</ul>
<?php }?>

把上面的代码保存成sidebar.php,可以在任何页面调用这个PHP文件来自动判断显示边栏导航了。

发表评论

您的电子邮箱地址不会被公开。 必填项已用*标注

相关教程

  • 我们做网站时,如何将分类栏目里的置顶文章显示在最前面呢?然后再显示新发布的文章。怎么实现在调用最新文章列表中置顶文章靠前显示呢?代码如下:
  • WordPress定时发布文章失败的情况,那么如何解决呢?WordPress网站服务器环境或插件冲突可能会导致WordPress产生文章定时发布失败。一般可以安装并启
  • WordPress后台文章添加自定义字段填是非常简单的下拉选择式,如何将Wordpress后台文章添加自定义字段填变为填写框,并且让他可以上传图片的功能呢?下
  • 我们有的时候,在制作好一款wordpress主题的时候,也需要用户在激活主题后,能够自动的创建一些页面和文章,好让用户能够更好更快的熟悉起来,因为,
  • 使用wordpress做网站时,我们有时需要创建一个数据表来存储自己的一些信息,那么怎么在前端就可以自动创建数据表呢,并且可以对数据表的信息进行增删
  • 使用WordPress做网站时,需要使用前端投稿功能,我们可以在前端投稿功能中添加图片上传功能。这样用户在前端就可以直接上传图片了。下面学建站网介
  • WordPress建好网站之后,往往由于服务器本身漏洞、网站后台使用弱密码登录等原因,造成网站被黑,植入了非正规的垃圾代码。造成网站跳转或者打不开。
  • 要使用PHP修改WordPress数据库的某个字段值,可以使用WordPress提供的内置函数和查询语句。以下是一个示例代码片段,可以帮助实现这个目标:<?p
  • 现在很多服务器都在使用宝塔面板,下面学做网站论坛介绍一下宝塔面板安装WordPress建网站的详细过程。方法/步骤第一步:宝塔面板创建站点;创建站点
  • 在之前的建站教程中,我们介绍了如何制作网站前台用户登录/注册功能,通过这个方法可以制作出自定义的用户注册功能。效果如下图:这也是常用的用户