【WordPress】指定期間内だけHPへイベント情報を表示したい

スポンサードリンク


この記事を読むのに必要な時間は約 10 分です。

指定した期日が来たら、投稿が自動で非表示になるWordpressプラグイン

HP改編に伴い、イベント情報をアップするフローの見直しをしていて思いました。

イベントを行う日時は決まっているのだから、当然、イベントが終了する日時もわかっている。

なのに、イベントを告知欄から下ろす(消す)作業を手動でおこなっている。

たまに、更新者の見落としがあり、終了したイベント表示がHP上に残っていることもある。

条件とアクションが決まっているこの「イベント情報を下ろす作業」を自動化出来ないものだろうか。

 

前提として、当初のHP内の「イベント情報」に関する投稿は、「固定ページ」を使って行っていました。

固定ページのページIDをhome.phpに読み込ませてトップに表示していた。

天使の自動書記ラブリーゴーストライターも驚きのthe 完全手動手記。コンテンツマネジメント?なにそれ?状態。

このhtml文には特定の属性情報などを持たせられないので、現状では不可能でした。

スポンサードリンク


イベントの期限が来たら、自動でトップページから非表示にする為に必要な2点

用意するものは、新たな「属性をもたせられるイベント用投稿スペース」と「イベント期間を指定してコントロールするなにか」

この2つ。

前者はカスタムポストタイプ、後者はwordpressプラグイン「PostExpirator」で、なんだかふわっと解決できました。

 

まずはWordpressの本領、イベント情報のCMS化

いままでのイベント情報に関するコンテンツ情報は、固定ページの編集スペースを「上書き更新」していく方法が取られていました。

いうなれば「フロー」の情報。これを「ストック」の情報に変えることから始めないと行けません。

1投稿=1イベント情報として、イベント情報をストックする必要があります。

ここでパッと思いついたのが、イベント更新情報をカテゴリとして区分けして、一般投稿画面からコントロールするというもの。

記事をカテゴリ指定してトップページに表示させることで、イベント情報を表示させることができます。

 

しかし。これでは、更新者にとてもわかりづらい。

 

「投稿内容が「イベント情報」の場合、記事には「イベント」カテゴリにチェックを入れてください。」

[フロー] 投稿→イベント情報入力→カテゴリにチェック→公開

まあまあです。

 

できれば、投稿スペース自体を分け、

「イベント情報はココをクリックして新規投稿してください。」

[フロー] イベント投稿→イベント情報入力→公開

これくらいわかりやすくアクションが少ない方がいい。

実務者がWordpressに精通している場合は少なく、極力、実務者には技術的な要素を求めたくないのです。

 

「この条件のときは、ここを更新する」程度のルールで回したいのです。

 

わかりやすくするための「カスタム投稿タイプ」

一般投稿とは、完全に別の投稿の入り口を作ってあげます。

この場合は、イベント情報を入力するためだけの入力画面。

目的がフォーカスされるので、初心者でも迷いが少ないと思います。

(入力手順の説明は必要ですが、何も考えずフローをこなすだけで更新、公開までいけます)

 

ここでも多少の思いやりをば。

真っ白な投稿画面内で、

「本文に自由にイベント告知を書いてくださいね。よろしく!」

と実務者の判断に投げてしまうのではなく、

こちらで事前に投稿フォーマットを固定しておいてあげます。

日時を入力する投稿欄、場所を入力する投稿欄、催し物詳細を入力する投稿欄、etc…

 

この機能をカスタムフィールドといいます。

WordPress準拠のカスタムフィールドは微妙に使い勝手が悪いので、後述するプラグイン「カスタムフィールドテンプレート」を使って見栄えを調整してあげましょう。

イベント日時、開催場所、イベント名、等、入力する欄が何もない白紙の場合は何を書いていいのかわからず入力が少なくなってしまいますが、「最低限この項目は埋めてください」という指標があれば、ゴールが明確化して必須入力項目を埋める作業をただこなすだけなのでストレスフリーです。

 

こういったゴールまでの道筋を立てることの重要性は、GTDから学びました。

 

 本題 カスタム投稿タイプ(カスタムポストタイプ)の導入

話はそれましたが、カスタム投稿タイプを既存のWordPressに追加しましょう。

