Php Wordpress主题调试:插件侧栏导致原始侧栏不显示

Php Wordpress主题调试:插件侧栏导致原始侧栏不显示,php,debugging,wordpress,wordpress-theming,Php,Debugging,Wordpress,Wordpress Theming,我已经确定我的插件代码在其他主题中工作得非常好,但是在主题中:我编写的边栏插件MagaziOnly导致边栏不显示。通过调试,我确定侧栏已注册,并创建了两个侧栏数组,但其中一个未填充 以下是插件代码: register_sidebar(array( 'name'=>'Bottom Widget Area', 'id'=> 'bottom-widget', 'before_widget' => '<aside class="wi

我已经确定我的插件代码在其他主题中工作得非常好,但是在主题中:我编写的边栏插件MagaziOnly导致边栏不显示。通过调试,我确定侧栏已注册,并创建了两个侧栏数组,但其中一个未填充

以下是插件代码:

register_sidebar(array(
        'name'=>'Bottom Widget Area',
        'id'=> 'bottom-widget',
        'before_widget' => '<aside class="widget %2$s">',
        'after_widget' => '</aside>',
        'before_title' => '<div class="block-title"><span>',
        'after_title' => '</span></div>'
    ));

include 'add_bottom_bar.php';
这是add_bottom_bar.php:

    // Register Bottom_Bar
function add_bottom_widget(){

    echo '<div class=\'bottombar\'>';
    if (!function_exists('dynamic_sidebar') || !dynamic_sidebar('bottom-widget')) : 
        endif;
    echo '</div>'; 
}

 add_action ('get_footer', 'add_bottom_widget');


// Register style sheet.
add_action( 'wp_enqueue_scripts', 'register_plugin_styles' );


// Register style sheet.
function register_plugin_styles() {
    wp_register_style( 'custom_widget_final', plugins_url( 'custom_widget_final/css/bottom_bar.css' ) );
    wp_enqueue_style( 'custom_widget_final' );
}
以下是MagaziOnly中侧栏的代码:

还有一段代码似乎使用了主题创建者称之为“dinamic边栏”的任何东西来。。。好我想。。。渲染动态侧栏:

但是,我的猜测是,这就是罪魁祸首:MagaziOnly主题使用了这个侧边栏加载程序,但这似乎是严重的矫枉过正。我猜我正在注册的边栏小部件正在破坏这个边栏加载程序

有了所有的代码,我的下一个问题是:我的选择是什么?我需要向三个站点添加小部件位置,所有站点都使用相同的主题,但保留侧边栏。目前,如果我激活我的插件,边栏将不会加载,但插件可以工作。如果我停用插件,边栏将返回。 两者都很重要,但我不能修改主题,创建子主题似乎太过分了。我更喜欢调试这个主题,并使用小部件

以下是我尝试/测试的内容:

在其他四个WP站点上测试了该插件。没有问题。侧边栏渲染良好。插件工作起来很有魅力

在问题站点:wp_debug,设置为true。。。不会抛出任何错误,但会为主题的每个本机侧栏提供一个警告,没有id集,这是4.1版本之前的内容。据我所知,这对任何事情都没有影响

我删除了底部的include,只是为了缩小代码中可能存在的问题。我确定,即使禁用css排队,或者即使不包括add_bottom_bar.php,主题的本机边栏仍然会中断。这使我非常清楚地认识到,存在一个register_边栏冲突

我已经查看了插件激活和停用时的源代码。我发现在区分了源代码之后,当插件被激活时,边栏不会显示在源代码中,所以据我所知,它不是css/js

如果有什么解决办法的话?一个小部件将大大改善工作流程,但我开始考虑放下侧栏/小部件的情况可能更聪明。 有任何提示、提示或见解吗?我知道我的问题有点笼统,但我在这里遇到了一个难题,我试图不去理会这个主题代码

任何帮助都将不胜感激!谢谢

好的。我明白了

add_action( 'widgets_init', 'bottom-widget' );
需要在注册侧边栏后立即初始化小部件