1.首先并在ucenter中添加应用,其中通信密钥随便输入,复制下来。 2.在wordpress目录中放一个uc_client文件夹,这个文件夹可以从ucenter相关的包中得到,是所有客户应用都会用到的。 3.更改wordpress配置文件wp-config.php,在其中加类似如下代码(请自行修改加粗部分):
//added by afo… //登录和退出时发出通知 define(’UC_CONNECT’, ‘mysql’); // 连接 UCenter 的方式 define(’UC_DBHOST’, ‘localhost’); // UCenter 数据库主机 define(’UC_DBUSER’, ‘wpdb_f’); // UCenter 数据库用户名 define(’UC_DBPW’, ‘1fdsf2_=’); // UCenter 数据库密码 define(’UC_DBNAME’, ‘wpdb’); // UCenter 数据库名称 define(’UC_DBCHARSET’, ‘utf8′); // UCenter 数据库字符集 define(’UC_DBTABLEPRE’, ‘wpdb.uc_’); // UCenter 数据表前缀 define(’UC_DBCONNECT’, ‘1′); // UCenter 数据库持久连接 define(’UC_KEY’, ‘fksal43dfssdfwerfdssafsafsafsafdsaf’); // 与 UCenter 的通信密钥 define(’UC_API’, ‘http://blog.treeber.com/ucenter’); // UCenter URL define(’UC_CHARSET’, ‘utf-8′); // UCenter 的字符集 define(’UC_IP’, ”); // UCenter 的 IP define(’UC_APPID’, 3); // 当前应用的 ID define(’S_ROOT’, substr(dirname(__FILE__), 0)); define(’UC_CLIENT_ROOT’, S_ROOT.’/uc_client/’); include_once(UC_CLIENT_ROOT.’client.php’); 将下面的api文件解成api目录后放在wordpress目录下,然后调试下确保从ucenter中可以与wordpress正常通信。 api for wordpress 4.需在index.php中第一行,即 define(’WP_USE_THEMES’, true); 前添 ini_set(’output_buffering’, ‘On’); 5.找到这个文件: wp-includes/pluggable.php中,搜function logout(),约468行,在}即函数结束前添如下代码 //added by afo… //加uc登出通知 uc_dsetcookie(’auth’, ”); echo uc_user_synlogout(); exit(); 在其下(即}之后,endif;之前)添加一个函数,代码如下 function uc_dsetcookie($var, $value, $life = 0, $prefix = 1) { global $cookiedomain, $cookiepath, $_SERVER; setcookie($var, $value, $life ? time() + $life : 0, $cookiepath,$cookiedomain, $_SERVER['SERVER_PORT'] == 443 ? 1 : 0); } 6.找到这个文件: user.php文件中 搜function wp_signon,在下面的return前(约59行)加 //added by afo… echo uc_user_synlogin($user->ID);