カスタム投稿タイプについてはこちらを参照ください。

やり方は二通りあって、プラグインを利用する場合と、自分が記述する場合の2つです。

オススメは自分で記述するパターン。プラグインだと、相性により動かない場合がありますので。

プラグインについての解説はこちらがわかりやすかったです。

コンテンツ管理がスッキリ!WordPressカスタム投稿タイプの使い方

 

自分で記述する場合ですと、functions.phpというファイルにコードを追加するだけで完了です。

functions.phpの場所はというと、以下の場所を探ってみてください。

/www/wordpress/wp-content/themes/テーマ名/functions.php

 

技術的に未熟な私などは、WordPress Custom Post Type Code Generator(http://themergency.com/generators/wordpress-custom-post-types/)(※現在はリンク切れ)という

カスタム投稿タイプの自動生成オンラインジェネレーターという便利アイテムを使用して作成しました。

勝手に、ここに書くためのコードを自動生成してくれます。ありがたや。

 

このオンラインジェネレーターは英語ページですが、日本語で解説してくれているサイトを紹介しておきます。

WordPressのカスタム投稿タイプでメンバー紹介ページを作成

 

さて、生成されたコードを貼り付けます。

今回のサイトの場合は以下のようになりました。

いろいろ追記しているもんで、わかりにくくなってしまっているかもしれませんが。。。

まあ、備忘録なのでいいか。

 

 

 

 

ここまでで、カスタム投稿タイプの導入は完了です。

次は、カスタムフィールドの設定をしてあげます。

カスタムフィールドの項目=Metaタグを決定しましょう。

※上記のfunctions.phpで、すでにメタ情報「イベント日時」を入力しております。

これ以外のメタ情報は、カスタムフィールドを使用します。

 

ここで活躍するのが、プラグイン「カスタムフィールドテンプレート」

カスタムフィールドのUIを向上させる目的のテンプレート作成プラグインです。

このプラグインの解説は、こちらのサイトが一番わかりやすかった。

Custom Field Templateの使い方[WordPress]

 

この設定を終わらせると、CMSとしてある程度わかりやすく、説明しやすい土台がつくられました。

 

最後に投稿記事の表示期間を設定するプラグイン「Post Expirator」のインストール

ここまでくるともう簡単です。

WordPressで「Post Expirator」プラグインを検索してインストールです。

日本語化パッチもありましたのでこちらをご紹介。

[WP] Post Expirator の日本語化ファイルを作ってみました

 

このインストールが完了すると、カスタム投稿タイプの記事内に「表示期限の設定」という項目が現れます。

ここに、イベント終了日時、若しくはその翌日の日付を入力して上げると、記事のステータスが自動で下書き状態になりますので、home.php(index.php)上で投稿記事が表示されることはなくなりました。

 

※もちろん、home.php(index.php)上にカスタム投稿タイプの呼び出しを設定しないと読み込まれることはありません。

home.php(index.php)に記述したコードは以下。

 

カスタム投稿タイプイベント記事(events)として投稿(ステータス公開)された最新4件をループ表示

アイキャッチ画像にはイベントバナーを表示するようにし、サムネイルを650×220ピクセルで表示させてそこにカスタム投稿タイプ「イベント」の記事リンクをはりつけました。

 

 

 

カスタム投稿タイプでは、投稿ページの見え方も編集する必要があるので以下の用に記述

 

アーカイブページも同様に

 

 

こんな感じで備忘録

スポンサードリンク


Facebookページをゼロからやり直しました。

記事が役に立った!と思ったらシェアお願いします|д゚)




このブログで使っているテーマはこれ!
WPテーマ「STORK」

「新しいスマホビュー時代をつくろう」というのをコンセプトに、スマホでの見やすさ、操作しやすさにとことんこだわりました。




こんな記事も読まれています



コメントを残す

ABOUTこの記事をかいた人

28歳、二児の父。採用担当兼Webマネージャー。

「読んだ人の生活の質があがるコンテンツ配信」をテーマにブログを運営してます。

iPhoneについて、仕事効率化について(ツール、思考術)、健康について、文具について。

職業上、Wordpressを扱っていますので、たまに備忘録として紹介もします。

愛読書はデビットアレン著 はじめてのGTD ストレスフリーの整理術