WP在添加小部件时呈现错误的HTML

时间:2019-01-24 作者:zxdmac

这是我的页脚代码。Footer元素应该具有div.Footer-widgets、nav和p元素作为子元素。但由于某种原因,wordpress将所有内容都放在div.footer-widget元素中(我已经包含了屏幕截图)。

只有在添加dynamic\\u侧栏后才会发生这种情况。这里发生了什么?

<footer class="site-footer">

    <div class="footer-widgets">
        <p>Child1</p>    
        <p>Child2</p>   
        <?php
            if(is_active_sidebar(\'footer_1\'))
            {
                dynamic_sidebar(\'footer_1\');
            }
        ?>
    </div> <!-- End of footer-widget -->

    <nav class="site-nav">
        <?php 
            $arg = array(
                \'theme_location\' => \'footer\',
                \'menu_class\' => \'navigation\'
            );
        ?>
        <?php wp_nav_menu($args); ?>
    </nav>

    <p><?php bloginfo(\'name\');?> &copy; <?php echo date(\'Y\'); ?></p>
</footer>

<?php wp_footer();?>

</body>
</html>

enter image description here

另外,在函数中注册侧栏的代码。php文件

function our_widget_init() {

    register_sidebar(array(
    \'name\'=> \'Footer Area 1\',
    \'id\' => \'footer_1\',
    \'before_widget\' => \'<div>\',
    \'after_widget\' => \'</div\',
    \'before_title\' => \'<h2>\',
    \'after_title\' => \'</h2>\'
    ));
 }
add_action(\'widgets_init\', \'our_widget_init\');

1 个回复
最合适的回答,由SO网友:Jacob Peattie 整理而成

你失踪了> 在结束div中after_widget:

\'after_widget\' => \'</div\',
需要:

\'after_widget\' => \'</div>\',