最近在制作wordpress主题的时候,出现一个问题,在新制作的主题中需要使用分页插件pagenavi,如果在主题启用的时候没有安装此插件,就会报错。
本身这个问题对于了解wordpress模板使用的朋友没有什么问题,但是如果不了解,这个时候往往会不知所措,那么能不能给这个插件的调用代码添加一段判断语句,当主题能够检测到插件的时候就显示插件效果,如果没有则输出空,不显示此插件,也不报错呢?

答案是肯定的,这里就以一个插件的安装调用举个例子:
例如我们需要在wordpress主题中使用分页插件pagenavi,在wordpress官方插件作者已经提供了插件的调用代码如下:
< ?php wp_pagenavi(); ?>
但是很明显,调用函数并没有提供什么判断,和我们上面提到的问题一样,需要在启用主题之前先安装好此插件,然后才能不报错。
好,现在我们使用以下语句调用此插件:
< ?php if(function_exists('wp_pagenavi')) { wp_pagenavi(); } ?>
这样就完美的解决了先后顺序报错的问题,我们启用主题后,如果没有检测到pagenavi这个插件,那么就不加载此插件语句,这样就不会报错了,如果已经启用,则可以直接显示插件效果。

同样的语句也可以使用以下判断语句:

< ?php if (function_exists('wp_pagenavi)): ?>
< ?php wp_pagenavi(); ?>
< ?php endif; ?>

OK!完美解决,学习重要的是思考,我们能不能通过这个小例子举一反三呢,当然可以,比如我们使用另一个分页插件WP Page Numbers,可以使用以下简单语句直接调用:
< ?php wp_page_numbers(); ?>
我们同样也可以修改为更完美的判断语句调用:
< ?php if(function_exists('wp_page_numbers')) { wp_page_numbers(); } ?>

总结:wordpress插件调用通用语句:
< ?php if(function_exists('插件命令函数')) { 插件加载函数(); } ?>
或:

< ?php if (function_exists('插件命令函数)): ?>
< ?php 插件加载函数(); ?>
< ?php endif; ?>

.

声明:本站分享的WordPress主题/插件均遵循 GPLv2 许可协议(免费开源),相关介绍资料仅供学习参考,实际版本可能会因版本迭代或开发者调整而产生变化,如程序中涉及有第三方原创图像、设计模板、远程服务等内容,应获得作者授权后方可使用。本站不提供该程序/软件的产品授权与技术服务,亦不收取相关费用。