WordPressで投稿の有効期限で投稿を並べ替える方法

過去には、WordPressで投稿を期限切れにする方法Post Expirator Pluginを使用して共有してきました。イベントリスティングサイトを作成する際に、このプラグインが非常に役立つことがわかりました。期限切れのイベントリスティングを簡単に削除できます。次に、このプラグインのおかげで、投稿の期限切れ日で投稿を並べ替えることも非常に簡単です。この記事では、WordPressで投稿の期限切れ日で投稿を並べ替える方法を説明します。

カスタムフィールドの名前が変更されたプラグインの変更を反映するようにコードを更新しました。コメントで教えてくれたTajimさんに感謝します。

私たちの特定のプロジェクトでは、カスタム投稿タイプとしてイベントがありました。これは月に1回程度イベントを開催する非営利団体向けなので、イベントページに入れるループを作成しました。このコードはサイドバーやその他の好きな場所で使用できます。

<?php
$args = array( 'post_type' => 'event', 'posts_per_page' => 15, 'order' => 'ASC', 'meta_key' => '_expiration-date', 'orderby' => 'meta_value' );
$eventloop = new WP_Query( $args );
if ( $eventloop->have_posts() ) : while ( $eventloop->have_posts() ) : $eventloop->the_post();

//All the Loop Content Goes Here

endwhile;
endif;
?>

コツは、meta_keyを利用し、その後user oderby meta_valueを使用することです。昇順にすると、すぐに来るイベント(最も早く期限切れになるもの)が表示されます。イベントリストの例:

投稿の有効期限で投稿を並べ替える(イベントの例)

この機能が動作するためには、Post Expirator Pluginを使用する必要があることに注意してください。

ご不明な点がございましたら、以下のコメントでお気軽にお尋ねください。

開示:当社のコンテンツは読者によってサポートされています。これは、当社のリンクの一部をクリックすると、当社が手数料を得る可能性があることを意味します。WPBeginnerがどのように資金提供されているか、それがなぜ重要か、そしてどのように私たちをサポートできるかについては、こちらをご覧ください。当社の編集プロセスはこちらです。

究極のWordPressツールキット

無料のツールキットにアクセスしましょう - すべてのプロフェッショナルが持つべきWordPress関連の製品とリソースのコレクションです!

読者とのインタラクション

24 CommentsLeave a Reply

  1. こんにちは、特定の日に期限切れになるオフサイトコースに操作する必要があるWooCommerce製品でこれを機能させようとしています。有効期限で並べ替える必要がありますが、何が間違っているのかわかりません。ありがとうございます

  2. 翌日、翌週、翌月などに終了する投稿を表示することは可能ですか。
    翌日に終了するすべての投稿を表示するサイトと、翌週に終了するすべての投稿を表示するサイトを作成したいです。

    何か提案はありますか?

  3. このコードをGenesis Proの子テーマで動作させようとしています。将来の日付を持つ投稿をいくつか作成しました。このコードをショートコード経由でサイドバーに追加したり、functions.phpファイル内に入れてみたりしました。カスタムフィールドは使用しておらず、情報も追加していません。

    何かアイデアがあれば教えていただけると幸いです

  4. これを機能させようとしましたが、うまくいきませんでした。サイドバー、function.php、およびショートコードとして投稿しました。何か助けがあれば幸いです。

  5. Genesis Proの子テーマでこれを機能させることができませんでした。functions.phpファイルの最後の行に追加しました。メタ値も追加しました。なぜ有効期限日で昇順に投稿されないのか不明です。

    事前に感謝します

  6. このような投稿こそ、私がインターネット(そしてあなたのブログのようなもの)を愛する理由です。まさに私が探していたもので、これ以上シンプルに説明することはできませんでした。ありがとうございます!

  7. このプラグインの現在のバージョンでは、カスタムフィールド名が
    expiration-date から _expiration-date に変更されたことをお伝えしたかっただけです。

    カスタムフィールドは非表示になっています。したがって、上記のコードを更新してください。

    敬具
    タジマ

  8. これをありがとうございます。投稿に日付画像をどのように追加したのか疑問に思っていました。

    • このプラグインが投稿のカスタムフィールドに保存するメタ情報を取得し、スタイルを設定しました。それは背景のCSS画像とテキストオーバーレイでした。

      管理者

      • フィードバックありがとうございます。これに関するサンプルコードをあなたからいただくことは可能でしょうか?よろしくお願いします。

  9. 素晴らしい投稿をありがとうございます。

    ループ内で投稿の有効期限をエコーしたい場合、どのようなコードを使用できますか?

      • 「_expiration-date」に変更したところ、データは取得できましたが、これを正しい日付表示に並べ替えるにはどうすればよいですか?私の日付は2015年3月1日ですが、表示されるのは「1425254340」です。

        ありがとう、

  10. では、完全な初心者ですが、有効期限で並べ替えるには、このコードをどこに配置すればよいですか?

    • この記事は完全な初心者向けではありません。このコードを特定のテーマで機能させるためには、WordPressのテーマがどのように機能するかについてかなりの理解が必要です。

      管理者

      • 初心者向けでないなら、なぜwpbeginner.comに投稿したのですか?私もこのブログへの挿入に苦労しており、KITSTSの質問への回答を見たいです。

        • WPBeginnerでは、初心者をさまざまなレベルに定義しています。初心者ブロガー(ブログを始めたばかりで、RSSやFTPなどがわからない)。初心者テーマデザイナー(HTML+CSSは知っているが、WordPressでテーマを作成する方法はわからない)。初心者プラグイン開発者(プログラミングの一般的な概念は知っているが、WordPressに特化していない)。

          KITSTの質問に答えられない理由は、提供された情報だけでは答えられないからです。記事で共有されているコードは、標準的なWordPressループです。どこに貼り付けるかは、ニーズや使用しているテーマの種類によって異なります。

          チャイルドテーマを使用している場合、そのコードはほとんどの場合functions.phpファイルに配置されるため、テーマフレームワークによって提供される関数にフックできます。

          他のWordPressテーマを使用している場合、コードはさまざまなテンプレートファイル(index.php、sidebar.php、archive.php、archive-{posttype}.php、footer.php、header.phpなど)に配置できます。各テーマの構成が異なるため、このコードを貼り付ける正確な場所を特定することは不可能です。

          また、上記で共有したループは、eventsというカスタム投稿タイプを使用して作成したサンプルワークからのものであることに注意してください。カスタム投稿タイプeventsに使用したくない場合があります。おそらく、dealsという別の投稿タイプに使用したいでしょう。

          この記事は、これを簡単に行いたいと考えている初心者テーマデザイナーや初心者開発者を対象としています。

  11. 上記の例で、今後のイベントを表示するためにどのプラグインが使用されているか気になっていました。
    素敵な記事をありがとうございます…

    • それはプラグインではありませんでした。この記事で共有したループコードを使用して、カスタム投稿タイプの表示をカスタムスタイリングしただけです。

      管理者

      • ああ、なるほど。 「ここにすべてのループコンテンツが入ります」の例を教えていただけますか?NGOのウェブサイトを更新しており、イベントをこのように表示する方法が気に入りました。ご存知かもしれませんが、私は初心者なので、ご協力いただけると大変助かります ;o)….

        • ループコードは基本的に、タイトルを表示するためのthe_title(); phpタグです。日付を表示するためのカスタムフィールドもあります。ループについては、こちらでかなり詳しく説明されています。

          http://codex.wordpress.org/The_Loop

          スタイリング(div/画像/CSS)を使用してそのように見せました。この記事は、投稿を有効期限で並べ替える方法についてであり、記事はそのことを示しています。使用されている例は、クライアントのために行ったものなので、残念ながら彼らが支払った画像/スタイリングを共有することはできません。ご興味があれば、メールでお問い合わせください。非営利団体向けの特別料金があります。

  12. これはクールな機能ですね。 まさにこれが必要とされる状況がいくつかあります。
     
     
    追伸
    このウェブサイトは私のお気に入りのデザインの一つです。 #IBCT は世界で最高のブロガーを見つけるためのものです。あなたのウェブサイトは準決勝に進出しました。

返信する

コメントを残していただきありがとうございます。すべてのコメントは、当社のコメントポリシーに従ってモデレーションされますので、ご了承ください。メールアドレスは公開されません。名前フィールドにキーワードを使用しないでください。個人的で有意義な会話をしましょう。