当前位置:首页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:二次  二次开发  开发  教程  手记  站点  用户  用户数  户数  数据  
  • 相关搜索
图片推荐
    如何设计网页才能让用户有“参与感”?

    如何设计网页才能让用户有“参与感”?

    编者按:参与感一词最近很火,也是打动用户一个非常有效的表现手法,今天阿里的同学从这个角度聊聊如何设计网页,利用空间法则、抽象法则和换角度法则给用户更多的愉悦感和融入感,非常有料的一篇教程,来涨姿势吧。
    如何做好O2O营销?

    如何做好O2O营销?

    很多时候,所谓的O2O只是创业者吹捧出来的概念,似乎只要产品跟线上线下都沾点边,就以为自己已经处在当下流行火爆的O2O行业了,其实O2O只是国人构造出来的概念,在它被正式提出之前,我们身边就已经有了O
    2014年创业趋势 预测中的反思与憧憬

    2014年创业趋势 预测中的反思与憧憬

    2014年,《创业邦》首次邀请几位有独到见解的业内人士撰稿,用他们的语言描述新一年的创业趋势,与美国《Entrepreneur》的内容共同组成了2014创业趋势专题。  对比2013年,他们提到了颠覆
    中小企业搜索营引擎营销解决方案概述

    中小企业搜索营引擎营销解决方案概述

    2012年双十一支付宝交易额191亿元,2013年双十一支付宝交易额351亿元,随着互联网的发展,电子商务不断成熟,促使更多的企业转型做网络营销。也有人说网络营销不是企业想不想做的问题,而是想生存就必
    一个菜鸟SEOer对白帽和黑帽SEO的理性思考

    一个菜鸟SEOer对白帽和黑帽SEO的理性思考

    这个世界似乎总有一些东西是对立的,白帽SEO和黑帽SEO,虽然同是SEO,但它们的本质却大不相同,相信从事网络营销的人都知道白帽和黑帽的含义,白帽SEO是通过优化网站和提高用户体验,来获得搜索引擎好感
    苍井空做自有品牌内衣电商,带来什么启发?

    苍井空做自有品牌内衣电商,带来什么启发?

    导读:苍井空几个月前就放出风声要自制品牌内衣,5月,其绑定的品牌Spakeys的空系列限量首发转眼间售罄。    苍井空几个月前就放出风声要自制品牌内衣,5月,其绑定的品牌Spakeys的空系列限量首
    8868手游交易平台成功揭秘:为用户创造核心价值

    8868手游交易平台成功揭秘:为用户创造核心价值

    8868,太快太安全是国内领先手游交易平台-8868手游交易平台响亮的口号。自2013年上线以来得到了广大手游玩家的喜爱,而且聚集了了诸多游戏开发商、发行商和渠道商的知识。2015年3月8868交易平
    浅谈利用分类信息平台推广产品的六步法则

    浅谈利用分类信息平台推广产品的六步法则

    网络推广归根结底是流量的推广,谁占有了流量,谁就占领了市场,因此,每一个高流量的平台都可以作为我们的用武之地,如问答平台、QQ群、博客、人群论坛、贴吧、人人网、开心网、QQ空间,每一个有流量的地方都积
你是怎么知道非凡网赚网的?
  •   
  • 联系QQ 邮箱:976382653@qq.com 微信:976382653
    在线留言
    发布软文
    广告自助购
    文章调用
    常见问题
    保存到桌面