尝试使用 wordpress 设置小部件侧边栏
Trying to setup widget sidebar with wordpress
/**
* Register our sidebars and widgetized areas.
*
*/
function arphabet_widgets_init() {
register_sidebar( array(
'name' => 'Home right sidebar',
'id' => 'home_right_1',
'before_widget' => '<div id="index_right">',
'after_widget' => '</div>',
'before_title' => '<h2 class="small_title">',
'after_title' => '</h2>',
) );
}
add_action( 'widgets_init', 'arphabet_widgets_init' );
好吧,我一直在查看 WordPress 的 wiki,上面说要把它放到 functions.php 文件夹中,我已经做到了。
<?php if ( is_active_sidebar( 'sidebar-1' ) ) : ?>
<div id="index_right" class="primary-sidebar widget-area" role="complementary">
<?php dynamic_sidebar( 'sidebar-1' ); ?>
</div><!-- #primary-sidebar -->
<?php endif; ?>
</div>
然后它说要将此文件包含到您的 sidebar.php 中,我也这样做了,但是当我创建一个小部件时它显示为空白 space 在网页上。
在上面显示的图像上,我在应该放置小部件的地方放置了一个框,我还将包括我的 CSS 用于 div 和 h2 class included.
#index_right {
width: 232px;
margin-left: 10px;
float: left; }
.small_title {
width: 222px;
height: 33px;
padding-left: 10px;
line-height: 36px;
vertical-align: middle;
background-image: url('images/bg_title.jpg');
background-position: left; text-align: left;
}
我的 sidebar.php 文件中的内容可以在这里找到。 - http://pastebin.com/gnVsh6MG
我认为你的问题是你实际上并没有调用你创建的边栏。您正在使用 ID sidebar-1
调用边栏,但您创建了一个名为 home_right_1
的边栏。所以改变:
<?php if ( is_active_sidebar( 'sidebar-1' ) ) : ?>
<div id="index_right" class="primary-sidebar widget-area" role="complementary">
<?php dynamic_sidebar( 'sidebar-1' ); ?>
</div><!-- #primary-sidebar -->
<?php endif; ?>
</div>
到
<?php if ( is_active_sidebar( 'home_right_1' ) ) : ?>
<div id="index_right" class="primary-sidebar widget-area" role="complementary">
<?php dynamic_sidebar( 'home_right_1' ); ?>
</div><!-- #primary-sidebar -->
<?php endif; ?>
</div>
应该可以。
/**
* Register our sidebars and widgetized areas.
*
*/
function arphabet_widgets_init() {
register_sidebar( array(
'name' => 'Home right sidebar',
'id' => 'home_right_1',
'before_widget' => '<div id="index_right">',
'after_widget' => '</div>',
'before_title' => '<h2 class="small_title">',
'after_title' => '</h2>',
) );
}
add_action( 'widgets_init', 'arphabet_widgets_init' );
好吧,我一直在查看 WordPress 的 wiki,上面说要把它放到 functions.php 文件夹中,我已经做到了。
<?php if ( is_active_sidebar( 'sidebar-1' ) ) : ?>
<div id="index_right" class="primary-sidebar widget-area" role="complementary">
<?php dynamic_sidebar( 'sidebar-1' ); ?>
</div><!-- #primary-sidebar -->
<?php endif; ?>
</div>
然后它说要将此文件包含到您的 sidebar.php 中,我也这样做了,但是当我创建一个小部件时它显示为空白 space 在网页上。
#index_right {
width: 232px;
margin-left: 10px;
float: left; }
.small_title {
width: 222px;
height: 33px;
padding-left: 10px;
line-height: 36px;
vertical-align: middle;
background-image: url('images/bg_title.jpg');
background-position: left; text-align: left;
}
我的 sidebar.php 文件中的内容可以在这里找到。 - http://pastebin.com/gnVsh6MG
我认为你的问题是你实际上并没有调用你创建的边栏。您正在使用 ID sidebar-1
调用边栏,但您创建了一个名为 home_right_1
的边栏。所以改变:
<?php if ( is_active_sidebar( 'sidebar-1' ) ) : ?>
<div id="index_right" class="primary-sidebar widget-area" role="complementary">
<?php dynamic_sidebar( 'sidebar-1' ); ?>
</div><!-- #primary-sidebar -->
<?php endif; ?>
</div>
到
<?php if ( is_active_sidebar( 'home_right_1' ) ) : ?>
<div id="index_right" class="primary-sidebar widget-area" role="complementary">
<?php dynamic_sidebar( 'home_right_1' ); ?>
</div><!-- #primary-sidebar -->
<?php endif; ?>
</div>
应该可以。