PHP 代码在 Wordpress 插件中不起作用

PHP Code not working in Wordpress Plugin

刚刚下载了这个插件(WordPress PDF Light Viewer),但它无法激活。我发现我必须更新我的 php 版本,但在我这样做之后它只会给出错误:

Fatal error: Call to a member function getVersion() on a non-object in .../wp-content/plugins/pdf-light-viewer/controllers/Plugin.php on line 260

经过一番挖掘,我发现这行代码存在问题:

$Imagick = static::getXMagick();

其后是:

$ImagickVersion = $Imagick->getVersion();

显然前一行 returns 为空,我找不到任何关于这段代码实际作用的信息,因为它在搜索中唯一出现的地方就是这个插件。

所以,我想我需要找到一种方法将 $Imagick 作为一个对象拉出来,这样 getVersion() 就可以正确地 运行 了。如果我猜对了,这就是我需要回答的问题

PDF Light 查看器需要 Imagemagik or GMagik. 此外,它还需要 Imagick 或 Gmagick PECL 库。

我猜你的 Wordpress 服务器需要安装这些。静态 getXMagick() 函数必须实例化一个 PECL Imagick 对象(它包装了 Imagemagik),但没有在您的 PHP 安装中找到它。

要在 Ubuntu 上安装 Imagemagick(对于 PHP 5): apt-get install imagemagick php5-imagick