解决 WP 不能删除分类的问题
在老帕的 Blog 上看到他说“分类名称居然编辑不了”,我没有问具体情况,但大概猜是怎么回事,因为我两个星期前刚升级 WP 2.3 的时候也遇到了这个问题。事实上除了分类名称编辑不了,分类也无法被删除,甚至在 comment 管理模式下,也不法对评论作任何操作 (spam/delete/edit)。无论怎么,WP 都会说 “You don’t have permission to do that“,尽管我已经以管理员的身份操作。本质上说,只要操作是 Ajax 效果的,就会产生以上的后果。
解决办法:
一、使用一个名为 AJAX Referer Fix 的插件,激活后就自动纠正该问题。 二、如果上面的插件解决不了问题(比如我的情况就不行),就稍微麻烦一点了。需要修改一个文件,把 wp-includes/pluggable.php 的第 358-364 改上一改。
改之前: > $cookie = explode('; ', urldecode(empty($POST['cookie']) ? $GET['cookie'] : $_POST['cookie'])); // AJAX scripts must pass cookie=document.cookie
foreach ( $cookie as $tasty ) { if ( false !== strpos($tasty, USER_COOKIE) ) $user = substr(strstr($tasty, '='), 1); if ( false !== strpos($tasty, PASS_COOKIE) ) $pass = substr(strstr($tasty, '='), 1); }</code>改之后:
< $user = $COOKIE[USERCOOKIE]; < $pass = $COOKIE[PASSCOOKIE];
如此一来,大功告成。
参考: http://trac.wordpress.org/ticket/3807 http://sparepencil.com/code/ajax-referer-fix/

