当前位置:首页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:二次  二次开发  开发  教程  手记  站点  用户  用户数  户数  数据  
  • 相关搜索
图片推荐
    金融超市网理财返利投资额破亿 100万红包任性送!

    金融超市网理财返利投资额破亿 100万红包任性送!

    最新消息,知名p2p网贷返利平台金融超市网投资额成功突破 1 亿大关,这对于金融超市网来说具有里程碑式的意义,为了庆祝这一历史性的一刻,金融超市网推出特别活动,拿出 100 万红包倾情回馈投资人。目前
    谷歌入华传闻背后:市场格局已定 或水土不服

    谷歌入华传闻背后:市场格局已定 或水土不服

    [摘要]应用商店将是谷歌重返中国大陆市场的第一步,9月24日在华召开发布会。  腾讯科技 梁辰 9月22日报道  Google Play这次真的要进入中国了吗? 一位谷歌(微博)应用开发者日前在论坛上
    口碑传播到底该咋做?知乎创始人说有五大秘诀

    口碑传播到底该咋做?知乎创始人说有五大秘诀

    知乎创始人周源在一篇文章中深度揭秘了知乎五年来是如何从0到1,如何成为知识青年频繁使用的问答社区的,文章中提到一些有趣答案,或许对你有帮助。  ?博客这种产品为什么会衰败?  ?信息再组织会产生什么样
    浅谈:为什么你的企业网站不盈利

    浅谈:为什么你的企业网站不盈利

    越来越多的企业开始关注网络营销,但是普遍认为做一个网站就是网络营销了,于是花了不少钱,请专业的公司做企业站;某老板花1.5万做企业站,本着羡慕的眼神去瞧了瞧,结果大跌眼镜,和1-2千块的企业站没区别,
    假如维权的不是六六王思聪 京东还会那么快道歉吗?

    假如维权的不是六六王思聪 京东还会那么快道歉吗?

    维权  作家六六在京东买到烂水果,拒绝和解,只要公平。事后王思聪发微博称京东泄露其隐私至今没有给出回应,同时力挺六六。昨天,@京东发言人微博发布了一封对王思聪的道歉信。根据道歉信内容,该事件起源于第三
    网络营销策划三大核心要素之策略为纲

    网络营销策划三大核心要素之策略为纲

    企业做好网络营销的核心是什么?推广、网站、转化率、销售、文案、产品、SEO都没错!在具体的企业遇到的具体网络营销工作中,这都是问题,但这都不是根本。根本原因在于没有系统的看待网络营销,没有一种策略去统
    低成本推广:不烧钱的价格战怎么打?掌握供应链与物流

    低成本推广:不烧钱的价格战怎么打?掌握供应链与物流

    导语:从零售业开始起来,价格上的优劣就决定了某个零售商的最终命运,价格战也就成了零售业永恒不变的主题。价格战的本质其实就是供应链的能力。    价格战是零售商永恒的话题,即使在互联网零售时代亦是如此。
    网站首页如何设计?看建站宝盒网站模板给你支招!

    网站首页如何设计?看建站宝盒网站模板给你支招!

    网站首页是企业网站的门面,网站首页设计的好与坏,直接影响到用户对企业的第一印象,甚至决定了用户是否继续浏览企业网站。所以,网站首页的设计往往很重要。网站首页该如何设计呢?一起来看看建站宝盒的网站模板是
你是怎么知道非凡网赚网的?
  •   
  • 联系QQ 邮箱:976382653@qq.com 微信:976382653
    在线留言
    发布软文
    广告自助购
    文章调用
    常见问题
    保存到桌面