很多主题设计者都喜欢添加固定的侧边功能模块替换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 . '/mb_hot.php'); } function mb_categories() { include(TEMPLATEPATH . '/categories.php'); }
之后,打开Wordpress小工具页面,会多出两个小工具“热门文章和文章分类”,与默认小工具一样可任意拖拽到侧边widget中,加上相应的样式基本就大功造成了。
另外还可以替换和隐藏默认的小工具,可以下面参考官网Codex
即将升级的HotNews Pro 主题已将大部分侧边固定功能模块,移到Wordpress小工具(widget)面板中,方便用户灵活安排侧边模块位置。