WordPress自定义侧边栏小工具(一)

  很多主题设计者都喜欢添加固定的侧边功能模块替换Wordpress默认小工具(widget)功能,但上下排列位置是固定的,重新排序需要修改模版文件,对新手来说有一定难度,如果能像Wordpress默认小工具一样,可通过拖拽移动位置是不是会很方便,这篇文章就教大家实现这一功能。
  其实强大的Wordpress早已为我们提供了这方面的接口(API),很多国外主题已集成该功能,只是国内主题中很少见到,实现这一功能要用到:
wp_register_sidebar_widget()
  通过上面函数可以向Wordpress小工具(widget)页面注册添加自定义小工具项目。
一、首先将主题固定的模块函数提取出来,放到单独的模版文件中。
比如将下面这两段“热门文章及分类目录”代码,分别粘贴到新建的两个:hot.php和categories.php文件模版中,
热门文章代码:
<?php $popular = new WP_Query('orderby=comment_count&posts_per_page=10'); ?>
<?php while ($popular->have_posts()) : $popular->the_post(); ?>
    <li><a href="<?php the_permalink(); ?>"><?php the_title(); ?></a></li>
<?php endwhile; ?>
文章分类代码:
<ul>
    <?php wp_list_cats("sort_column=name&hierarchical=0&exclude="); ?>
</ul>
二、打开主题的functions.php,添加:
if( function_exists('register_sidebar_widget')){
    register_sidebar_widget('热门文章','mb_hot');
    register_sidebar_widget('文章分类','mb_categories');
}
// 及:
function mb_mb_hot(){include(TEMPLATEPATH.'/hot.php');}
function mb_categories(){include(TEMPLATEPATH.'/categories.php');}
  之后,打开Wordpress小工具页面,会多出两个小工具“热门文章和文章分类”,与默认小工具一样可任意拖拽到侧边widget中,加上相应的样式基本就大功造成了。
  另外还可以替换和隐藏默认的小工具,可以参考官网Codex

猜你喜欢

转载自my.oschina.net/kangweb/blog/1635406