emlog5.3.1插件的实现原理,看完本文你就知道如何制作插件啦-站长杂谈下载

emlog5.3.1插件的实现原理,看完本文你就知道如何制作插件啦

开通本站Svip会员,全站资源免费下
1.认识doAction 挂载点函数
$ A. d1 T$ V8 ~5 J8 f) [) Q7 M插件挂载点函数是系统预设在各个页面的插件接口,系统在执行到挂载点时会自动执行挂载到上面的插件函数.该函数在emlog的系统function.base.php中定义.该函数有一个固定的参数表示该挂载点的名称,而后的其他参数参数可以依次传入.传入的参数可以给插件函数使用,当然也可以不使用.$ I8 v) d$ b+ x: V2 c; B
2.认识addAction 插件挂载函数
# S! v6 S9 l/ ^该挂载函数在插件文件中使用,可以实现将插件中的函数挂载到插件挂载点中让doAction函数执行,实现插件功能.该插件有两个参数,一个为挂载点名称(必须为系统中已经预先设置好的名字),一个为要挂载的函数.也就是要执行的函数., V- X  l2 G+ O, d
在制作插件的实际过程中我们只需要用addAction('系统预设挂载点','插件中的函数')就可以实现插件的功能,在插件函数中可以使用挂载点传入的参数.例如你想做一个屏蔽广告评论的插件.可以使用doAction('comment_post')发表评论前的挂载点.然后在插件中使用addAction('comment_post', 'adshielding');' h7 Y* ?( [# ?/ \( ^( o$ [/ {( o
然后写一个方法
% R* \1 h5 r1 y' S) y) \4 Wfunction adshielding(){, z3 Z3 U5 G: M1 X) v
$adkill_string = addslashes(trim($_POST['comment']));
" ?$ E1 b( A' m9 P$adkill_keyword = array('联系','手机','QQ');
4 l0 Q$ {: |3 E6 E. D$adkill_str = str_replace($adkill_keyword,'', $adkill_string ,$adkill_count);
1 }5 \5 `" E. x  d! Dif($adkill_count>0){emMsg('评论失败:该评论包涵广告字符!');}
& O0 Y$ x$ O9 u/ c  W  a}0 P. p9 _- Q- r6 J
然后看看效果吧,先在后台打开插件* m+ g+ H; W" `# @
20150731002006.jpg
& ^" f& D6 Y- X& G+ o# g  d然后在评论中评论包含被屏蔽的文字,评论就被屏蔽掉啦6 \! L# A( x/ |1 o, ?7 v
20150731002058.jpg 0 u1 z9 C7 t, q( L8 F8 l3 ?
20150731002115.jpg
  k2 b7 V4 T' k9 h) f最后输入正常的评论看看效果
" N. e3 X4 J3 }) q 20150731002214.jpg ) m$ p4 p8 d8 v/ N
20150731002229.jpg , V, S- Y2 l# ?& h5 W' m9 A# A/ Q
这样一个最简单的防广告插件就完成啦,是不是很简单!
& b9 A+ z5 C/ a6 x没有错,使用emlog制作插件就是这么的容易,只要你会一点php的知识,结合emlog的钩子函数,就能制作出一个插件来.还等什么,马上行动开始制作一个属于自己的插件吧!0 [1 m: j: C2 ^5 x* y) m

全部评论 0

您需要登录后才可以回帖 立即登录
登录
0
0
0
返回顶部