描述
引入主题的边栏模板,或者如果指定了名称,则将引入专门的边栏。
对于参数,如果文件名为“sidebar-special.php”,则指定“special”。
参数
- $name
-
(string) (可选) 指定边栏的名称。
默认值: null
- $args
-
(array) (可选) 传递给边栏模板的其他参数。
默认值: array()
返回
(void|false) 成功时无返回,如果模板不存在,则为false。
源码
更新日志
版本 | 描述 |
---|---|
5.5.0 | 添加了$args 参数 |
1.5.0 | 开始引入 |
使用示例
简单调用
假设您有文件wp-content/yourTheme/sidebar-nice-bar.php
。在页面中引入此边栏的方式是:<?php get_sidebar('nice-bar'); ?>
左侧和右侧边栏
一个主题中有两个边栏。<?php get_header(); ?> <?php get_sidebar( 'left' ); ?> <?php get_sidebar( 'right' ); ?> <?php get_footer(); ?>
右侧和左侧边栏的文件名应分别为
sidebar-right.php
和sidebar-left.php
。多边栏
不同页面的不同边栏。<?php if ( is_home() ) : get_sidebar( 'home' ); elseif ( is_404() ) : get_sidebar( '404' ); else : get_sidebar(); endif; ?>
home和404边栏的文件名应分别为
sidebar-home.php
和sidebar-404.php
。以下代码是“HTTP 404:Not Found”错误模板的简单示例(您可以将其作为404.php引入主题中)。
<?php get_header(); ?> <h2>Error 404 - Not Found</h2> <?php get_sidebar(); ?> <?php get_footer(); ?>
使用$args参数调用边栏(自5.5.0起)
考虑以下是您在主题内任何地方的边栏调用,<?php $args = array( 'title' => 'Shop sidebar' ); get_sidebar( 'shop', $args ); ?>
sidebar-shop.php
文件中的代码可能如下所示。<div id="secondary" class="widget-area sidebar-shop" role="complementary"> <h2><?php echo esc_html( $args['title'] ); ?><h2> <?php dynamic_sidebar( 'sidebar-shop' ); ?> </div><!-- #secondary -->
边栏的条件语句
如果您在制作插件模板时不知道是否有边栏,对于插件可能与之一起使用的任何给定主题,您可以检查register_sidebar
函数以查看是否存在任何边栏。if ( function_exists( 'register_sidebar' ) ) { get_sidebar(); }
或者,如果您知道有关侧边栏的主题注册名称,请尝试:
//for twenty-sixteen theme if ( is_active_sidebar( 'content-bottom' ) ) : get_sidebar( 'content-bottom' ); endif;