wordpress批量修改文章

作者: 冬冬 分类: 网络技术 发布时间: 2013-05-20 11:52

由于网站的搬迁或者其他因素影响,我们不得不大量修改以前的文章。比如这次的115网盘事件,我不得不把以前网盘的地址换成其他的。因此就不得不用批量修改文章的方法了。

wordpress的文章是放在数据库里的,要想修改文章详细就必须修改数据库。登录到你的主机,进入数据库管理工具,比如我的是phpMyAdmin,这里你就可以执行sql语句来更新数据库了。

要想修改文章就要用到replace函数,我们先来了解一下replace函数:

命令格式:update 表的名称 set 替换字段=REPLACE(替换字段,原来内容,新内容)
例子:

  1. 把backupfile表里url的字段内容为http://ddayh.com的全部改为http://www.ddayh.com。 
    1
    2
    3
    update backupfile
    set url=
    REPLACE(url,'http://ddayh.com','http://www.ddayh.com');
  2. 根据条件增加字段的内容,如把file_number=1的记录的logical_name字段的内容前面加上tmp,后面加上end。
    1
    2
    3
    4
    update backupfile
    set logical_name=
    REPLACE(logical_name,logical_name,'tmp'+logical_name+' end ')
    where file_number=1;
  3. 根据条件去掉指定记录的前面2个字符。
    1
    2
    3
    4
    update backupfile
    set logical_name=
    REPLACE(logical_name,logical_name,SUBSTRING(logical_name,3,len(logical_name)-2))
    where file_number=1;
  4. 根据条件去掉指定记录的后面4个字符。
    1
    2
    3
    4
    update backupfile
    set logical_name=
    REPLACE(logical_name,logical_name,SUBSTRING(logical_name,1,len(logical_name)-4))
    where file_number=2;

修改wordpress的文章就是把表名和字段名改一下就行了,wp_posts就是存放文章的表,里面有`ID`, `post_author`, `post_date`, `post_content`, `post_title`, `post_excerpt`, `post_status`, `post_type`等等各种字段。举几个例子:

  1. 批量修改文章里面的内容,把ddayh.com改为http://ddayh.com。 
    1
    2
    3
    update wp_posts
    set post_content=
    REPLACE(post_content,'ddayh.com','http://ddayh.com');
  2. 批量修改标题,把115去掉。
    1
    2
    3
    update wp_posts
    set post_title=
    REPLACE(post_title,'115','');
  3. 批量修改作者,把admin改为wuyuan
    1
    2
    3
    UPDATE wp_posts
    SET post_author = admin的id
    WHERE post_author = wuyuan的id;
  4. 批量禁用所有文章的pingback功能。
    1
    2
    UPDATE wp_posts
    SET ping_status = 'closed';

如果你比较了解sql语句的话还可以做更多的操作。如果对修改不放心,也可以先预览一下,命令如下:

1
SELECT REPLACE(替换字段,'原内容','新内容') from 表名;

确认好了之后就可以放心修改了。

如果觉得我的文章对您有用,请随意打赏。您的支持将鼓励我继续创作!

发表评论

电子邮件地址不会被公开。 必填项已用*标注