wordpress不同栏目调用不同的侧边栏 功能实现代码

在我的个人网站(基于wordpress搭建)上新加了一个“韵华.创意写作”栏目。但这个栏目与网络营销关系并不大,而我网站本身定义为网络营销博客,因此对于创意写作这个栏目,希望它是属于较独立的内容,且和网络营销版块有所区分,不至于太混淆或显得主次不分。

在侧边栏这一项中,网站主题自带有添加侧边栏的功能,不需要去写代码。如下图。

wordpress自定义侧边栏

注意标红的id名称,在后边的代码中会用到。

需要解决的问题就只是:如何让创意写作栏目(含子栏目)右侧的侧边栏显示这个“创意写作侧边栏”,而非默认的和网络营销主题有关的侧边栏。在网上找了一些参考文章并进行代码修改测试,终于搞定。方法如下:

1.找到模板主题下的sidebar.php文件。

2.找到:dynamic_sidebar($sidebar);这一行代码,对这段代码进行修改,加入条件判断,如下:

<?php

if ( in_category(array('74','75','76','77','78')) ) {

dynamic_sidebar("sidebar-writer");
}
else
{

dynamic_sidebar($sidebar);
}

?>

还好,以前接触过编程,基本的语法和逻辑还是懂的,不过手生了,像分号就忘了写,第一 次测试时,侧边栏都显示不见了。好在俺临乱不惧,再次细心检查下代码,发现是这个小问题导致。再一次上传测试,想要的奇迹出现了。

注:发布文章的内容页则已经自带有相应功能,可以自选侧边栏,感谢网站模板主题的开发者,这些老外们真是了不起。

3

我非程序员,本功能代码只是实现了基本功能,非尽善尽美。在实现过程中,参考了以下知识链接。

dynamic_sidebar()函数使用,见:http://www.168seo.cn/jianzhan/wordpress/281.html

分类函数in_category的调用,调用多个类别,见: http://mtoou.info/wordpress-in-category/

PHP if...else...elseif 语句 见:http://www.w3school.com.cn/php/php_if_else.asp

相关文章

发表回复

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