Randomize access to post

时间:2015-02-10 作者:ablev

我想让我的用户在注册时随机访问某些帖子,然后每周随机访问一次以前没有访问过的其他帖子。

以下用户今天注册

下周,UserA可以访问post1
用户B有权访问post21
UserC被授予访问post7的权限。

我不知道该如何开始,但如果有人能给我指出正确的方向,那就太棒了。

1 个回复
SO网友:Privateer

如果我做这样的事,我会做如下的事情

确定如何判断人们可能通过自定义字段访问哪些帖子。

存储用户拥有其访问权限的帖子的用户元数据

写一个快速类(或几个函数)来处理(a)收集他们已经被授予的帖子列表,获取所有潜在的帖子(不包括他们有权限的帖子),随机挑选剩余的帖子中的一个,授予他们访问权限,然后授予他们访问权限。

例如。。。

1) 创建一个名为\\u members\\u randomy\\u allowed的自定义贴子元,并在每个成员可以访问的贴子上将其值设置为1

然后可以通过meta\\u键使用WP\\u查询来提取整个列表

2) 确定保存的数据将位于名为\\u memebers\\u random\\u access的每个成员的数组中

然后可以使用get\\u user\\u meta读取成员的任何现有meta

3) 编写一个函数,授予他们对尚未授予访问权限的随机帖子的访问权限

function grant_user_random_access( $user_id ) { ... };
4)向新用户注册挂钩添加操作,以授予他们访问某些内容的权限

5) 使用每周运行一次的wp\\u cron抓取所有用户并授予他们每个人对新帖子的随机访问权限

显然,有更干净的方法来做这样的事情,但上述方法会奏效。

结束

相关推荐

函数使用GET_POSTS(),当从函数调用时Tax_Query不起作用。php

我想获得分类法“类型”中所有“带”的数组,然后在其他函数等中使用该数组utilities.php 文件,我require() 在里面functions.php 它有以下函数定义,并在之后立即调用:function get_all_bands() { $bands = get_posts(array( \'post_type\' => \'model\', \'posts_per_page\' => -1,