Wordpress动态侧边栏不起作用

时间:2013-06-29 06:49:13

标签: php wordpress sidebar

大家好我正在为wordpress开发一个主题我为动态侧边栏阅读了很多但是它们不起作用我的功能代码:

<?php 
if ( function_exists('dynamic_sidebar') )
    register_sidebar(array(
        'before_widget' => '<div class="wcon">',
        'after_widget' => '</div>',
        'before_title' => '<h3>',
        'after_title' => '</h3>',
    ));
?>

和我的sidebar.php代码:

<?php if ( !function_exists('dynamic_sidebar') || !dynamic_sidebar() ) : ?>
<?php endif; ?>

我正在使用以下代码查找sidebar.php:

<?php get_sidebar(); ?>

看起来很好,但是我不能在它上面添加小部件,没有wordpress面板中的链接,也没有直接访问。

3 个答案:

答案 0 :(得分:2)

在你的functions.php中

在下面添加

//initialize addiional sidebars.
    if(function_exists('register_sidebar')){
        register_sidebar(
            array(
                'name' => 'second-sidebar' ,
                'id' => 'second-sidebar',
                'before_widget' => '<li class ="widget-container>"',
                'after_widget' => '</li>',
                'before_title' => '<h3 class="widget-title">',
                'after_title' => '</h3>'
            )
        );}

然后你想要它出现在哪里,添加这个

<?php dynamic_sidebar('second-sidebar'); ?>

然后转到你的wordpress后端,在小部件区域,你会看到一个&#34;第二个侧边栏&#34;选项卡在右侧。放下你的小部件,你应该好好去。

希望这会有所帮助

答案 1 :(得分:0)

请改为尝试:

的functions.php

add_action( 'widgets_init', 'my_register_sidebars' );

function my_register_sidebars() {

register_sidebar(
    array(
        'id' => 'primary',
        'name' => __( 'Primary' ),
        'description' => __( 'Main Sidebar' ),
                    'before_widget' => '<div class="wcon">',
                    'after_widget' => '</div>',
                    'before_title' => '<h3>',
                    'after_title' => '</h3>'
    )
);
}

的sidebar.php

<?php if ( !function_exists('dynamic_sidebar') || !dynamic_sidebar() ) : ?>
    <?php dynamic_sidebar('primary'); ?>
<?php endif; ?>

答案 2 :(得分:0)

这是一个更简单的答案:

// sidebar php file

<?php if ( !function_exists('dynamic_sidebar') || !dynamic_sidebar('sidebar-name') ) : ?>
  <p>You're not using a dynamic sidebar</p>
<?php endif; ?>

//的functions.php

if ( function_exists('register_sidebar') )
  register_sidebar(array(
    'name'=>'sidebar-name',
    'before_widget' => '<div class="your-class">',
    'after_widget' => '</div>',
    'before_title' => '<h2>', //h3, h4, h5, whatever size header you prefer
    'after_title' => '</h2>',
  ));