换了Sandbox并调整了一下主题,发现ajax comments无效了,一直以为是模板的关系,仔细跟了一下才发现居然是Quoter搞的鬼。
因该算是Quoter的一个Bug吧,所有带js参数的url全部返回Quoter的JS,于是。。。ajax comments的js便失效了,comment的提交代码自然也就不存在了。
解决:其实可以仿照ajax comments的做法(这点ajax comments的作者要比quoter的作者考虑的周到),就是在返回js之前,判断url是不是quoter的,如果是的话再返回,diff文件如下:
--- quoter.php.ori 2007-08-30 01:38:24.000000000 -0700 +++ quoter.php 2007-08-30 01:42:41.000000000 -0700 -26,8 +26,12 Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. */ +define('PLUGIN_QUOTER_FILE', 'quoter.php'); +define('PLUGIN_QUOTER_PATH', '/wp-content/plugins/quoter/'); + // Javascript code -if (isset($_GET['js'])) { +if(strstr($_SERVER['PHP_SELF'], PLUGIN_QUOTER_PATH.PLUGIN_QUOTER_FILE) + && isset($_GET['js'])) { quoter_JScode(); } -148,7 +152,8 // If it's a server side quote page don't let robots index it - if (isset($_GET['quote']) && $_GET['quote'] != ""){ + if(strstr($_SERVER['PHP_SELF'], PLUGIN_QUOTER_PATH.PLUGIN_QUOTER_FILE) + && isset($_GET['quote']) && $_GET['quote'] != ""){ echo ("n");
Post a Comment