在 wordpress 子主题中添加两个侧边栏
可以按照以下步骤在 WordPress 子主题中添加两个侧边栏:
1.打开子主题的 functions.php 文件,添加以下代码来注册两个侧边栏:
function custom_register_sidebars() { register_sidebar( array( 'name' => __( 'Left Sidebar', 'textdomain' ), 'id' => 'left-sidebar', 'description' => __( 'Widgets in this area will be shown on the left side.', 'textdomain' ), 'before_widget' => '<div id="%1$s" class="widget %2$s">', 'after_widget' => '</div>', 'before_title' => '<h2 class="widgettitle">', 'after_title' => '</h2>', ) ); register_sidebar( array( 'name' => __( 'Right Sidebar', 'textdomain' ), 'id' => 'right-sidebar', 'description' => __( 'Widgets in this area will be shown on the right side.', 'textdomain' ), 'before_widget' => '<div id="%1$s" class="widget %2$s">', 'after_widget' => '</div>', 'before_title' => '<h2 class="widgettitle">', 'after_title' => '</h2>', ) ); } add_action( 'widgets_init', 'custom_register_sidebars' );
2.打开 sidebar.php 文件,添加以下代码来显示两个侧边栏:
<div id="secondary" class="widget-area" role="complementary"> <?php if ( is_active_sidebar( 'left-sidebar' ) ) : ?> <div id="left-sidebar" class="widget-container"> <?php dynamic_sidebar( 'left-sidebar' ); ?> </div> <?php endif; ?> <?php if ( is_active_sidebar( 'right-sidebar' ) ) : ?> <div id="right-sidebar" class="widget-container"> <?php dynamic_sidebar( 'right-sidebar' ); ?> </div> <?php endif; ?> </div><!-- #secondary -->
3.在页面模板中调用 get_sidebar() 函数来显示侧边栏:
<div id="primary" class="content-area"> <main id="main" class="site-main" role="main"> <?php while ( have_posts() ) : the_post(); ?> <?php get_template_part( 'template-parts/content', get_post_format() ); ?> <?php endwhile; ?> </main><!-- #main --> <?php get_sidebar(); ?> </div><!-- #primary -->
4.在 WordPress 后台的外观 – 小工具中添加需要的小工具到刚刚注册的两个侧边栏中即可。
第二种方案:
wordpress 如果分别制作两个独立侧边栏模板文件,如何实现?
如果要分别制作两个独立的侧边栏模板文件,可以按照以下步骤实现:
1.在子主题中创建两个独立的侧边栏模板文件,例如 left-sidebar.php 和 right-sidebar.php。
2.在页面模板中调用需要的侧边栏模板文件。可以使用 get_sidebar() 函数来加载侧边栏模板文件。在函数中指定需要加载的侧边栏模板文件名即可。例如:
<div id="primary" class="content-area"> <main id="main" class="site-main" role="main"> <?php while ( have_posts() ) : the_post(); ?> <?php get_template_part( 'template-parts/content', get_post_format() ); ?> <?php endwhile; ?> </main><!-- #main --> <div id="left-sidebar" class="widget-area" role="complementary"> <?php get_sidebar( 'left' ); ?> </div><!-- #secondary --> <div id="right-sidebar" class="widget-area" role="complementary"> <?php get_sidebar( 'right' ); ?> </div><!-- #secondary --> </div><!-- #primary -->
3.在 functions.php 文件中注册侧边栏。在 register_sidebar() 函数中指定 id 参数为侧边栏模板文件名,例如 left-sidebar.php 对应的 id 为 left,right-sidebar.php 对应的 id 为 right。例如:
function custom_register_sidebars() { register_sidebar( array( 'name' => __( 'Left Sidebar', 'textdomain' ), 'id' => 'left', 'description' => __( 'Widgets in this area will be shown on the left side.', 'textdomain' ), 'before_widget' => '<div id="%1$s" class="widget %2$s">', 'after_widget' => '</div>', 'before_title' => '<h2 class="widgettitle">', 'after_title' => '</h2>', ) ); register_sidebar( array( 'name' => __( 'Right Sidebar', 'textdomain' ), 'id' => 'right', 'description' => __( 'Widgets in this area will be shown on the right side.', 'textdomain' ), 'before_widget' => '<div id="%1$s" class="widget %2$s">', 'after_widget' => '</div>', 'before_title' => '<h2 class="widgettitle">', 'after_title' => '</h2>', ) ); } add_action( 'widgets_init', 'custom_register_sidebars' );
- 在 WordPress 后台的外观 – 小工具中添加需要的小工具到刚刚注册的两个侧边栏中即可。
为你推荐