我正在尝试为我的Wordpress主题(Titan - http://wordpress.org/extend/themes/titan)添加另一个侧边栏,但它似乎比教程中使用的主题要高级一些。
我一直在遵循本指南http://www.blogohblog.com/adding-extra-sidebar-to-your-wordpress-theme/
我的函数.php看起来像这样
<?php
locate_template( array( 'functions' . DIRECTORY_SEPARATOR . 'titan-extend.php' ), true );
我一直在破解的相关块titan-extend.php文件看起来像这样
/*---------------------------------------------------------
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>',
));
}
我当前收到的错误是致命错误:无法在第 121 行的/wp-content/themes/titan/functions/titan-extend.php 中重新声明 Titan::registerSidebars()
这就是我拥有的所有信息,任何和所有帮助都值得赞赏
您引用的教程已经过时,并且没有使用WordPress最佳实践。
注册侧边栏的正确方法是创建一个注册函数,然后将其挂接到widgets_init
在您的函数中.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帖子中的Justin Tadlock的侧边栏。