如何在wordpress中正确显示标题中的自定义小部件

时间:2015-02-22 21:22:07

标签: php wordpress widget

我创建并注册了小部件。一切看起来很酷,没有错误。但是,如果我想按名称显示小部件,例如在标题中(我正在使用自定义小部件区域),则它不起作用。它会创建所有div,但不包含任何数据。如果我使用代码显示该区域中的所有小部件 - 它可以工作。

问题:

如何按名称显示小部件?

代码:

它会显示该区域中的所有自定义小部件

<?php if ( is_active_sidebar( 'header-widget' ) ) : ?>
  <?php dynamic_sidebar( 'header-widget' ); ?>
<?php endif; ?>

Codex说,这应该有效。但是,它没有。

<?php the_widget( 'widget_simple' ); ?>

感谢您的回答,对不起英语感到抱歉。

1 个答案:

答案 0 :(得分:0)

如果您打算使用the_widget,则需要提供WordPress小部件页面上小部件框中通常提供的信息。

所以你需要:

<?php the_widget( 'widget_simple', $instanceData, $args ); ?>

$ instanceData是您在窗口小部件中支持的任何参数,$ args是您在定义侧边栏时指定的参数,例如: &#39; before_widget&#39;,&#39; after_widget&#39;等

两者都是可选的,但如果您的小部件需要一些输入(例如帖子ID)并且您没有指定$ instanceData,那么它可能不会做任何事情。

例如,如果要显示标准的WordPress文本小部件,则值为:

<?php the_widget( 'WP_Widget_Text', array('text' => 'your text') ); ?>

因为&#39; WP_Widget_Text&#34;是标准文本小部件的类和&#39;文本&#39;是指定应显示哪个测试的参数。