web-dev-qa-db-ja.com

URLコード付きのプライベート公開ページを表示する(ログインは不要)

目標は、レビューや承認のためにページ/投稿の最終ドラフトへの単一のURLを提供することで、関係するすべてのプロジェクトスタックホルダーのユーザーログイン/アカウントを必要とせずに、大規模なエンティティ/クライアントがコンテンツを簡単にレビューできるようにすることです。

私たちは人々がユニークなURLから "個人的に公開された"ページを見ることを可能にするプラグインを作りたい/見つけたい...それはあなたがwww.somewebsiteのようなプライベートコードリンクを送ることができるdropboxのようなファイル共有サービスのよう.com /?page = 76&code = an30f90sk30ifkas0fsd9f9sf ...

あなたがこのコードを持っていてそれが正しいなら、あなたはページを見るためにウェブサイトにログインする必要はありません。ページが非公開に設定されて公開されると、ユーザーが/ etcを確認するためにそれをコピーして貼り付けることができる公開「リンク」が表示されます。

私たちはこれを実行するプラグインを見つけることができなかったので、何かを構築したいのですが、見たいかもしれない方向オプションや機能に関するアドバイスを得たいと思います。

1
Amber Lynn

実際には、組み込みのページ/投稿パスワード機能をフックして、ページ/投稿パスワードに一致するURLパラメータをチェックするように設定してから、$requiredの値をfalseに変更することができます。

add_filter( 'post_password_required', 'my_allow_url_param', 10, 2 );

function my_allow_url_param( $required, $post ) {

    if ( empty( $post->post_password ) ) {
        $required = false;
         return $required;
    }

    if ( $_GET['code'] == $post->post_password ) {
       $required = false;
    }
    return $required;
}

スラッグが/sample-page/のページがあり、そのページの編集画面の表示設定で管理者がCf5aTgZqBz5h6g1y858eQmpTWizzHzZNのパスワードを設定している場合は、ログインまたはパスワードを入力せずに次のURLにアクセスできます。

http://sitename.com/sample-page/?code=Cf5aTgZqBz5h6g1y858eQmpTWizzHzZN

0
hwl