在 WordPress CMS内容管理系统中,register_sidebars()函数是 WordPress 中内置函数。WordPress函数register_sidebars()为主题或内部创建多个侧边栏
WordPress 中的此register_sidebars
功能用于在主题中注册多个小部件区域(也称为侧边栏)。这允许主题开发人员在其主题中定义用户可以通过 WordPress 管理界面添加小部件的区域。当主题使用 时register_sidebars
,它会创建多个可供用户自定义的小部件区域。这些区域可用于显示各种类型的内容,例如最近的帖子、类别、搜索栏等,具体取决于添加到其中的小部件。
该函数有助于高效地组织和管理多个小部件区域。通过调用register_sidebars
,开发人员可以确保所有定义的小部件区域都可以在 WordPress 管理面板中进行自定义,从而为网站前端内容的显示方式提供灵活性。
推荐:[最新版]WP Speed of Light Pro插件WordPress速度优化插件
描述
为主题或内部创建多个侧边栏
用法
register_sidebars($number, $args);
register_sidebars(2, array('name' => 'Custom Sidebar %d'));
$number
(int,可选):要创建的侧边栏数量。默认值为 1。$args
(数组|字符串,可选):用于构建侧边栏的参数数组或字符串。id
(字符串):每个侧边栏的唯一标识符的基本字符串。如果提供,并且定义了多个侧边栏,则 ID 将附加“-2”,依此类推。默认值为“sidebar-”,后跟当前侧边栏创建位置的编号。name
(字符串):管理仪表板中显示的侧边栏的名称或标题。如果注册多个侧边栏,请在字符串中包含“%d”作为每个侧边栏唯一分配编号的占位符。第一个侧边栏的默认值为“Sidebar”,否则为“Sidebar %d”。
推荐:Swift Performance插件教程WordPress缓存性能优化插件
在 WordPress 中,使用 时register_sidebars
,它会创建多个可供用户自定义的小部件区域。这些区域可用于显示各种类型的内容,例如最近的帖子、类别、搜索栏等,具体取决于添加到其中的小部件(源文件可参考这里)
function register_sidebars( $number = 1, $args = array() ) {
global $wp_registered_sidebars;
$number = (int) $number;
if ( is_string( $args ) ) {
parse_str( $args, $args );
}
for ( $i = 1; $i <= $number; $i++ ) {
$_args = $args;
if ( $number > 1 ) {
if ( isset( $args['name'] ) ) {
$_args['name'] = sprintf( $args['name'], $i );
} else {
/* translators: %d: Sidebar number. */
$_args['name'] = sprintf( __( 'Sidebar %d' ), $i );
}
} else {
$_args['name'] = isset( $args['name'] ) ? $args['name'] : __( 'Sidebar' );
}
/*
* Custom specified ID's are suffixed if they exist already.
* Automatically generated sidebar names need to be suffixed regardless starting at -0.
*/
if ( isset( $args['id'] ) ) {
$_args['id'] = $args['id'];
$n = 2; // Start at -2 for conflicting custom IDs.
while ( is_registered_sidebar( $_args['id'] ) ) {
$_args['id'] = $args['id'] . '-' . $n++;
}
} else {
$n = count( $wp_registered_sidebars );
do {
$_args['id'] = 'sidebar-' . ++$n;
} while ( is_registered_sidebar( $_args['id'] ) );
}
register_sidebar( $_args );
}
}
推荐:Max Mega Menu插件教程WordPress添加超级菜单
注册一个侧边栏此示例注册了一个名为“Sidebar”的侧边栏。
register_sidebars();
注册两个自定义名称的侧边栏此示例注册了两个名为“Foobar 1”和“Foobar 2”的侧边栏。
register_sidebars(2, array('name' => 'Foobar %d'));
使用自定义标题 HTML 标签注册两个侧边栏此示例注册了两个侧边栏,其标题被和包裹
register_sidebars(2, array('before_title' => '<h1>', 'after_title' => '</h1>'));
使用自定义 ID 注册三个侧边栏此示例使用自定义 ID 注册了三个侧边栏。
register_sidebars(3, array('id' => 'custom-sidebar-'));
使用自定义 ID 和名称注册四个侧边栏此示例注册了四个具有自定义 ID 和名称的侧边栏。
register_sidebars(4, array('id' => 'custom-', 'name' => 'My Sidebar %d'));
如何注册多个侧边栏
function my_multiple_sidebars() {
register_sidebars(3, array(
'name' => 'Sidebar %d',
'id' => 'sidebar-%d',
'description' => 'A custom sidebar',
'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', 'my_multiple_sidebars');
如何使用自定义标记注册侧边栏
function my_custom_markup_sidebar() {
register_sidebars(1, array(
'name' => 'Custom Markup Sidebar',
'id' => 'custom-markup-sidebar',
'description' => 'Sidebar with custom HTML markup.',
'before_widget' => '<section id="%1$s" class="widget %2$s">',
'after_widget' => '</section>',
'before_title' => '<h3 class="widgettitle">',
'after_title' => '</h3>',
));
}
add_action('widgets_init', 'my_custom_markup_sidebar');
推荐:AliPay WordPress WooCommerce免费支付宝网关接口插件教程