時限的な更新を投稿する必要がある場合があります。たとえば、期間限定のオファーを宣伝したり、特別な告知を共有したりしたい場合があります。
これを行うと、誰がこのコンテンツをいつまで表示するかを管理することが重要になります。
良いニュースは、WordPress を使用すると、投稿または投稿の一部を簡単に期限切れにできることです。これにより、WordPress サイトは自動的に最新の状態に保たれ、古い投稿に悩まされることはなくなります。
この記事では、WordPressで投稿または投稿コンテンツの一部を簡単に期限切れにする方法を説明します。

WordPressで投稿または投稿コンテンツの一部を期限切れにする理由
特定のユーザーに、特定の期間、サイトの限定コンテンツへのアクセス権を付与したいとしましょう。
一般的に、投稿を特定の時間に公開するようにスケジュール設定し、後で期限切れになったという古い投稿通知を追加することで更新できます。

ただし、これではアクセス制御はできません。その間は、誰でもコンテンツを表示およびアクセスできます。
アクセス制御が必要ない場合でも、特定の時間に手動で変更を行う必要があります。
では、プロセス全体を自動化できたらどうでしょうか?例えば、ブログ記事の有効期限を設定し、その日付以降にどうなるか、誰がアクセスできるかを定義できます。
次のセクションでは、WordPressで投稿やコンテンツの一部を簡単に期限切れにするための2つの異なるアプローチを検討します。
最初の方法は、より多くの制御を提供し、コンテンツから収益を得ることができます。一方、2番目の方法は、アクセス制御や収益化オプションを提供しませんが、有効期限が切れた後にコンテンツを変更できます。
特定の方法に興味がある場合は、リンクをクリックして記事の該当箇所にスキップできます。
準備はいいですか?始めましょう。
方法 1. MemberPress で投稿と投稿コンテンツの一部を期限切れにする
この方法は、初心者でも経験豊富な専門家でも、すべてのユーザーにおすすめです。
ここでは、コンテンツの期限切れやウェブサイトへのアクセス制御のための強力なツールを提供する、MemberPress、つまり最高のWordPressメンバーシッププラグインを使用します。

MemberPressを使用すると、会員プランを販売し、有料ユーザーのみにコンテンツを公開できます。さらに、ドリップコンテンツを設定して、コンテンツを段階的に自動リリースし、指定期間後に期限切れにすることもできます。
よろしいですか?設定方法を見てみましょう。
1. MemberPressの設定
まず、MemberPress プラグインをインストールして有効化する必要があります。詳細な手順については、WordPressプラグインのインストール方法に関するステップバイステップガイドをご覧ください。
有効化したら、 MemberPress » 設定 に移動し、「ライセンス」タブをクリックしてライセンスキーを入力してください。この情報は、MemberPress ウェブサイトのアカウントで見つけることができます。

ライセンスキーをコピーして貼り付け、「ライセンスキーをアクティブ化」ボタンをクリックするだけです。
その後、「支払い」タブに切り替えて、支払い方法を設定できます。

デフォルトでは、MemberPress は Stripe と PayPal の決済ゲートウェイをサポートしています。
ドロップダウンから支払いプロバイダーを選択し、画面の指示に従ってセットアップを完了してください。

2. 会員プランの作成
次に、ウェブサイトのメンバーシッププランを作成する必要があります。
これを行うには、MemberPress » Memberships ページに移動し、上部にある「新規追加」ボタンをクリックします。
次の画面で、この会員プランのタイトルを入力し、投稿エディターでプランの詳細を提供できます。「会員規約」セクションで、このプランの価格設定と有効期限を設定する必要があります。

または、価格をゼロに設定して無料プランを作成することもできます。変更を保存するには、「公開」ボタンをクリックすることを忘れないでください。
3. 期限切れコンテンツへのアクセスルールの作成
会員プランの設定が完了したので、次のステップはアクセスルールの作成です。
アクセスルールを使用すると、ユーザーに表示させたいコンテンツを制御できます。このためには、MemberPress » Rulesに移動し、上部にある「新規追加」ボタンをクリックします。

