我写了一个插件,它成功地在我的localhost上工作 . 但是当我安装它我的服务器并想要激活它失败 .
插件无法激活,因为它触发了致命错误 .
解析错误:语法错误,第22行/home/ozcanco/public_html/said/wp-content/plugins/Archive/my-plugin.php中的意外T_FUNCTION
但是当我在我的本地运行这个插件时它成功运行 . 通过我的wordpress版本相同的方式,在本地和服务器上 . 如何发生这种情况?
第22行是这样的:
add_action('loop_start', function($query) use ($allContent){
1 回答
您拥有的内联函数称为匿名函数或闭包 . 闭包仅在5.3版本中成为PHP的一部分,因此如果您的servier运行5.2或更低版本,它将不支持它们 .
http://php.net/manual/en/functions.anonymous.php
如果升级服务器不是一个选项,那么就像评论中建议的krike一样,您可以使用回调函数: