当前位置:首页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:二次  二次开发  开发  教程  手记  站点  用户  用户数  户数  数据  
  • 相关搜索
图片推荐
    如何排兵布阵玩转微博营销矩阵策略

    如何排兵布阵玩转微博营销矩阵策略

    前言  什么是微距阵?恐怕很多人连微博营销都没有搞清楚,再引入微距阵这样的概念不免更加茫然不知所措。但是微距阵是微博营销战中不得不用到的策略之一。表面上它是根据产品、品牌、功能等不同定位需求建立的各个
    场景营销有什么卵用?为啥阿里、腾讯谁都不放过它

    场景营销有什么卵用?为啥阿里、腾讯谁都不放过它

    场景业务在2013年便被全球的互联网和科技界广泛谈论,谁能占据场景,谁就能真正赢得未来。从技术层面看,大数据、移动设备、社交媒体、定位系统等技术已经备好,可以支撑线上和线下的全场景商业时代的服务。  
    创业团队“抠门”的那点事:用QQ“零成本”办公

    创业团队“抠门”的那点事:用QQ“零成本”办公

    导语:在创业初期资金紧张的时候,科学利用每一笔钱,才会为未来积攒下更多的财富;而千头万绪的事项,则需要更高效的办公模式,让有限时间资源最大化利用。    或许每个人的心中都有一个自己做老板的创业梦。在
    快播没了 谁来拯救小电影站点的财路

    快播没了 谁来拯救小电影站点的财路

    快播关闭P2P播放已经有几天的时间了,而昨天快播公司警察来访,据说还查封了快播的电脑和服务器。不管这些是不是真的,但是警察确实是来了。快播最近也确实是遇到了一些麻烦。快播这P2P模式已关闭,做小电影站
    dede如何更改默认管理员名称admin

    dede如何更改默认管理员名称admin

    dede是一款非常普遍的CMS程序,但是安装好后往往都提示:没有更改默认管理员名称admin,建议您修改为其他管理账号!马上修改,但是根据提示你没有办法修改默认的管理员名称,只能增加笔名。即使你添加管
    发挥企业网站作用 为企业形象加分

    发挥企业网站作用 为企业形象加分

    如今在这个网络化的时代,很多机构都有属于自己的网站。学校用网站来公布各种教学信息,政府用网站来公开各种文件和工作,而公司则是通过网站来吸引顾客。据调查,好多公司都拥有自己的网站,但是能够充分利用起来,
    品牌营销如何打造?看这里

    品牌营销如何打造?看这里

    每个不同行业在市场上都取得过阶段性的成功品牌,对其业务领域都会有很多洞察,诸如苹果如何卖手机?星巴克怎么卖咖啡?耐克如何卖鞋?即使不看数据他们也非常清晰的,是该品牌一直致力于要为用户创造的核心价值;和
    百度新闻源取消公告深度解读

    百度新闻源取消公告深度解读

    近期百度新闻源的取消(《新闻源取消 VIP升级公告》)引起了不少站长的关注,学院特邀请版主左倾,来解答站长的疑问。  1、为什么要取消新闻源?  新闻源的取消,实际上是百度技术的一次升级和开放。现在已
你是怎么知道非凡网赚网的?
  •   
  • 联系QQ 邮箱:976382653@qq.com 微信:976382653
    在线留言
    发布软文
    广告自助购
    文章调用
    常见问题
    保存到桌面