wordpress - 如何将默认小部件添加到自定义动态侧边栏

标签 wordpress

我在 WordPress 中使用此代码添加了我的自定义动态侧边栏

register_sidebar
(array(
'name' => __( 'My widget' ),
'id' => 'right-sidebar',
'description' => __( 'Widgets in this area will be shown on the right-hand side.' ),
'before_title' => '<h1>',
'after_title' => '</h1>'
));

现在我可以通过 Dashboard -> Appearance -> Widgets 在 WordPress 管理中看到这个动态侧边栏。

当我激活主题时,默认情况下这个动态侧边栏不显示任何内容;要显示小部件(例如最近的帖子、页面、类别),我必须将它们拖到我的小部件动态侧边栏中。

但是我希望My Widget 动态侧边栏默认显示三个Widgets(最近的帖子、页面、类别),类似于20 或211 中的动态侧边栏。

最佳答案

这很容易做到,使用 dynamic_sidebar() the_widget() .

这是用于显示默认内容的构造,如果没有向动态侧边栏添加小部件:

<?php
if ( ! dynamic_sidebar( 'My_Widget' ) ) {
    // default content goes here
}
?>

因此,要将特定小部件输出为默认内容,只需调用 the_widget($widget, $instance, $args) .例如,要显示 "Recent Posts" Widget :
<?php
if ( ! dynamic_sidebar( 'My_Widget' ) ) {
    the_widget( 'WP_Widget_Recent_Posts' );
}
?>

(有关其他用法示例,请参阅链接的 Codex 引用资料,以及每个小部件的 $instance/$args 值。)

关于wordpress - 如何将默认小部件添加到自定义动态侧边栏,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10203413/

相关文章:

xml - FIREFOX-XML分析错误: not well-formed

IIS 上的 WordPress 阿拉伯语永久链接

php - 使用 wp_remote_get 在 WordPress 中处理 XML

php - 如何设置联系表单 7 插件以在没有电子邮件的情况下获取访客用户的消息

php - 带有类、命名空间和 psr-0 自动加载的 Wordpress 插件

php - jquery Accordion 选项卡

css - 是否有一种简洁的方式来设置单个 Wordpress 导航菜单元素的样式?

php - 在 WooCommerce 管理订单列表列中显示复合订单数据

php - 如何在wordpress插件中创建新页面?

javascript - net::ERR_ABORTED 404(未找到)- 控制台中出现错误