无觅Wordpress插件的一个小问题

看到大家都在用无觅(wumii)的Wordpress插件来显示相关文章,我也很眼红,于是下载来试试。

结果就遇到一个问题,后台插件设置页面提示:

正在使用的主题可能不支持将加载脚本置于文档末尾, 建议不要开启此功能。

结果是,该显示相关文章的部分无法显示,浅尝辄止的我于是打算放弃。

没想到,刚有了禁用无觅的想法,就收到了无觅发来的邮件:

我瞬间就温暖了,连淘宝上天天“亲亲亲”的卖家们也没有这么周到过,无觅的客服可真好。更为感动的是,我描述了自己的问题之后,无觅网创始人林承仁回了一封邮件,说:你可以不要勾此选项,便能正常使用。不久,客服又给了更详细的解决方案:

1. 如果您只是希望可以显示相关文章,您可以将 “加载脚本置于文档末尾” 选项设置为NO,这样就可以正常显示相关文章了。

2. 如果您希望手动把加载脚本放到文档末尾(这样种做法会导致插件后台的设置选项无效),编辑/wp-content/themes/主题文件夹/footer.php文件,找到文件中的,在其上插入如下代码:

无觅相关文章插件

如在使用过程中遇到其他问题,只需一封邮件。

感谢您对无觅的支持。

问题解决之后,我还是有点纳闷,为什么我的主题不支持这个插件呢?Jianshen Liu又答道:

默认情况下,无觅相关文章插件会将加载的script脚本放置到每个网页的footer位置,但这个功能需要主题的支持,如果在主题的footer.php文件中没有调用wp_footer()函数,则在开启 “加载脚本置于文档末尾” 功能后会导致相关文章无法显示。

自己检查了一下主题,我还真是没有调用wp_footer(),于是我赶紧加上,于是去掉代码,我就能正常在后台设置啦。

这件事情,首先让我体会到无觅的专业和热心,别的我不清楚,但我敢说他们是认真做事的人,真正为客户着想。同时,这件事也让我有点自责,其实看看插件的代码就可以了。最新版的插件代码很简洁,wumii-related-posts.php里清清楚楚地写着:

private function addScriptInPage($content) { if ($this->getAdminOption(self::SCRIPT_IN_FOOTER)) { add_action('wp_footer', array($this, 'echoWumiiScript')); return $content; } else { return $content . $this->createWumiiScript(); } }

以及

if ($this->adminOptions[self::SCRIPT_IN_FOOTER] // The wp_footer action is theme-dependent. // If the theme-defined file footer.php doesn't call wp_footer(), the action will not fire. && !$this->isScriptInFooterSupported()) { $OptionsUpdatedMessage[] = new Wumii_Notify_Message('正在使用的主题可能不支持将加载脚本置于文档末尾, 建议不要开启此功能。', 'error'); }

哎呀,粗心大意害死人。

阅读 16