Unique one time use URL

时间:2019-06-04 作者:estedog

我一直在寻找解决问题的方法,但已经发布的帖子并没有满足我的要求,或者我只是没有足够的资格来解决这个问题。以下是我需要的:

我有一个带有表单的简单登录页。我需要的是一种为我选择的人创建唯一url的方法,这样只有他们才能访问此网站并填写表单。URL必须仅在7天内处于活动状态,一旦使用,将立即停用。唯一的URL应该工作很长时间,这意味着我可以同时生成多个URL。

解决此问题的另一种方法是生成许多密码,我可以将这些密码发送给我选择的人。同样的故事–每个密码都是唯一的,只能使用一次。页面受密码限制,当用户输入密码时,页面将不再处于活动状态。

除此之外,最好的补充是-在发送表单时停用/过期URL/访问者访问权限<;-但这不是必要的。

我真的不是那种只想在银盘上给他解决问题的人,但现在……我背靠着墙,根本没有时间。非常感谢您的帮助。非常感谢。

2 个回复
SO网友:Ben Casey

可以使用添加设置add_option( \'access_keys\', [ \'key_1\', \'key_2 ] ) 加载页面时检查。

add_action( \'init\', \'wpse339612_check_access_codes\' );
function wpse339612_check_access_codes(){

    if( isset( $_GET[\'key\'] ) ){

        $available_keys = get_option( \'access_keys\' );

        $key_index = array_search( filter_var( $_GET[\'key\'], $available_keys );

        if( $key_index !== false ){

             /*User has access! Delete the key from the available keys*/
             unset( $available_keys[$key_index] );
             update_option( \'access_keys\', $available_keys );

        }

    }

}
然后每当用户点击https://yoursite.com?key=key_1 他们将获得访问条件,并从数据库中删除密钥。

SO网友:brothman01

这个页面是他们付费访问的吗?为什么一次访问它如此重要?他们可以访问任意次数,但只能访问一天吗?(我知道这是一条评论,但我没有足够的声誉发表评论,所以请版主将此移到评论中?谢谢。)

相关推荐

Wordpress Permalinks

我在最近建立的网站上使用Wordpress Sydney主题。如果我将永久链接更改为post选项,我的网页链接将中断。对于不是技术大师的人来说,有没有简单的方法来解决这个问题。任何(详细的)帮助都将不胜感激。