改变Widget自定义WordPress侧边栏

LMS
892 4

其实对超过2栏的wp主题我并不怎么感兴趣,不过毕竟是有这么一个功能在,虽然暂时没用到,也无法记下来当个备忘了。

以默认主题为例,主题中的functions.php文件开头有如下代码:

if ( function_exists('register_sidebar') ) {
        register_sidebar(array(
                'before_widget' => '<li id="%1$s" class="widget %2$s">',
                'after_widget' => '</li>',
                'before_title' => '<h2 class="widgettitle">',
                'after_title' => '</h2>',
        ));
}

修改上面代码中第2行的register_sidebar(array(…为:

register_sidebars(2, array(…
// 数字2可以换成你想定义的Widget区域的数目。

保存,然后,打开sidebar.php,找到下面的代码片段:

<?php if ( !function_exists(‘dynamic_sidebar’) || !dynamic_sidebar() ) : ?>
…
<?php endif; ?>//可以换成你想定义的Widget区域的数目。

修改为:

// 显示第1个Widget组。
<?php if ( !function_exists(‘dynamic_sidebar’) || !dynamic_sidebar(1) ) : ?>
…
<?php endif; ?>
// 显示第2个Widget组。
<?php if ( !function_exists(‘dynamic_sidebar’) || !dynamic_sidebar(2) ) : ?>
…
<?php endif; ?>
THE END

评论 4

  1. that5
    🏆🏅🏅

    不用if,在不同的分类下,使用不同侧边栏怎么实现呢?

    1. 做两个侧边文件,比如sidebarx.php和sidebary.php,然后根据分类判断调用哪个侧边模板。

  2. Ray
    🏅🏅

    俺用不着啊

  3. ansonyi
    🏅🏅

    :grin: 速度试试去

发表评论

Submit