当前位置:首页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:二次  二次开发  开发  教程  手记  站点  用户  用户数  户数  数据  
  • 相关搜索
图片推荐
    百度站长平台:网站改版工具帮助

    百度站长平台:网站改版工具帮助

    网站改版的注意事项  当您的网站进行改版,为保证新资源及时被收录、索引量和展现效果不出现大幅波动,我们建议步骤如下:  首先使用301跳转将所有页面进行重定向,系统发现后会逐步进行新旧替换;  再来百
    建站需要不限流量虚拟主机吗?

    建站需要不限流量虚拟主机吗?

    虚拟主机空间是很多中小企业和个人建站比较不错的选择,很多用户在购买虚拟主机时要考虑很多因素,其中就包括磁盘空间大小、流量限制等配置。有站长朋友曾问小编:虚拟主机不限流量好不好?建站需要不限流量虚拟主机
    内容营销大忌之-自恋的代价

    内容营销大忌之-自恋的代价

    内容营销是个很宽泛的话题,不是三言两语能够说清楚的,也不是三两个人就可以搞定的。内容营销对一个公司来说是全公司上下的事,而不仅仅是营销部门的事。  今天开始对内容营销的话题进行分解,首先从禁忌开始。今
    动态文章页面高效排名的实战密码

    动态文章页面高效排名的实战密码

    做SEO一般情况分为两种,一种就是站内建设,还有一种就是站外建设。当然站外建设一般情况下就是外链、友链了,站内肯定注重的是网站结构和文章质量。今天给大家分享一下在SEO届来说并不看好的优化技术,为了证
    微信发布新版本:群聊能收钱 拉人需群主确认

    微信发布新版本:群聊能收钱 拉人需群主确认

    10月26日消息,微信发布新版本6.3.28,对群功能进行了两项功能升级。    一是群主可启用需群主确认才能邀请朋友进群功能。微信群群主可在群详情页的群管理选项中,开启此项功能。开启此项功能后,群主
    Apple Watch和Apple Pay让苹果拥有更大机会

    Apple Watch和Apple Pay让苹果拥有更大机会

    在今年的WWDC大会上,苹果向外界公布了未来一年这家公司在计算机、智能手机和智能手表领域的软件路线图计划。让人失望的是,除了新的订阅音乐服务外,苹果在将近2个半小时的演讲中,并没有带来新产品的发布和提
    怎么让搜索引擎喜欢上我们的网站

    怎么让搜索引擎喜欢上我们的网站

    小编优化自身公司网站大概也有两个月的时间了,从一个新站到所有主要的关键词排名到百度首页,也付出了很多的汗水以及艰辛,从这两个月的数据来看,小编官网整体还是很符合搜索引擎的喜好。也算成功的勾搭上了百度搜
    分析:京东SEO比淘宝SEO做得好的理由

    分析:京东SEO比淘宝SEO做得好的理由

    大家都知道的网购平台(京东、淘宝),这么大的网购平台根本不把百度放在眼里,有去分析的站长都清楚,这两家都屏蔽了搜索引擎抓取,品牌摆在那里,用户自然来,流量就不是事。以下从笔者的角度,分析京东SEO为何
你是怎么知道非凡网赚网的?
  •   
  • 联系QQ 邮箱:976382653@qq.com 微信:976382653
    在线留言
    发布软文
    广告自助购
    文章调用
    常见问题
    保存到桌面