WordPress批量修改数据库表前缀php工具代码

为什么要修改wordpress数据库表前缀:一是为了安全,不定期修改wordpress数据库表前缀是安全的专业建议之一。二是换空间了,原来数据库已存在同一前缀的表。

现在只需要上传一个php工具,不用进数据库就能批量修改wordpress数据库表前缀了。先看 php工具代码:

在进行下列操作之前,请务必备份数据库,否则后果自负。
[ad]
<?php
/**
* 修改wordpress表名前缀的工具.
*filename:reset_suffix.php
* @By 偶米工作室
*/

header(“Content-type: text/html; charset=utf-8”);
/////////下面两行您需要修改///////////
$oldtablepre=wentong_’; //旧的表前缀
$newtablepre=’wentong_org_’; //您要修改成新的表前缀
/////////上面两行您需要修改///////////

##########@以下请勿修改@###########################!DONT CHANGE BELOW!##################################################
require_once( dirname(__FILE__) . ‘/wp-load.php’ );

$tables=array(“{$oldtablepre}commentmeta”,”{$oldtablepre}comments”,”{$oldtablepre}links”,”{$oldtablepre}options”,”{$oldtablepre}postmeta”,”{$oldtablepre}posts”,”{$oldtablepre}terms”,”{$oldtablepre}term_relationships”,”{$oldtablepre}term_taxonomy”,”{$oldtablepre}usermeta”,”{$oldtablepre}users”);

echo ‘<div style=”font-size:1.2em;”><span style=”color:gray;font-weight:bold;”>下面更改表名:</span><hr></hr>’;

foreach ($tables as $key => $value){
$oldtable=$value;
$newtable=str_replace($oldtablepre,$newtablepre,$value);
$wpdb->query(“ALTER TABLE `$oldtable` RENAME TO `$newtable`”);
echo ‘成功更改表名’.$oldtable.’为:<span style=”color:green;”>’.$newtable.'</span><br></br>’;
}

echo ‘<span style=”color:gray;font-weight:bold;”>下面更改’.$newtablepre.’options表中的键值:</span><hr></hr>’;

$wpdb->query(“update `{$newtablepre}options` set `option_name`=replace(option_name,'{$oldtablepre}user_roles’,'{$newtablepre}user_roles’)”);

echo ‘成功更改’.$oldtablepre.’user_roles为:<span style=”color:green;”>’.$newtablepre.’user_roles</span><br></br>’;

$meta_key=array(“{$oldtablepre}capabilities”,”{$oldtablepre}user_level”,”{$oldtablepre}autosave_draft_ids”,”{$oldtablepre}usersettings”,”{$oldtablepre}usersettingstime”);

echo ‘<span style=”color:gray;font-weight:bold;”>下面更改’.$newtablepre.’usermeta表中的键值:</span><hr></hr>’;

foreach ($meta_key as $key => $value){
$oldoption=$value;
$newoption=str_replace($oldtablepre,$newtablepre,$value);
$rs=$wpdb->query(“update `{$newtablepre}usermeta` set `meta_key` =replace(meta_key,’$oldoption’,’$newoption’)”);
echo ‘成功更改’.$oldoption.’为:<span style=”color:green;”>’.$newoption.'</span><br></br>’;
}

echo ‘</div>’;

?>

新建一个reset_suffix.php,复制粘贴以上代码,格式转为 utf-8无bom编码,保存上传至 wp-config.php 同一文件夹。

在浏览器输入 http://wentong.org/reset_suffix.php(wentong.org换成你的域名)。

修改wp-config.php的表前缀为你新的表前缀。如本例子中的 wentong_org_

 

人吐槽 人点赞

猜你喜欢

发表评论

用户名: 密码:
验证码: 匿名发表

你可以使用这些语言

查看评论:WordPress批量修改数据库表前缀php工具代码