次の画面で、「保護されたコンテンツ」オプションの下に保護したいコンテンツを選択します。
タグ、カテゴリー、特定の投稿またはページ、投稿またはページのコンテンツの一部などでアクセスを制限できます。

その下に、アクセス条件を選択する必要があります。
例えば、上記の例では、無料トライアルタグが付いたすべてのコンテンツを保護し、無料メンバーにアクセスを許可しました。
次に、「Drip/Expiration」セクションまでスクロールダウンします。ここで、コンテンツを表示または期限切れにするタイミングを選択できます。

例えば、無料プランにユーザーがサインアップしてから30日後にこのアクセスを期限切れにするように設定しました。
このコンテンツをドリップ配信したい場合は、「Dripを有効にする」オプションにチェックを入れてください。その後、このコンテンツがユーザーにいつ表示され、いつ期限切れになるかを選択できます。

最後に、設定を保存するために「保存」ボタンをクリックすることを忘れないでください。
4. 期限切れコンテンツの準備
さて、設定したルールに基づいて、期限切れにしたい投稿やページを編集し、保護されるように設定するだけです。
例えば、「無料トライアル」というタグが付いたすべてのコンテンツを保護するルールを設定しました。
そのルールでコンテンツを保護するには、期限切れにしたい投稿またはページに「free-trial」タグを追加する必要があります。

アクセスルールと一致するコンテンツの有効期限が切れるか保護されることを確認したら、変更を保存または公開できます。
すべてが機能していることを確認するために、シークレットモードで投稿またはページを訪問することを忘れないでください。ログアウトしたユーザーとしてページまたは投稿を訪問することで、投稿コンテンツの代わりにログインフォームが表示されます。

ユーザーアカウントがコンテンツの有効期限切れルールを満たすと、そのコンテンツを表示できなくなります。
5. コンテンツの一部を期限切れにする
MemberPressでは、投稿またはページの一部コンテンツを期限切れにすることもできます。これは、投稿全体またはページ全体を期限切れにするのではなく、特定のセクションまたは投稿/ページのパーツを一定時間後にアクセス不能に設定できることを意味します。
部分的なコンテンツの有効期限を作成するには、MemberPress » Rules に移動し、「新規追加」ボタンをクリックします。

次に、「保護されたコンテンツ」オプションの下で「部分的」を選択します。
次に、このルールを適用する条件を選択します。たとえば、「無料メンバー」プランに登録したユーザーにのみ適用したいとします。

条件を選択した後、「Drip/Expiration」セクションまでスクロールできます。
ここから、このアクセスルールをいつ無効にするか、または利用可能にするかを設定できます。

最後に、「ルールの保存」ボタンをクリックして設定を保存します。
有効期限のあるコンテンツを追加したい投稿またはページを編集できるようになりました。投稿のエディターに、「Protected」ブロックを追加するだけです。

「保護」ブロック内には、非会員に非表示にしたいコンテンツや、期限切れにしたいコンテンツを追加できます。
専門家のアドバイス: 「Protected」ブロック内には、任意のブロックを使用できます。これは、ブロックエディターの「Groups」ブロックと同様に機能します。

コンテンツを追加した後、このブロックのアクセスルールを設定する必要があります。
右側のパネルのブロック設定を確認してください。ここから、「アクセスルール」セクションを見つけて、先ほど作成した「部分」ルールを選択します。

ルールを選択した後、「許可された場合」オプションの下で「表示」を選択しましょう。
これは、ユーザーが上記の「ルール」で選択した条件に一致する場合に、保護されたブロック内のコンテンツを表示するようにMemberPressに指示します。
エディターで「更新」または「公開」をクリックし、シークレットブラウザタブで投稿またはページを表示できるようになりました。

上記のスクリーンショットから、プラグインにログインフォームが表示されず、投稿コンテンツが制限されている、または期限切れのコンテンツが含まれていることを示す手がかりがないことに気づくはずです。
変えましょう。
戻って投稿を編集し、今回は、最初に追加した「保護済み」ブロックの上に別の「保護済み」ブロックを追加してください。
ブロック設定の下にある「部分的」アクセスルールを選択します。今回は、「許可された場合」オプションの下で「非表示」を選択します。

このブロックは、ログインしていないユーザーおよびアクセスルールに一致しないユーザーに表示したいと考えています。
これで、このコンテンツが保護されており、続行するにはアカウントにログインする必要があることをユーザーに知らせるヒントを追加できます。

その後、「Login」ブロックを追加することもできます。
変更に満足したら、「更新」または「公開」をクリックしてください。
これで、新しいブラウザタブでこの投稿にアクセスして、アクセスルールが機能していることを確認できます。

ログインしていないユーザーには、ログインフォームとともにカスタムメッセージが表示されます。
ユーザーはアカウントにログインでき、コンテンツがまだ期限切れになっていない場合は、それを見ることができます。

方法2. PublishPressで投稿コンテンツを期限切れにする
この方法では、強力なアクセス制御機能や有料メンバーシップの設定はできません。しかし、WordPressで投稿を簡単に期限切れにしたり、特定の日付後に投稿コンテンツを変更したりすることはできます。
これを行うには2つの方法があります。最初の方法では、投稿を期限切れにし、期限切れに関する通知を表示することしかできません。2番目の方法では、期限切れの日付の前後にコンテンツを変更できます。
WordPressでPublishPress Futureを使用して投稿を期限切れにする
特定の時間後に投稿を期限切れにしたい場合に、この方法を使用できます。
まず、PublishPress Future プラグインをインストールして有効化する必要があります。詳細については、WordPress プラグインのインストール方法に関するステップバイステップガイドをご覧ください。
PublishPress Proのメンバーは、会員資格の一部としてFutureプラグインにアクセスできます。
有効化したら、WordPress管理画面のサイドバーにある「Future」メニュー項目をクリックする必要があります。これにより、プラグインの設定ページが表示されます。

このページでは、プラグインのデフォルト設定を使用できます。これには、日付と時刻の形式、デフォルトの有効期限の期間、有効期限のカテゴリ、およびメール通知が含まれます。
これらの設定を確認し、必要に応じて変更できますが、これらのデフォルト設定はほとんどのユーザーにとって機能します。
次に、「表示」タブに切り替えて、「投稿フッター表示」オプションを有効にします。その下に、期限切れ間近の投稿に対してプラグインが表示するテキストが表示されます。

その後、「投稿タイプ」タブに切り替えることができます。ここでは、投稿、ページ、その他の投稿タイプに対して実行したいデフォルトのアクションを選択できます。
その投稿タイプで機能が利用可能になるように、「アクティブ」の横にあるラジオボタンをクリックしてください。

最後に、「変更を保存」ボタンをクリックして設定を保存することを忘れないでください。
これで、期限切れにしたい投稿またはページを編集できます。投稿編集画面の「投稿」パネルの下に、新しい「PublishPress Future」タブが表示されます。

まず、「投稿の有効期限を有効にする」オプションの横にあるチェックボックスをオンにします。次に、この投稿の有効期限の日時を選択します。
「有効期限の設定方法」セクションでは、投稿の有効期限が切れたときに実行したいアクションを選択できます。いくつかのオプションがあります。
下書きとして投稿を設定したり、カテゴリーを変更したり、新しいカテゴリーを追加したり、投稿を固定または解除したり、その他多くのことができます。
このチュートリアルでは、「カテゴリ:置換」オプションを選択し、置換カテゴリを「アーカイブ済み投稿」に設定します。
変更に満足したら、「更新」または「公開」をクリックできます。新しいブラウザタブでそれを開き、フッターに投稿の期限切れに関する通知が表示されることを忘れないでください。

投稿が期限切れになると、プラグインは設定されたアクションを実行します。たとえば、この例では、投稿を「ビジネス」カテゴリーから「アーカイブ済み投稿」に移動します。
2. PublishPress Revisionsで投稿コンテンツまたは一部コンテンツを期限切れにする
前の方法とは異なり、このアプローチはより柔軟性があります。
基本的に、設定されたスケジュールで自動的に公開される投稿のバージョンを2つ以上作成できるようになります。
まず、PublishPress Revisions プラグインをインストールして有効化する必要があります。詳細については、WordPress プラグインのインストール方法のステップバイステップガイドを参照してください。
PublishPress Pro メンバーは、サブスクリプションの一部としてこのプラグインにもアクセスできます。
有効化したら、**投稿 » 全投稿** に移動し、期限切れにしたい投稿を見つけます。マウスを投稿タイトルに移動し、「新規リビジョン」リンクをクリックします。

プラグインは投稿のドラフトを複製し、投稿エディターで開きます。
ここから、投稿の変更を行うことができます。たとえば、この投稿が期限切れであることを示す通知を追加できます。

同様に、有効期限後にコンテンツの一部を別のものに置き換えることもできます。
たとえば、この記事にあったダウンロードボタンは、このダウンロードは利用できなくなったというテキストに置き換えられました。

編集が完了したら、「投稿」設定の下にある「公開」オプションの横にある「すぐに公開」ボタンをクリックできます。
その後、画面にカレンダーが表示されます。

ここから、古い投稿が期限切れになり、新しい下書きに置き換えられる日時を設定できます。
スケジュールされた日時を設定したら、リビジョンを保存する準備ができました。

次に、「送信」ボタンをクリックすると、下書きがレビューのために送信されます。実際にスケジュールされる前に承認される必要があります。
ただし、ウェブサイトにコンテンツを公開する責任があり、他の誰からの承認も必要ない場合は、「承認」ボタンをクリックするだけで続行できます。

プラグインは、指定した時間に公開されるこのリビジョンをスケジュールできるようになります。
その後、下書きのプレビューを表示するためにリダイレクトされます。
画面の上部には、この下書きが公開される日時を示す通知バーが表示されます。

詳細については、WordPress でコンテンツ更新を自動的にスケジュールする方法に関するチュートリアルをご覧ください。
これで完了です!この記事が、WordPress で投稿または投稿コンテンツの一部を簡単に期限切れにする方法を学ぶのに役立ったことを願っています。次に、公開されていない投稿の公開プレビューを許可する方法や、WordPress で投稿シリーズを効率的に管理する方法に関するガイドも参照してください。
この記事が気に入ったら、WordPressのビデオチュートリアルについては、YouTubeチャンネルを購読してください。 TwitterやFacebookでもフォローできます。

Jazzper
どうやらこのプラグインは開発者によってサポートされなくなっているようです。サポートされている、投稿を期限切れにするプラグインはありますか?
WPBeginnerサポート
代替案を探し、見つかり次第この記事を更新します。
管理者
Andreas S
こんにちは!ショートコードを使って、ページ全体に限定コンテンツを配置できるプラグインをご存知ですか?私は様々なオンラインストアを運営しており、限定オファーが頻繁にあります。すべてのストアのデータベースがあれば便利です…ストア1、ストア2、ストア3…。そして、すべてのストアにストア固有のショートコードを適用します…そして、キャンペーンが出るたびに変更できる日付付きのテキスト部分のデータベース…説明が非常に悪くてすみません…。Timed Contentプラグインを試しましたが、私の望むようには機能しませんでした。
WPBeginnerサポート
再利用可能なブロックを使用したいようですね。それらの使用方法については、こちらのチュートリアルをご覧ください:https://www.wpbeginner.com/beginners-guide/how-to-create-a-reusable-block-in-wordpress/
管理者
Syaifuddin
Hello,
特定の期間後にWPがすべての投稿を自動的に下書き状態にできるソリューションを探しているときに、この投稿に偶然出会いました。たとえば、1月1日に投稿を公開した場合、1月31日に自動的に公開停止(ステータスが下書きまたは期限切れに変更)されます。投稿が3月4日に公開された場合、5月5日に期限切れになります。
この機能が必要なのは、購読者に許可された時間内に投稿を読んでもらい、その後フロントエンドから非表示/公開停止にしたいからです。
お願いします。
WPBeginnerサポート
あなたがお求めのことによると、記事中のプラグインを使用することになるでしょう。
管理者
デビッド
WPbeginnerさん、こんにちは。今すぐこれを実行するにはどうすればよいですか?記事のプラグインは2年以上更新されていません…
Stacey
@David、これを行うための更新された方法を見つけましたか? 廃止されたプラグインを使用せずに投稿を期限切れにする方法を探しています!
WPBeginnerサポート
他のプラグインオプションも確認しますが、現時点ではプラグインは引き続き機能するはずです。
管理者
Stacey
何日もこのプラグインを機能させようとしましたが、できませんでした。「WP Content Scheduler With Range」というプラグインを見つけました。放棄されたプラグインを試しても、これが機能させることができた唯一のものです。
アンドリュー・ノートン
このプラグインは夢のように機能しますが、ウィジェット内の投稿についても同じことや機能が必要なのですが。何かアイデアはありますか?
Thembelani
こんにちは。WordPressのページからJSON形式でコンテンツをURL経由で取得するモバイルアプリを構築しようとしています。WordPressのページは、Advanced Custom Fieldsを基盤構造として使用しています。これまで試したコンテンツ有効期限プラグインのどれも、このページでコンテンツを表示/非表示にすることができません。
何か提案はありますか?
Yazmin
Post Expirator の新しい代替手段はありますか?突然サイトで機能しなくなり、それに大きく依存しています。
ありがとうございます!
Michaelsbote
残念ながら、The Post Expirator は WP 4.4.2 では動作しません。
John Bowden
動作しなくなったプラグインをPost Expiratorに置き換えました。私のサイトでうまく機能しています。ありがとうございます!
ジョージ・パル
マルチサイト環境でPost Expiratorプラグインをテストしました。
プラグインは動作しません。
有効化するとすぐに、PHPメッセージが表示されます:
厳格な基準: Walker_PostExpirator_Category_Checklist::start_lvl() の宣言は Walker::start_lvl(&$output, $depth = 0, $args = Array) と互換性がある必要があります。 /volume1/web/wp-content/plugins/post-expirator/post-expirator.php の 0 行目
厳格な基準: Walker_PostExpirator_Category_Checklist::end_lvl() の宣言は Walker::end_lvl(&$output, $depth = 0, $args = Array) と互換性がある必要があります。 /volume1/web/wp-content/plugins/post-expirator/post-expirator.php の 0 行目
厳格な基準: Walker_PostExpirator_Category_Checklist::start_el() の宣言は Walker::start_el(&$output, $object, $depth = 0, $args = Array, $current_object_id = 0) と互換性がある必要があります。 /volume1/web/wp-content/plugins/post-expirator/post-expirator.php の 0 行目
厳格な基準: Walker_PostExpirator_Category_Checklist::end_el() の宣言は Walker::end_el(&$output, $object, $depth = 0, $args = Array) と互換性がある必要があります。 /volume1/web/wp-content/plugins/post-expirator/post-expirator.php の 0 行目
それ以外に、WordPressバックエンド管理のメタボックスがレスポンシブレイアウトを壊します。こちらとこちらで意味するところを確認してください。
Leslie Nicole
ありがとうございます!アーカイブが古い投稿で散らかってしまうので、「ニュース」を投稿することにためらっていました。このプラグインは本当に便利だと思います!