我在当前网站上集成了wordpress。但是我收到一个错误消息, 说我的DB_HOST, DB_NAME, DB_USER已经定义。没错, 因为我正在运行使用相同常量的登录/成员脚本。
因此, 我将wp-config.php中的wordpress常量重命名为DB_HOST1, DB_NAME1等。为了使wordpress使用新的常量运行, 我需要将wp-includes / load.php函数require_wp_db()更改为:
function require_wp_db() {
global $wpdb;
require_once( ABSPATH . WPINC . '/wp-db.php' );
if ( file_exists( WP_CONTENT_DIR . '/db.php' ) )
require_once( WP_CONTENT_DIR . '/db.php' );
if ( isset( $wpdb ) ) {
return;
}
$wpdb = new wpdb( DB_USER1, DB_PASSWORD1, DB_NAME1, DB_HOST1 );
}
但是当wordpress更新安装时, 我担心它会被覆盖, 因为它是一个wordpress核心文件。
我试图钩住或过滤函数, 但是钩子在数据库连接后执行。
有什么建议如何解决这个问题?
非常感谢你
#1
修改核心文件从来都不是一件好事。但是如果必须的话, 一个丑陋的解决方法是使用来自Linux shell的chattr命令使文件不可变:
chattr +i wp-includes/load.php
这将防止文件在以后的更新中被更新。
评论前必须登录!
注册