タグ付けされた質問 「draft」

12
公開されたページまたは投稿の改訂を起草する方法はありますか?どのような回避策を使用しましたか?
すでにページまたは投稿を公開したとします。私は今、変更を加えたいのですが、同僚がライブに移行する前にそれらをチェックしたいです。これを行う方法はありますか? 編集:これは現時点では不可能であり、私が興味を持っている創造的な回避策です。 現在作業中のサイトには、主要なコンテンツの変更/追加を作成するための別のパスワード保護された「ステージング」サイトもあり、承認されると、ライブサイトにコピーアンドペーストします。誰かが同様の方法を使用しているかどうか疑問に思っていますが、おそらくライブサイトへの「プッシュ」を自動化しましたか? 私はこの質問を知っています:dev / stagingとproductionの間のデータベース同期ですが、それは個々のページや投稿ではなく、データベース全体の大規模な同期についてです。 回避策のためのいくつかの追加のアイデアを試してみるために、今は賞金を提供しています。
38 draft 


6
誰でもドラフト投稿にアクセスできるようにするにはどうすればよいですか?
Wordpress Webサイトに未公開の投稿がいくつかあり、通常の投稿スラッグ(site.com/post-here)を使用して、通常のユーザー(ログインしていない)がアクセスできるようにしています。私はそれがベストプラクティスではないかもしれないことを理解していますが、私の特別な目的のために、これを行う必要があります。 functions.phpファイルに次のコードスニペットを追加しようとしました。 function enable_view_drafts() { $role = get_role( 'subscriber' ); $role->add_cap( 'read_private_posts' ); $role->add_cap( 'edit_posts' ); } add_action( 'after_setup_theme', 'enable_view_drafts'); のinit代わりにフックも試しましたafter_setup_theme。運がありません。 私の理解では、ロールへの変更はデータベースに保存されるので、一度だけ行う必要があります。そのためafter_setup_theme、フックを使用して関数を呼び出しています。 しかし、通常のユーザーとしてページにアクセスしようとすると、投稿コンテンツを表示する代わりに404ページが表示されます。プレビューURL(site.com/?p=212&preview=true)の読み込みも試みましたが、どちらも機能しませんでした。 これらは私の推測です: 通常のユーザーはcaps下書きの投稿を読むのに十分ではありません。 フロントエンドで下書きの投稿をテストおよび表示することは、ユーザー(管理者を含む)にはできません。 私がやろうとしていることを達成するために、どのような変更を加える必要がありますか?それが不可能な場合、どのような代替ソリューションを提案しますか? 注:プラグインベースのソリューションは探していません。

2
ドラフト投稿プレビューを取得するためにwp_remote_getで現在のCookieを渡す
現在のユーザーCookieをwp_remote_get関数に渡して、ドラフト投稿プレビューページのコンテンツを取得します。 私はすでに質問をチェックします: 現在の投稿のプレビューの本文を読み込むために、どのURLをwp_remote_getに渡しますか? 認証付きでwp_remote_getから「プレビュー投稿」を呼び出すにはどうすればよいですか? しかし、どちらにも、Cookieを取得してwp_remote_get関数に渡す方法を示しています。 Cookieをwp_remote_get関数に渡すことができると思いますが、WordPressのドキュメントでは、WordPressがCookieを保存する方法を説明していますが、Cookie名にハッシュ値を使用するように注意するにはどうすればよいですか? 私がやりたいのは、投稿IDを指定して、WordPress投稿ビューページのコンテンツを取得して分析することです。既に公開されている投稿はすべて正常に機能しますが、ドラフト投稿の場合、ページが存在しないことがわかります。簡略化したコードは次のとおりです。 (...) $post_permalink = get_permalink($post_id); $response = wp_remote_get($post_permalink); $whole_post_page = $response['body']; (...) このコードは投稿の所有者が編集しているときに実行されるため、ユーザーはすでに認証されており、リクエストはローカルの投稿に対するものです。wp_remote_getがポストプレビューページのコンテンツを返すようにするにはどうすればよいですか?ブラウザでプレビューリンクに移動したときにWordPressが行うように。 よろしくお願いします。
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.