自动外链工具 在线排版工具 搜索引擎提交入口 wordpress主题推荐 批量打开网址工具 优化PDF资料 【已备案域名】 ★VIP视频在线解析★

HMJ-Blog主题修改:不同页面显示不同的侧边栏

434
文章目录
  1. 注册侧边栏小工具
  2. 创建sidebar文件
  3. 修改调用文件

对于用户来说,访问首页和内页的需求会有所差异,而侧边栏作为用户浏览的重要区域,如果是千篇一律的一个样,无疑会降低整站的用户体验。为此,思享找到了一个笨拙的方法,实现内页显示不同侧边栏的功能。

注册侧边栏小工具

在functions.php文件中,我们可以找到

  1. prefunction hmjblog_widgets_init() {
  2. register_sidebar( array(
  3. 'name' => __( '主边栏', 'hmjblog' ),
  4. 'id' => 'sidebar-1',
  5. 'description' => __( '显示在所有文章和页面', 'hmjblog' ),
  6. 'before_widget' => '<aside id="%1$s" class="widget %2$s">',
  7. 'after_widget' => '</aside>',
  8. 'before_title' => '<p class="widget-title">',
  9. 'after_title' => '</p>',
  10. ) );}

这其实就是只注册了一个 '主边栏'的小工具,我们在加上一个,即修改为

  1. function hmjblog_widgets_init() {
  2. register_sidebar( array(
  3. 'name' => __( '主边栏', 'hmjblog' ),
  4. 'id' => 'sidebar-1',
  5. 'description' => __( '显示在所有文章和页面', 'hmjblog' ),
  6. 'before_widget' => '<aside id="%1$s" class="widget %2$s">',
  7. 'after_widget' => '</aside>',
  8. 'before_title' => '<p class="widget-title">',
  9. 'after_title' => '</p>',
  10. ) );
  11. register_sidebar( array(
  12. 'name' => __( '内页', 'hmjblog' ),
  13. 'id' => 'sidebar-page',
  14. 'description' => __( '显示在所有文章和页面', 'hmjblog' ),
  15. 'before_widget' => '<aside id="%1$s" class="widget %2$s">',
  16. 'after_widget' => '</aside>',
  17. 'before_title' => '<p class="widget-title">',
  18. 'after_title' => '</p>',
  19. ) );
  20. }

在后台刷新一下,小工具就多出一个小工具了,(我还添加了一个栏目侧边栏的)

小工具

创建sidebar文件

将sidebar文件复制1个,分别命名为sidebar-page.php,上传到主题目录下

将里面的代码对应修改为:

  1. <?php if ( is_active_sidebar( 'sidebar-category' ) ) : ?> <div id="secondary" class="widget-area" role="complementary"> <?php dynamic_sidebar( 'sidebar-category' ); ?></div><?php endif; ?>

修改调用文件

在single.php中将

  1. <?php get_sidebar(); ?>

修改为

  1. <?php get_sidebar(page);?>

保存即可实现文章也单独的侧边栏了,如果想在栏目或者其他页面也拥有不同的侧边栏,照例注册小工具、添加文件、修改调用就OK了,方法很笨,也网上找了一些用if语句的,试了不成功就没用了。

来源:本文由思享SEO博客原创撰写,欢迎分享本文,转载请保留出处和链接!

抢沙发

昵称*

邮箱*

网址