Questions tagged «widgets»

小部件是可配置的元素,用于动态构建WordPress主题的各个部分。


1
定制程序中的窗口小部件是否可以“一次性使用”(即在添加1个实例后被禁用)?
我每天晚上都在寻求构建自定义的一次性小部件。 一旦将其一个实例添加到“定制程序”的侧边栏面板中,其在“可用小部件”面板上的控件应显示为禁用(或完全消失)。 这是它的外观(请注意右侧视觉上“已禁用”的小部件): 自定义窗口小部件已注册并且全部注册,但我只能使用一次。 眼镜 规模不是问题。可以假设只有1个注册的侧边栏。该方法可以是将小部件的使用限制为每个侧边栏1个或所有注册的侧边栏1个-两者现在都一样好。 后端上的“窗口小部件”页面不是问题。不需要在后端“ 外观 ” 下的“ 小部件”页面上同样良好地工作。它只需要在定制程序中工作。 问题 大约250年前,所有小部件都曾经是“单次使用”的。有谁知道将这些时间带回去并使自定义窗口小部件通过窗口小部件API只能使用1次的合法方法吗? 如果不是这样(我在挖掘了相当数量的核心文件后就假定),我可能会采用基于CSS的方法(指针事件,伪元素覆盖等)。任何一种灵魂都可以通过一种基本方法来帮助我非常有限的Customizer / JavaScript知识,该基本方法是,一旦所述小部件的实例具有被添加/删除到侧边栏面板? 到目前为止我尝试过的 挖掘大量核心文件。 阅读this和this,但是似乎都不可行。 修补了jQuery事件widget-added,widget-updated和widget-synced,但错过了“小部件已删除”事件。 提前感谢吨! 更新:当然,还没有将我的概念证明放在公共回购中。 解 我将下面由kraftner共享的解决方案包装在GitHub上的概念证明插件中。

1
在小部件中使用wp_category_checklist
我正在尝试在小部件中使用wp_category_checklist来显示复选框列表,这些复选框在保存时仍保持勾选状态。据我所知,目前保存它们时,我遇到了很大的麻烦(未选中复选框):- 这是我目前拥有的已编辑代码。 function update($new_instance, $old_instance) { $instance = $old_instance; $instance['widget_categories'] = $new_instance['post_category']; return $instance; } function form($instance) { $instance = wp_parse_args( (array) $instance, $default ); $categories = get_categories(); $category_array = $instance['widget_categories']; if (!$category_array) { $category_array = array(); } ?> <ul class="categorychecklist"> <?php wp_category_checklist(0,0, $category_array,false, NULL , false);?> </ul> <?php } …


2
有什么方法可以动态更改小部件标题?
我遇到的情况是,几个自定义边栏中有很多小部件。我想知道是否有一种简单的方法来动态更改每个小部件的标题。通常,小部件具有标题字段,您可以手动设置或在插件本身上设置。 我希望将每个帖子的元字段值添加到每个小部件标题中。 逻辑将类似于: $dynamic_title = get_the_title(); // add a filter to change the widget titles per post value // // The widget title would be something like "Recent Posts for $dynamic_title" 我知道有一个widget_title过滤器,但是您如何定位特定的小部件? ps。我无法使用常规register_sidebar参数,因为有许多需要特定标题的小部件。
8 widgets  title 


5
跨多站点博客共享动态侧边栏
我试图找到一个博客中检索动态边栏并将其打印在同一安装的Wordpress Multisite中的另一个博客上的方法。我努力了 switch_to_blog($blog_id); dynamic_sidebar($sidebar_name); restore_current_blog(); 但是什么也没有返回。 我也很疲倦地检索侧边栏,get_blog_option($blog_id, 'sidebar_widgets')但是我只能检索一个数组,以识别侧边栏使用了哪些小部件,但是我找不到办法将数组处理为侧边栏。

4
register_sidebar()和get_sidebar()如何一起工作?
免责声明:我是WP的新手。 我正在使用Starkers HTML5框架主题。在中,functions.php我看到以下代码: function starkers_widgets_init() { // Area 1, located at the top of the sidebar. register_sidebar( array( 'name' => __( 'Primary Widget Area', 'starkers' ), 'id' => 'primary-widget-area', 'description' => __( 'The primary widget area', 'starkers' ), 'before_widget' => '<li>', 'after_widget' => '</li>', 'before_title' => '<h3>', 'after_title' => '</h3>', …
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.