当前位置:首页wordpress二次开发教程手记:多站点的用户数据共享 举报文章

wordpress二次开发教程手记:多站点的用户数据共享

作者:admin    来源:用户投稿    时间:2015.6.11   

  最近一个客户要求小V帮他们公司站点做一个英文版本,并且要求中文版和英文版两个站点的用户数据可以互通而且不影响站点的正常运行。好吧,开始蛋疼的折腾,首先看了下wordpress的官方文档:《wordpress数据结构图》发现wordpress的用户数据表(wp_users和wp_usermeta)是相对独立的,那么我们就可以直接将两个站点的用户数据库共享即可,不用用户数据考虑会对两个站点中其他数据所造成的影响了。下面小V来说说解决方法:

  假设我们有两个wordpress站点,一个为cn.v7v3.com(数据表前缀为v7v3cn_)另一个为en.v7v3.com(数据表前缀为v7v3en_),我们将cn.v7v3.com作为主站点,将en.v7v3.com作为主站的一个英文版的副站点。

  首先打开en.v7v3.com的wp_config.php文件,并加入以下代码:

  define('CUSTOM_USER_TABLE', 'v7v3cn_users'); //v7v3cn_为主站点的数据库前缀

  define('CUSTOM_USER_META_TABLE', 'v7v3cn_usermeta');

  加入以上代码后两个站点之间的用户数据就实现了初步的互通,但是如果用主站的用户去登录副站点会提示没有足够的权限。原因是因为主站储存的用户权限值是以v7v3cn来开头的,以主站的管理员为例,管理员用户ID为1,角色是administrator,则表中就有这样一条记录:

  user_id->1, meta_key->v7v3cn_capabilities, meta_value->a:1:{s:13:"administrator";s:1:"1";}

  而英文副站点的数据库中却没有以v7v3en_开头的权限值记录,所以造成权限不够的提示。解决方法是运行一下SQL语句:

  //向数据库中添加v7v3en_开头的权限记录值

  INSERT INTO `dbname`.`wp_usermeta` (`umeta_id`, `user_id`, `meta_key`, `meta_value`) VALUES (NULL, '1','v7v3en_capabilities', 'a:1:{s:13:"administrator";s:1:"1";}');

  这样做仅仅使用户id为1的管理员可以正常登陆这两个网站,如果创建了新的用户,无论是管理员还是普通用户,都会被提示权限不足,解决方法是在用户的注册钩子添加一个SQL数据库操作:

  //设置主站的前缀,其它网站都共享该网站的用户数据表

  $main_prefix = 'v7v3cn_';

  //设置子站的前缀,前缀为v7v3en

  $addi_prefixs = array('v7v3en_');

  //添加功能到用户注册的钩子里

  add_action( 'user_register', 'dup_capabilities' );

  function dup_capabilities( $user_id ) {

  global $main_prefix, $addi_prefixs;

  //获取该用户权限的值,因为不同角色的值是不同的

if( $cap_val = get_user_meta( $user_id,$main_prefix.'capabilities', true ) ) {
好文打赏,给Ta鼓励
扫一扫用手机阅读本文
Tags:二次  二次开发  开发  教程  手记  站点  用户  用户数  户数  数据  
  • 相关搜索
图片推荐
    《参与感》读后感 营销方式之互动参与、炫耀情结

    《参与感》读后感 营销方式之互动参与、炫耀情结

    《参与感--小米口碑营销内部手册》一书终于拜读完毕。说来惭愧,从去年9月19翻开第一页,花了4个月时间才读完。书中介绍小米的故事,很精彩,也结合一些营销的案例,很受用。细想着,我得一一消化,提炼几个关
    如何给自己的网站制造高质量外链

    如何给自己的网站制造高质量外链

    各位Seoer都知道网站优化的一个秘诀:内链为皇,外链为王,一个好的网站排名优化少不了内外链的操作,内链我们可以自己根据网站结构内容等等相关元素进行调节,保证网站结构和链接充分对搜索引擎友好化,那么外
    营销是场心理战 要从根本上击溃敌人防线

    营销是场心理战 要从根本上击溃敌人防线

    营销是指企业发现或挖掘准消费者需求,从整体氛围的营造以及自身产品形态的营造去推广和销售产品,那么既然要去推广,当然要了解客户内心中最深的购买欲。  现代经济是以市场、顾客的需要为起点的,客观、准确地把
    了解一下如何玩转“京东”的秘籍

    了解一下如何玩转“京东”的秘籍

    说起京东就不能不说京东PLUS会员:一、京东PLUS会员◆一个实名认证只能开通一个PLUS会员,会员年费299元。(目前140元左右就可以开通,不排除京东后期会涨价,因为实在太划算)◆购物获得实际付款
    站长不要一味的把思想强加给用户

    站长不要一味的把思想强加给用户

    最近几天家里事比较多,好长时间没上网了。对于大多数网络从业者来说,百度搜索引擎一直是大家关注的对象,刚上线就看到了百度的一个小调整。搜索结果只显示主域名(和栏目页),不显示内页链接了。对此问题大家自是
    我创业失败的血泪史

    我创业失败的血泪史

    【导读】游戏媒体U9网前总经理李秋风历经三年社交游戏创业,终究还是失败收场。少有业内人士总结亲身经历的失败而把经验留给后来人,因此创业中的错误不断的在一个又一个团队中重现,这是一篇用创业者的鲜血写就的
    教你如何让用户对你的文章爱不释手

    教你如何让用户对你的文章爱不释手

    先前ian在博客中发表了《通过站内优化提升首页关键词排名》这篇文章提到了有关首页优化的一些要点,今天Ian给各位介绍下如何写好用户喜欢的文章,让读者对你的写的文章爱不释手的几个要点。  一、用户喜欢什
你是怎么知道非凡网赚网的?
  •   
  • 联系QQ 邮箱:976382653@qq.com 微信:976382653
    在线留言
    发布软文
    广告自助购
    文章调用
    常见问题
    保存到桌面