Php 与小部件功能冲突

Php 与小部件功能冲突,php,wordpress,widget,require,conflicting-libraries,Php,Wordpress,Widget,Require,Conflicting Libraries,这是我的注册小部件边栏代码 //侧边寄存器 add_action('widgets_init', 'comet_sidebar'); function comet_sidebar() { register_sidebar(array( 'name' => __('Right Sidebar', 'comet'), 'description' => __('Put Right Sidebar here', 'comet')

这是我的注册小部件边栏代码

//侧边寄存器

add_action('widgets_init', 'comet_sidebar');

function comet_sidebar() {
    register_sidebar(array(
        'name'          => __('Right Sidebar', 'comet'),
        'description'   => __('Put Right Sidebar here', 'comet'),
        'id'            => 'right-sidebar',
        'before_widget' => '<div class="widget">',
        'after_widget'  => '</div>',
        'before_title'  => '<h6 class="upper">',
        'after_title'   => '</h6>',
    ));

    register_sidebar(array(
        'name'          => __('Footer Left', 'comet'),
        'description'   => __('Put Footer Sidebar here', 'comet'),
        'id'            => 'footer-left',
        'before_widget' => '<div class="col-sm-4"><div class="widget">',
        'after_widget'  => '</div></div>',
        'before_title'  => '<h6 class="upper">',
        'after_title'   => '</h6>',
    ));

    register_sidebar(array(
        'name'          => __('Footer Right', 'comet'),
        'description'   => __('Put Footer Sidebar here', 'comet'),
        'id'            => 'footer-right',
        'before_widget' => '<div class="col-sm-4"><div class="widget">',
        'after_widget'  => '</div></div>',
        'before_title'  => '<h6 class="upper">',
        'after_title'   => '</h6>',
    ));

}
gallery.php的代码

<?php


add_shortcode('gallery', 'comet_gallery');

function comet_gallery($attr, $content) {
    $att = shortcode_atts( array(
        'ids' => '',
    ), $attr);          

    extract($att);

    $idd = explode(',', $ids);

    ob_start(); ?>
    <div data-options="{&quot;animation&quot;: &quot;slide&quot;, &quot;controlNav&quot;: true" class="flexslider nav-outside">
        <ul class="slides">
            <?php foreach($idd as $id) : ?>
            <?php $musa = wp_get_attachment_image_src($id, 'full'); ?>

            <li><img src="<?php echo $musa [0]; ?>"></li>
            <?php endforeach; ?>
        </ul>
    </div>

    <?php return ob_get_clean();

}

  • “>

我认为
return ob\u get\u clean();
不正确

请尝试以下方法:

<?php
add_shortcode('gallery', 'comet_gallery');

function comet_gallery($attr, $content) {
    $att = shortcode_atts( array(
        'ids' => '',
    ), $attr);          

    extract($att);

    $idd = explode(',', $ids);
 ?>
    <div data-options="{&quot;animation&quot;: &quot;slide&quot;, &quot;controlNav&quot;: true" class="flexslider nav-outside">
        <ul class="slides">
            <?php foreach($idd as $id) : ?>
            <?php $musa = wp_get_attachment_image_src($id, 'full'); ?>

            <li><img src="<?php echo $musa [0]; ?>"></li>
            <?php endforeach; ?>
        </ul>
    </div>

    <?php return $content;

}
function comet_gallery_start() { ob_start("comet_gallery"); }
function comet_gallery_end() { ob_end_flush(); }
add_action('wp_head', 'comet_gallery_start');
add_action('wp_footer', 'comet_gallery_end');

你在gallery.php中有什么?到底发生了什么?只有小部件设置不能正常工作,或者你得到了任何空白/损坏的页面吗?我已经添加了gallery.phpI的代码,只是在下面编辑了我的答案。
<?php
add_shortcode('gallery', 'comet_gallery');

function comet_gallery($attr, $content) {
    $att = shortcode_atts( array(
        'ids' => '',
    ), $attr);          

    extract($att);

    $idd = explode(',', $ids);
 ?>
    <div data-options="{&quot;animation&quot;: &quot;slide&quot;, &quot;controlNav&quot;: true" class="flexslider nav-outside">
        <ul class="slides">
            <?php foreach($idd as $id) : ?>
            <?php $musa = wp_get_attachment_image_src($id, 'full'); ?>

            <li><img src="<?php echo $musa [0]; ?>"></li>
            <?php endforeach; ?>
        </ul>
    </div>

    <?php return $content;

}
function comet_gallery_start() { ob_start("comet_gallery"); }
function comet_gallery_end() { ob_end_flush(); }
add_action('wp_head', 'comet_gallery_start');
add_action('wp_footer', 'comet_gallery_end');
require_once( TEMPLATEPATH."/gallery.php" );