wordpress自定义小工具(widget)详解

十一月 08
磊子 2011年 5 条评论

大家都知道wordpress后台有一个小工具(widget)的功能,可以为我们提供很大方便,但有时候它的那些默认的小工具(widget)并不能满足我们的要求,这时候我们需要找插件或者通过其他方法来解决。比如直接写在文件里面,假如你所加入的功能是你经常会用到的话,我们可以将它也做成小工具(widget),这样你只需要用鼠标一拖就可以了,非常方便。今天就为大家分享下怎么制作小插件,方法有两种。

第一种是最简单的方法,wordpress已经给我们提供了这个函数。

<?php register_sidebar_widget( $name, $output_callback, $classname ); ?>
//$name 你的小工具的名称 (必须)
//$out_callback 返回的函数名称(必须)
//$classname 小工具class 名称,可以用来定义样式(可选,一般只需要前两个就可以)

有了这个函数我们只需要写个方法就可以让他显示出来,比如:

<?php

 function my_test()
 {
    echo '<div>这是一个简单的例子</div>'; //输出内容,显示在页面上。在这里可以输入你想要显示的内容
 }
register_sidebar_widget('My Widgets','my_test');

?>
//也可以这样写,方便写一些样式标签什么的,新手建议使用这个
<?php
 function my_test()
 {
?>
  <div>一个简单的测试</div>
<?php
 }
 register_sidebar_widget('My Widgets','my_test');
?>

然后把这个代码放入你主题的functions.php 中,不过在这里我建议大家最好是放在另一个文件中,这样以后比较好查找和修改。还有一点就是函数命名要唯一,不然会和其他函数命名一样而报错。也可以加上if ( !function_exists(‘my_test’) ) {} 来判断是否存在这个方法,如果存在将不会运行。这样可以避免报错!如下:

<?php
if(!function_exists('my_test'))
{
	function my_test()
	{
?>
	<div>一个简单的测试</div>
<?php
	}
	register_sidebar_widget('My Widgets','my_test');
}
?>

这样一个非常简单的小工具(widget)就做好了!感兴趣的朋友可以试一下!

自定义小工具效果

使用这个方法,唯一不足的地方就是只能使用一次,而不像那些默认的小工具(widget)那样,不管你拖动使用多少次,它都会在可用小工具(widget)那儿一直存在。 所以我将在明天给大家分享下这个方法,这样你就可以任意使用它。

Ps: 给大家说明一下,因为我发现很多人都不大清楚,就是在小工具(widget)那儿,有一个可用小工具(widget),还有一个是未使用小工具(widget),第一个就不说了,大家都知道,这个未使用小工具(widget)是用来做什么的呢?其实它是起到一个储存作用,就是说把你已经设置的小工具(widget),可以先放到上面。等你需要使用的时候还可以再次使用,而且它还有一个作用是,比如你要搬迁数据的时候,wordpress对小工具(widget)里面的文本工具,以及自己定义的小工具(widget)它是不存储在数据库的,这就造成你在搬迁数据到另外的网站的时候,还得在重新填写。但是如果你在搬迁之前先将它们放到未使用小工具(widget)的上面。这样你在搬迁过后它还会在那儿,只需将它们拖到你的使用地方就可以了,这个不清楚新的版本还支不支持,总之这样会减少很多繁琐的事情。是不是很方便呢!呵呵! 希望大家多多支持与关注!

» 版权所有©转载必须以链接形式注明作者和原始出处:磊子的博客 » wordpress自定义小工具(widget)详解
» 地址:( Ctrl+C 复制 )
» 如果对本站感兴趣,请到网站右下方订阅本站,将为你带来更多精彩和实用的文章
» 如果您对这篇文章感兴趣,不妨小小的 捐助(Donate)一下博主吧,不管多少都是对博主最大的支持和鼓励哟,博主-磊子感谢大家的支持!!!

5 条留言 其中:访客:3 条, 博主:2 条

  1. 你好,我就是想找到一种可以让那个小工具能够多次使用的方法。看来我还得找你“明天”的教程。 :shock:

  2. 请问要把这个涵数写在哪呢 :?:

    • 磊子说:

      我在文章里面有写哦,你在仔细看看! 写在使用主题的function.php中,或者其他文件,然后进行引入。具体的可以在参考下文章里面的内容。呵呵!

  3. 学习了! :razz:

说点什么吧




wireless earbuds moscow mule mugs bluetooth speakers waterproof camera best wireless earbuds best vacuum cleaner best drugstore foundation best dishwasher best waist trainer wireless headphones best vacuum 0594918 best bluetooth earbuds waterproof bluetooth speaker tattoo cover up action camera
订阅本站