Добавление дополнительной боковой панели в Wordpress - PullRequest
1 голос
/ 14 мая 2011

Я пытаюсь добавить еще одну боковую панель к моей теме Wordpress (Titan - http://wordpress.org/extend/themes/titan),, но она кажется немного более продвинутой, чем темы, используемые в учебных пособиях.

I 'я следовал этому руководству http://www.blogohblog.com/adding-extra-sidebar-to-your-wordpress-theme/

My Functions.php выглядит так

<?php
    locate_template( array( 'functions' . DIRECTORY_SEPARATOR . 'titan-extend.php' ), true );

И файл соответствующего блока titan-exte.php, который я взломал, выглядит такthis

    /*---------------------------------------------------------
        6. Register Sidebars
    ------------------------------------------------------------ */
    function registerSidebars() {
        register_sidebar(array(
            'name' => __( 'Sidebar', 'titan' ),
            'id' => 'normal_sidebar',
            'before_widget' => '<li id="%1$s" class="widget %2$s">',
            'after_widget' => '</li>',
            'before_title' => '<h2 class="widgettitle">',
            'after_title' => '</h2>',
        ));
        register_sidebar(array(
            'name' => 'sidebar2'));
            'id' => 'sidebar2'
            'before_widget' => '<li id="%1$s" class="widget %2$s">',
            'after_widget' => '</li>',
            'before_title' => '<h2 class="widgettitle">',
            'after_title' => '</h2>',
    ));

    }

Текущая ошибка, которую я получаю: Неустранимая ошибка: невозможно повторно объявить Titan :: registerSidebars () в /wp-content/themes/titan/functions/titan-extend.php onлиния 121

Это вся информация, которая у меня есть, любая помощь приветствуется

1 Ответ

1 голос
/ 14 мая 2011

Учебник, на который вы ссылаетесь, устарел и не использует лучшие практики WordPress.

Правильный способ зарегистрировать боковую панель - создать функцию регистра, а затем подключить ее к widgets_init

в вашем файле functions.php добавьте это:

add_action( 'widgets_init', 'sydeberz_register_sidebar' );
function sydeberz_register_sidebar() {
 register_sidebar(
    array(
        'name' => 'sidebar2',
        'id' => 'sidebar2',
        'before_widget' => '<li id="%1$s" class="widget %2$s">',
        'after_widget' => '</li>',
        'before_title' => '<h2 class="widgettitle">',
        'after_title' => '</h2>',
));

}

См. Боковые панели Джастина Тэдлока в WordPress post.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...