Questions tagged «widgets»

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

2
仅在使用时如何加载Widget javascript + CSS文件?
我想将我的小部件使用的javascript和CSS样式保留在自己的文件中(而不是将它们添加到主题中)。 但是当侧边栏上实际使用该小部件时,我似乎无法让wordpress添加它们。 我已经试过了: 在类声明中,我添加了2个函数 class EssentielleRubriquesPosts extends WP_Widget { function addFrontendCss(){ wp_enqueue_style('erw-frontend-css', ESSENTIELLE_RUBRIQUE_WIDGET_PLUGIN_PATH . 'css/EssentielleRubriqueWidget-frontend.css'); } function addFrontendJavascript(){ wp_register_script('jq-hoverintent', PLUGIN_PATH . 'js/jquery.hoverintent.js', array('jquery'), '1.0',true); wp_enqueue_script('jq-hoverintent'); wp_enqueue_script('jq-tools', PLUGIN_PATH . 'js/jquery.tools.js', array('jquery'),'1.0',true); wp_enqueue_script('erw-frontend-js', PLUGIN_PATH . 'js/widget-frontend.js', array('jquery', 'jq-hoverintent', 'jq-tools'),'1.0',true); } 在widget()函数内部: function widget($args, $instance) { add_action( 'wp_print_scripts', 'addFrontendJavascript' ); add_action( 'wp_print_styles', 'addFrontendCss' …

5
在窗口小部件外部使用窗口小部件选项
我想在小部件选项中保存一些参数,然后将其传递到另一个页面。小部件是一种称为Web服务的表单。 我要传递的选项是当前已硬编码到结果页面(作为模板)中的Web服务的身份验证。因此,它们应该对网站用户隐藏。 来自小部件/插件的代码: function widget($args, $instance){ extract($args); $title = apply_filters('widget_title', empty($instance['title']) ? 'Choose a service' : $instance['title']); $lineOne = empty($instance['username']) ? '' : $instance['username']; $lineTwo = empty($instance['password']) ? '' : $instance['password']; # Before the widget echo $before_widget; // etc... 结果页... $url = "http://www.nhs.uk/NHSCWS/Services/ServicesSearch.aspx?user=".[USERNAME]."&pwd=".[PASSWORD]."&q=".$_POST['PostCode']."&type=".$_POST['ServiceType'].""; 仍在学习WP如何挂在一起,因此对n00b问题感到抱歉。
13 options  widgets 

2
如何将小部件字段数据存储为数组?
我正在创建一个小部件,它需要存储大约10个ID。现在,我正在使用以下字段方法将每个ID存储在单独的字段中。它将每个字段的数据分别存储在wordpress中。是否可以使用数组将所有字段的数据仅存储在wordpress中的一行中以供示例? <input class="widefat" id="<?php echo $this->get_field_id('item1_id'); ?>" name="<?php echo $this->get_field_name('item1_id'); ?>" value="<?php echo $instance['item1_id']; ?>" /> <input class="widefat" id="<?php echo $this->get_field_id('item2_id'); ?>" name="<?php echo $this->get_field_name('item2_id'); ?>" value="<?php echo $instance['item2_id']; ?>" />

2
动态添加窗口小部件表单字段
我正在尝试将表单字段动态添加到WordPress小部件。因此,如果用户想为事件添加另一个日期,则可以单击按钮以获取更多字段。 问题是:如何将新创建的输入字段保存到我的数据库中? 我需要编写自定义更新功能吗?有小费吗? 这是小部件的外观: 这是我的小部件的php代码(到目前为止): class Spillelister extends WP_Widget { public function Spillelister() { $widget_options = array ( 'classname' => 'spillelister-widget', 'description' => 'Widget for å illustrere spillelister.'); parent::WP_Widget('spillelister_widget', 'Spilleplan', $widget_options); } // The actual widget user interface public function widget($args, $instance) { extract( $args, EXTR_SKIP); $title = ( $instance['title'] …

3
更改wp-admin / widgets.php
我们希望在管理面板中设计窗口小部件页面有所不同,主要是为了帮助站点管理员了解每个窗口小部件将在站点中出现的位置: 为此,我们需要更改widgets.php呈现的HTML(仅更改css是不够的)。我们如何在不触及核心的情况下做到这一点?

7
在小部件标题后添加div以包装小部件内容
我正在尝试在动态边栏中将div添加到小部件的内容中。 这是注册码; register_sidebar(array( 'name' => "Sidebar1", 'id' => 'home-sidebar-1', 'before_widget' => '<div class="sidebar-box">', 'after_widget' => '</div>', 'before_title' => '<div class="title">', 'after_title' => '</div>', )); 但是这段代码是这样的; <div class="sidebar-box"> <div class="title">{WIDGET TITLE}</div> {WIDGET CONTENT} </div> 这是我正在尝试做的事情; <div class="sidebar-box"> <div class="title">{WIDGET TITLE}</div> <div class="content"> {WIDGET CONTENT} </div> </div> 怎么做?

1
wp_register_sidebar_widget和register_widget有什么区别?
它们之间有什么区别,什么时候应该使用它们? 我现在正在使用wp_register_sidebar_widget,并且工作正常,但是我在网上看到很多关于如何使用register_widget和类创建窗口小部件的教程,我的大多数窗口小部件都不需要选项,因此我应该坚持wp_register_sidebar_widget还是应该使用register_widget即使我没有表格? 提前致谢。

1
限制不活动的小部件的数量
我试图将“ wp_inactive_widgets”侧边栏中的小部件数量限制为最多10个,因为小部件管理页面的运行速度非常慢: add_filter('pre_update_option_sidebars_widgets', 'cleanup_inactive_widgets', 10, 2); function cleanup_inactive_widgets($new, $old){ if(!empty($new['wp_inactive_widgets']) && count($new['wp_inactive_widgets']) > 10) $new['wp_inactive_widgets'] = array_slice($new['wp_inactive_widgets'], -10, 10); return $new; } 这显然是可行的,但问题是小部件实例选项仍保留在数据库中,无论小部件实例是否存在于边栏中。 有谁知道一种删除小部件选项的方法吗? 我找到了解决方案: 编辑:在某些情况下,它似乎也从其他侧边栏中删除了小部件,我不确定是什么原因导致的... if(!empty($new['wp_inactive_widgets']) && count($new['wp_inactive_widgets']) > 10){ // find out which widget instances to remove $removed_widgets = array_slice($new['wp_inactive_widgets'], 0, -10); // remove instance options foreach($removed_widgets as …
10 php  widgets  options 

5
从自定义窗口小部件中将类添加到before_widget
我有一个简单的自定义窗口小部件,要求它的宽度(稍后在前端使用)。宽度字段是选择下拉列表,因此用户具有预定义的选项。 我将有许多小部件实例,每个实例都有自己的宽度设置。 现在,在我的小部件代码中,我有以下代码: echo $before_widget; 结果是: <div class="widget my" id="my-widget-1"></div> 我想做的是以某种方式挂入$before_widget并添加自己的类(从选择下拉列表中指定的宽度)。因此,我想要以下标记: <div class="widget my col480" id="my-widget-3"></div> 如果没有指定类,那么我想添加class="col480"。 我该如何实现? 感谢帮助!大沙

3
边栏小部件中的自定义帖子类型数据?
(注意:这个问题最初是关于“自定义字段”的,但是@MikeSchinkel有一个更好的解决方案,涉及“自定义帖子类型”) 在我的网站上,我有几个页面,我希望在侧栏中显示相同的数据。例如,在这样的结构中: -Home -Cars -Volvo 850 overview -Volvo 850 tech spec -Volvo 850 pictures -Porsche 911 overview -Porsche 911 tech spec -Porsche 911 pictures -Roads -Route 66 overview -Route 66 history -Route 66 pictures -Pan-American Highway overview -Pan-American Highway history -Pan-American Highway pictures 我希望所有的Volvo 850页面在边栏中显示相同的数据,所有Porsche的页面都显示不同的数据集(例如Speed,Maker等)。 道路页面将为每条道路拥有自己的数据集。汽车和道路也将有自己的页面模板,而我认为它会获得右侧边栏的方式在sidebar.php中是这样的: if ( is_page_template('car-profile-template.php') ) …

4
将自定义沃克添加到小部件中创建的菜单
我知道如何将Walker添加到由主题创建的自定义菜单(primary在此示例中命名的菜单),但是如何定位使用默认wordpress自定义菜单小部件在小部件中创建的菜单呢? if ( has_nav_menu( 'primary' ) ) { $args = array( 'menu' => 'main-menu', 'menu_id' => 'main-menu', 'theme_location' => 'primary', 'depth' => 0, 'container' => false, 'menu_class' => 'nav', 'walker' => new Myprefix_Walker_Nav_Menu(), 'echo' => 0 ); $nav = wp_nav_menu( $args ); }
10 menus  widgets  walker 

3
可以删除新的4.8v文本小部件可视化编辑器吗?
可以取消挂钩或删除默认文本窗口小部件中新的4.8小部件可视化编辑器,并将小部件还原为4.8版之前的编辑器样式吗? 我不需要或不需要小部件中的可视化编辑器;我将它们用于纯文本和html,不需要其他用户添加除纯文本之外的任何内容。 我确实学会了 删除新的视频,音频和图像小部件,functions.php因为我不需要它们: // Unregister default WP Widgets function unregister_default_wp_widgets() { unregister_widget('WP_Widget_Media_Audio' ); unregister_widget('WP_Widget_Media_Image'); unregister_widget( 'WP_Widget_Media_Video' ); } add_action('widgets_init', 'unregister_default_wp_widgets', 1); 但我也想从默认的文本小部件中删除可视化编辑器选项卡。 编辑:我可以使用没有可视化编辑器的PHP Code Widget https://wordpress.org/plugins/php-code-widget/,尽管我通常不需要php执行,但它很有用。但这为可能使用的用户添加了“破事”向量php。

3
插件升级:小部件设置
我尝试对此进行一些研究,但尚未发现任何可靠的方法。我有一个正在使用的插件,在上一个版本和新版本之间,我们对小部件进行了一些更新,以更改某些设置名称(在后端),并且在创建升级例程来执行此操作时遇到了麻烦。 到目前为止,我所做的似乎(大部分)工作是这样的: $widget = get_option( 'widget_name' ); if( is_array( $widget ) && ! empty( $widget ) ) { foreach( $widget as $a => $b ) { if( ! is_array( $b ) ) { continue; } foreach( $b as $k => $v ) { $widget[$a]['setting1'] = $widget[$a]['oldsetting1']; $widget[$a]['setting2'] = $widget[$a]['oldsetting2']; } …

2
如何使用内置的Wordpress“浏览链接”功能?
我正在编码一个小部件,我希望用户能够像编辑常规文章或页面时一样选择一个链接(当您单击小链接图标并在弹出窗口中获得AJAX搜索功能时) )。有谁知道我是如何工作的?我有一个要附加的HTML按钮,甚至单击它,还有一个要输入值的字段。 在class-wp-editor.php中,我发现了一些有趣的东西,想知道我是否需要这些文件。 wp_enqueue_script('wp-fullscreen'); wp_enqueue_script('wplink'); fullscreen.link();像上面提到的文件一样,在调用时,出现此错误: Uncaught ReferenceError: wpActiveEditor is not defined ..而我现在很困惑,因为引用该变量的JS在我看来很疯狂。 想要指出正确的方向吗?我很想让这个工作正常进行,它将为我的小部件提供一个杀手级的用户界面! - - - 编辑 - - - - 到目前为止,除了我之前所说的脚本包含内容之外,没有那么多代码。 <label for="<?php echo $this->get_field_name('link'); ?>">Link URL (including http://) : </label> <input type="text" id="<?php echo $this->get_field_id('link'); ?>" name="<?php echo $this->get_field_name('link'); ?>" value="<?php if(isset($link)) echo esc_attr($link); ?>" class="widefat" /> …

1
使用qTranslate插件翻译小部件标题
我实际上是在使用qTranslate插件翻译我的网站。除了一件事,它对所有其他东西都非常有效。我的侧边栏小部件的标题。 实际上,要翻译一些单词,我们需要添加如下标签: <!--:en-->My English Title<!--:--><!--:fr-->My French Title<!--:--> 当我在小部件的内容中使用它时,它可以很好地工作。但是在标题中,当我保存小部件时。它实际上删除了我的标签并仅显示: My English TitleMy French Title 有人知道怎么修这个东西吗?

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.