【发布时间】:2015-05-08 22:27:31
【问题描述】:
我已经创建了一个 wordpress 模板。
我已将一些 HTML 添加到 Text 小部件中并保存。
有没有办法在我的模板中添加一些代码,以便我可以显示该小部件?
这是否可能,而不必将 html 代码直接输入到我的模板中?
【问题讨论】:
标签: php wordpress wordpress-theming
我已经创建了一个 wordpress 模板。
我已将一些 HTML 添加到 Text 小部件中并保存。
有没有办法在我的模板中添加一些代码,以便我可以显示该小部件?
这是否可能,而不必将 html 代码直接输入到我的模板中?
【问题讨论】:
标签: php wordpress wordpress-theming
您的文本小部件将位于边栏内。因此,如果您有一个名为“left-sidebar”的侧边栏,您可以在模板中使用这样的代码。
<?php if ( is_active_sidebar( 'left-sidebar' ) ) : ?>
<ul id="sidebar">
<?php dynamic_sidebar( 'left-sidebar' ); ?>
</ul>
<?php endif; ?>
现在您放在左侧边栏中的所有小部件都将自动包含在该模板中。
这里有关于dynamic_sidebar的更多信息:https://codex.wordpress.org/Function_Reference/dynamic_sidebar
请注意,您还可以在 functions.php 中使用 register_sidebar 创建新的侧边栏,因此如果您想在不同的模板中使用不同的侧边栏,您可以。 https://codex.wordpress.org/Function_Reference/register_sidebar
【讨论】:
是的,事实上它非常简单,您必须创建一个侧边栏,以便让该小部件去往何处。在您的主 php 文件或您希望该小部件出现的任何位置中,您可以添加以下代码:
<?php if ( !function_exists('dynamic_sidebar')
|| !dynamic_sidebar('sidebar1') ) : ?>
<?php endif; ?>
然后您还必须在 functions.php 文件中声明该边栏,如下所示:
if ( function_exists('register_sidebar') )
register_sidebar(array('name'=>'sidebar1',
'before_widget' => '',
'after_widget' => '',
'before_title' => '',
'after_title' => '',
));
您可以拥有任意数量的侧边栏,只需给它们起一个不同的名称,例如 sidebar2 等。
【讨论】: