Can't display custom widget

时间:2017-12-17 作者:RS92

我正在尝试显示自定义小部件,但没有成功。

功能。php

// Footer Widget options
function footer_widgets() {

    register_sidebar( array(
        \'name\' => \'Footer Options "Kontakt" \',
        \'id\' => \'footer_options\',
        \'before_widget\' => \'<div>\',
        \'after_widget\' => \'</div>\',
        \'before_title\' => \'<h2 class="rounded">\',
        \'after_title\' => \'</h2>\',
    ) );
}
add_action( \'widgets_init\', \'footer_widgets\' );
在仪表板内部,我用文本填充了它,现在我想在页脚中显示:

我尝试过此解决方案,但无法显示:

  1. <div class="widgets"> <?php if ( is_active_sidebar( \'footer_widgets\' ) ) : ?> <ul id="sidebar"> <?php dynamic_sidebar( \'footer_widgets\' ); ?> </ul> <?php endif; ?> </div>

  2. <div class="widgets"> <?php dynamic_sidebar( \'footer_widgets\' ); ?> </div>

  3. <div class="widgets"> <?php the_widget(\'footer_widgets\'); ?> </div>

1 个回复
SO网友:Anson W Han

正如Shibi的评论所指出的,您希望使用footer\\u选项作为动态侧栏的参数,因为这是您在代码中指定的id。

请记住,dynamic\\u侧栏和is\\u active\\u侧栏都只检查单个侧栏。如果需要在页脚中显示多个侧栏(表示相邻区域),则可能需要执行其他条件检查(在顶层使用OR条件)并在所需的页脚DOM元素内串联呈现调用,如:

<div class="widgets">
    <?php if ( is_active_sidebar( \'footer_widgets\' ) || (is_active_sidebar(\'custom_copyright_region\')) : ?>
    <ul id="sidebar">
        <?php if ( is_active_sidebar( \'footer_widgets\' )) : ?>
            <div id="footer-region1">
            <?php dynamic_sidebar( \'footer_widgets\' ); ?>
            </div>
        <?php endif; ?>

        <?php if(is_active_sidebar(\'custom_copyright_region\')) :?>
            <div id="footer-region2">
            <?php dynamic_sidebar( \'custom_copyright_region\' ); ?>
            </div>
        <?php endif; ?>
    </ul>
    <?php endif; ?>
</div>
使用dynamic_sidebar() 呈现与指定侧栏关联的所有小部件(您的自定义小部件仅在小部件页面上分配时才会显示)使用the_widget() 在主题中的任何位置调用和呈现小部件(无论是否已在小部件的页面上分配了小部件-此技术假定您已以编程方式定义了要呈现的小部件的默认值)[例如,可以在事件详细信息页面的主副本下显示所有相关事件的日历视图]

结束

相关推荐

Using add_filter() in Widgets

只需查询引用add_filter() 作用您可以在WordPress小部件类中使用此函数吗。Example我有一个带有动态创建代码的小部件,我想将其传递给插件中创建的另一个函数。这能实现吗?<?php /** * Display the actual Widget * * @param Array $args * @param Array $instance */ public function widget($args, $inst