解决 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/

5 Comment(s)

  1. 帕兰卓一得
    October 6th, 2007 at 4:43 am

    我的留言没问题。删除分类也没问题。编辑提示
    Category not updated.
    插了,不行。改了,不行。
    然后发现。我的BOOK这个分类,如果要把SLUG改为BOOK,就不能更新。如果改成其它名字,就没有任何问题。怪哉!!!

  2. hhalloyy
    October 6th, 2007 at 12:57 pm

    神奇~

  3. Michael  (Blog Owner)
    October 6th, 2007 at 5:07 pm

    @hhalloyy, 神奇?

  4. hhalloyy
    October 6th, 2007 at 8:06 pm

    就是很神,让我好奇。

    我发现了一个可以批量改post slug的插件,挺爽的。

  5. Michael  (Blog Owner)
    October 7th, 2007 at 1:20 pm

    嗯,你这下终于可以把你的 permalink 改了。


RSS feed for comments on this post · TrackBack URI

Leave a reply