wordpress与Ucenter整合的方法

  • A+
所属分类:Wordpress
摘要

如果你看上了wordpress的SEO优化强大功能,也许会想着用wordpress+discuz某款产品结合起来,Discuz系列的产品是大多站长建立社区类网站的首要考虑对象,构建一个CMS/多用户blog+BBS/SNS/SHOP等类型的网站,那摆在你面前的首要问题就是怎样将wordpress和Ucenter整合起来?

别抓狂,可能你试过很多种方案,都多少有些问题,那么你可以尝试一下以下的方法,不过别忘记,在整合之后,开启wordpress常规设置中的开启注册功能。

如果你看上了wordpressSEO优化强大功能,也许会想着用wordpress+discuz某款产品结合起来,Discuz系列的产品是大多站长建立社区类网站的首要考虑对象,构建一个CMS/多用户blog+BBS/SNS/SHOP等类型的网站,那摆在你面前的首要问题就是怎样将wordpress和Ucenter整合起来?

别抓狂,可能你试过很多种方案,都多少有些问题,那么你可以尝试一下以下的方法,不过别忘记,在整合之后,开启wordpress常规设置中的开启注册功能。

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’, ‘wpucen’); // UCenter 数据库用户名
define(’UC_DBPW’, ‘111111’); // UCenter 数据库密码
define(’UC_DBNAME’, ‘wpucdb’); // 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’, ‘https://www.sishaofeng.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);
Author: kolidon

至此整合完毕,调试把。。

avatar

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: