Widget logic –让你的侧边栏与众不同

[复制链接]
查看: 2154|回复: 0
如此,安好 发表于 2014-6-4 23:00:46 | 显示全部楼层 |阅读模式
Widgetlogic是最有用的wordpress插件之一。通过设置,Widgetlogic能够让博客的不同页面显示不同的侧边栏。这个功能非常有用,当你打算在侧边栏显示广告或其它内容时,不必再费事地修改模板。
8 u5 \; \5 T" f 你可以从wordpress.org网站下载这个插件,安装完毕后,需要激活才能正常使用。' x' J) s" j" A0 ]. ~
实例—在除首页之外的所有页面的侧边栏中显示“最新日志”。
3 ~' \4 K4 t# F3 c 步骤一:添加“最新日志”选项到侧边栏
7 |  ?2 D6 Q: z; X! u 登录博客的管理后台,然后点击小工具(widget)菜单,拖拽“最新日志”选项到右边的侧边栏,再设置相关标题,显示日志数(例如:5),最后点“save”按钮。
* t+ h  n$ L0 n" ^7 c* ^: G 2 L* U0 i2 w) w% z- r
步骤二:添加页面显示条件
: M* L4 x7 u# A% g$ y 在所有的小工具底部,有一个选项框,即“widgetlogic”。在这里输入页面显示条件来控制侧边栏的显示。新手如果不懂不要紧,你可以参看下面的说明来设置:WordPressCodex–ConditionalTags. }" N5 g0 D8 }8 W/ E% O
在本例中,我设定的筛选条件是“除了首页的所有页面“。因为判断首页的函数为:is_home(),那么除了首页的所有页面的语句应该是:!is_home()。在widgetlogic选项框中输入这个语句,然后保存即可。5 Q6 O6 J# C, j* V# F6 M: {

8 m5 L. o5 N8 [. p- E" o' t7 q更多高级的条件判断函数
! v; M5 L! U6 t- t# n is_single()-》判断是否为单篇日志7 c' c1 }) z7 M; r; r
is_page()-》判断是否为单个页面' ]$ i7 w, e" c0 x; y- C  n7 R
is_page(about)-》判断是否为about页面- y; L7 b. T; |9 s+ w
is_page(25)-》判断是否为id=25的页面) Z3 I3 p! r9 [+ @, _5 h6 s/ S
is_archive()-》判断是否为存档# F3 r' T2 _% D5 @: s- ^
is_category(wordpress)-》判断是否为别名是“wordpress“的目录
4 U( c! f3 i, R: e4 n+ M2 e( U is_category(37)-》判断是否为id=37的目录$ R- I/ g( b3 h+ `
has_tag(wordpress)-》判断是否存在名为“wordpress“的标签4 \$ _- |4 h8 H# x
你也可以使用逻辑运算符实现更多的控制。为逻辑“或”,&&为逻辑“与”。8 Y+ ~; x$ G/ I
实例1
# q' R: F1 M+ y0 F5 l  L- O8 e 在title为“fruit”的页面或名为“food”的目录页或tag为“banana”的页面显示某一小工具。
  n+ G) f7 m4 `2 U7 A- H: w+ P is_page(fruit)is_category(food)has_tag(banana)
0 C- k: H( ^3 M9 @; p 实例2
/ P* o0 C" \! G* G2 i6 ~ 仅在单篇日志并且不是某一指定目录中显示小工具。你需要提供特定目录的id号,而不能用别名或目录名来代替。8 s) v3 O: {! r
is_single()&&!in_category(array(23,30,78))
# C) Z2 Z3 Z6 ^1 G 正如我上面所说的,你可以参看相关文章来学习更复杂的条件判断函数。, N' V5 g$ w* h7 i8 @
Widgetlogic测试小技巧( E  U/ |( y0 \! r  g4 J3 `
如果我打算利用widgetlogic实现复杂一些的功能,一般我会把小工具拖拽到侧边栏,输入一段纯文本”heyitworked!”,然后看是否所有页面都会显示它。接着添加一些页面显示条件,如果显示成功,说明我的语句没问题。
9 I. ]( j- @: U1 L/ Z 为什么要做如此麻烦的工作呢?有时候当你试图添加一些动态广告代码或其它比较复杂的代码时,一不小心就会出错。这时候,你会茫然不知那里出错了。先用一段纯文本进行测试,能保证你输入的逻辑判断语句正确。这是我每次都要做的一件工作。
您需要登录后才可以回帖 登录 | 加入爱企业

本版积分规则

热门产品

服务热线

010-8646 0166
服务时间:7×24小时
客服邮箱:fuwu@aiqiye.cc

解决方案

爱企业微信公众号

Copyright ©2011-2024 北京塞凌泰克科技有限公司 塞凌云 京公网安备 11011402010108号 京ICP备11029861号