让 WordPress 首页与内页调用不同侧边栏
以前我曾经写过 “为什么大家都喜欢弄随机的友情链接” 中提到过日志页最好将友情链接栏去掉,因为会影响收录于权重,那么如何让首页与内页用不同的侧边栏呢?在万戈博客那找到了一种可以调用不同 Sidebar 的方法。
实现不同页面调用不同侧边栏的想法很简单:注册一个新的侧边栏 sidebar2.php,然后在需要调用 sidebar2 的页面代替原来的 sidebar。
步骤:
1、注册一个新的侧边栏 sidebar2。
在主题文件夹下的 function.php 中找到类似以下代码:
1 2 3 4 5 6 7 | if ( function_exists('register_sidebar') ) register_sidebar(array( 'before_widget' => '<div class="widget">', 'after_widget' => '</div>', 'before_title' => '<h3>', 'after_title' => '</h3>', )); |
然后以相同的格式再注册添加一个 sidebar2。例如:
1 2 3 4 5 6 7 8 | if ( function_exists('register_sidebar') ) register_sidebar(array( 'name' => 'sidebar2', 'before_widget' => '<div class="widget">', 'after_widget' => '</div>', 'before_title' => '<h3>', 'after_title' => '</h3>', )); |
2、新建 sidebar2.php 调用新注册的 sidebar2。
在 sidebar.php 中找到以下代码:
1 2 3 4 5 6 | <div class="sidebar"> <?php include_once("tab.php"); ?> <?php if ( function_exists('dynamic_sidebar') && dynamic_sidebar() ) : else : ?> <?php endif; ?> </div> )); |
然后以相同的格式新建 sidebar2.php 文件调用 sidebar2。例如:
1 2 3 4 5 | <div class="sidebar"> <?php include_once("tab.php"); ?> <?php if ( function_exists('dynamic_sidebar') && dynamic_sidebar(sidebar2) ) : else : ?> <?php endif; ?> </div> |
3、最后,在需要的页面调用 sidebar2.php 文件。
这里以 page.php 为例调用 sidebar2.php。在 page.php 中找到如下代码:
1 | <?php get_sidebar(); ?> |
修改为:
1 | <?php include_once("sidebar2.php"); ?> |
如果以上操作步骤都正确的话,会在小工具里多一个名为 sidebar2 的 Widget,你可以拖动添加你所需要的 Widget,如果你想要更多不同的侧边栏,还可以用相同的方法注册 sidebar3、sidebar4……
非常有用的东西。谢谢。
呵呵
我同意冰剑的说话,判断,用个IF语句就可以了
不要起sidebar2这样的名字
你可以这样用调用sidebar-test.php文件
how?
又一个沙发。。
就在原来的sidebar.php里面进行判断不久可以了嘛,何必用两个页面呢。
其实我不懂PHP的。。。