特定区域的WP可用小部件

时间:2016-01-28 作者:DᴀʀᴛʜVᴀᴅᴇʀ

在标记下搜索后 Google我找到的最接近我所寻找的内容是这篇文章:Is there a way to allow only certain type of widgets in the sidebars?

我还找到了以下页面:How to add a specific widget to only 1 page?.

我看了抄本dynamic_sidebar()register_sidebar() 但我看不出有人去Widgets面板,在可用Widgets区域下,你可以限制widget可以应用到什么位置。

Question: 如果我希望标签云小部件只允许在某个已注册的侧栏中使用,在这种情况下foobar 我在哪里限制允许的内容?

// Custom widget area for foobar.
if ( function_exists( \'register_sidebar\' ) ) {
    register_sidebar( array(
        \'name\'              => __( \'Foobar Sidebar\', \'text_domain\'),
        \'id\'                => \'widget-foobar\',
        \'description\'       => __( \'A custom widget area for foobar\', \'text_domain\' ),
        \'before_widget\'     => \'some-code\',
        \'after_widget\'      => \'some-code\',
        \'before_title\'      => \'some-code\',
        \'after_title\'       => \'some-code\',
    )); 
}
或者如何限制我注册的特定区域的自定义和默认小部件?

1 个回复
SO网友:Mark Kaplun

我认为这不可能以一种用户友好的方式实现。Wordpress管理屏幕和定制器假设任何小部件都可以进入任何侧栏,并将它们显示为管理的一部分,因此,即使您过滤掉不需要的小部件,也可能会为用户创建很多WTF时刻。

我只是建议不要那样做。如果您需要限制小部件,并且不能指望用户能够进行自我控制,那么边栏/小部件组合可能不是您尝试做什么的好答案。

相关推荐

My widgets do not save

每次我保存我的小部件并离开页面时,我的小部件都会消失。侧边栏已完全清空,不会保存任何更改。控制台或PHP日志中没有任何错误。如果我将小部件直接复制并保存在数据库中widgets_text, 它们将被显示,但我仍然无法在侧边栏中添加或删除任何内容。这只发生在我的右侧边栏上,左侧边栏工作正常,但它们都以相同的方式注册。这是我注册侧边栏的方式:function my_widgets_init() { register_sidebar( array ( \'name\'