無料のプラグインでWordPressカテゴリをスーパーチャージ
公開: 2022-02-16最近、旅行サイトを作る過程を考えていました。 特定のリゾートに関するブログ投稿があり、次に「ハワイ」や「カナリア諸島」などを保持する目的地と呼ばれるカスタム分類法があります。 WordPressはこの種の目的のために構築されているため、これらの宛先による投稿の並べ替えと整理はすばやく簡単に行えます。
問題は、たとえばハワイに関する投稿のアーカイブページにアクセスすると、ハワイに関する情報のオプションがかなり制限されていることです。 デフォルトでは、用語には、名前、プレーンテキストの説明、スラッグ、および関連する親のみを含めることができます。
私が本当に欲しいのは、注目の画像、カスタムフィールド、動的な説明フィールドです。 宛先をカスタム投稿タイプにすると、これらすべてを取得できますが、組み込みのすばらしい関係、ユーザーインターフェイス、および分類法の速度から脱却することになります。
幸いなことに、分類法の用語でこれらすべてを取得でき、無料のプラグインを使用してそれを実行できます。 方法は次のとおりです。
注目の画像
用語ページの上部に表示できるように、注目の画像が必要です。 ハワイ用語の投稿は、上部に美しいビーチシーンが表示されます。
このために、プラグイン「SimpleFeaturedImage」を使用します。 しばらく更新されていませんが、それでもうまく機能します。
SFIは、[設定]メニューの下に設定ページを作成し、そこで表示する分類法を設定します。 これを忘れないでください、さもないとあなたはそれを使う方法についてひどく混乱するでしょう!
インストールしてアクティブ化すると、新しい規約と既存の規約のフォームに次のようなフィールドが表示されます。
[アップロード/追加]ボタンをクリックすると、通常のWordPressメディアライブラリのユーザーインターフェイスが開き、投稿の場合と同じように注目の画像を設定します。
画像を選択すると、次のようになります。
そして、用語リストの管理ページに次のようなものが表示されます。
そして、注目の画像があります!
動的な説明
用語の説明フィールドはプレーンテキストです。これ以上興味深いものが必要ない限り、悪くはありません。 WordPressのデフォルトであったTinyMCEエディターを追加するのが好きです。 このために、プラグイン「Visual TermDescriptionEditor」を使用します。
重要:YoastSEOプラグインもこの機能を有効にします。 すでにYoastを使用している場合は、これは必要ありません。 Yoastを使用していない場合は、この機能のためだけにインストールしないでください。
このプラグインの設定はありません。すべての分類法のすべての用語の説明にTinyMCEエディターが含まれるようにするだけです。 次のようになります。
そして、メインの用語リスト管理ページは次のようになります。
これで、注目の画像とより適切な説明ができましたが、カスタムフィールドも必要です。 これがその方法です。
カスタムフィールド
用語メタはWordPressの機能としてかなり前から存在していましたが、それらを使用するのはまだ少し面倒です。 Smashing Magazineには、コードを使用して自分でビルドする方法についてのすばらしい記事があります。
MetaBox.ioやCMB2などの一般的なカスタムフィールドライブラリのほとんどを使用して、コードでそれを実行することもできますが、スムーズで標準化された方法で実行できます。
この投稿では、最も簡単な方法であるAdvanced CustomFieldsを選択します。 WordPress.orgにある無料バージョンを使用しています。 プロバージョンも明らかに機能します。
すでにACFに精通している場合、用語のカスタムフィールドを取得するには、場所は次のようになります。
次のように、標準の「URL」タイプのフィールドを使用して、DestinationDetailsというフィールドグループを追加しました。
用語エディタでは、次のようになります。
その他のカスタムフィールド
私の例ではこれ以上追加しませんでしたが、ACFやその他のカスタムフィールドマネージャーに精通していれば、そのパワーを想像できると思います。 追加できるカスタムフィールドの他の例を次に示します。
- Googleマップをレンダリングできるようにフィールドを調整します
- クリックするだけで座標を取得できる実際のマップフィールド
- 人口、道路の質、国際空港へのアクセス、重要な文化的詳細など、目的地に関するメタ情報。
リストはあなたの想像力がそれを取ることができる限り続きます。
この情報の使用
分類法の用語が情報のパワーハウスになったので、Webサイトでその情報をどのように確認しますか?

テンプレートファイルの作成
これについては、テンプレートファイルを作成および編集します。 最新のテーマのほとんどには、 archive.phpというファイルがあります。これは、投稿アーカイブをレンダリングするファイルです。 一部のテーマにはcategory.phpというファイルもあり、このファイルは特定のカテゴリの投稿のアーカイブを表示するために使用されます。
上記のすべてのフィールドを投稿に関連付けられたデフォルトのカテゴリ分類に追加した場合は、 category.phpでこの次の部分を実行する必要があります。 存在しない場合は、 archive.phpをcategory.phpにコピーできます。
私のようにカスタム分類法を使用している場合は、 category.phpまたはarchive.phpのいずれかをtaxonomy- {taxonomy} .phpにコピーする必要があります。ここで、{taxonomy}は分類法のスラッグです。 タクソノミー管理ページに移動してURLを調べると、スラッグを見つけることができます。 目的地の分類法を作成しましたが、私のスラッグはtravel_destinationであり、次のようになります。
したがって、私のテンプレートファイルはtaxonomy-travel_destination.phpと呼ばれます。
情報の入手
注目の画像
使用したプラグインには、画像を取得するためのカスタム関数があります。 このphp関数を使用して、フロントエンドに分類法の注目画像を表示できます。
wpsfi_display_image( $termID, $size = 'medium', $class = '', $width = '', $height = '' );
wpsfi_display_image( $termID, $size = 'medium', $class = '', $width = '', $height = '' );
パラメーター:
- $ termID –(整数)分類法termID
- $ size –(文字列)画像サイズ
- $ class –(文字列)カスタムクラスを追加
- $ width –(整数)幅(ピクセル単位)
- $ height –(整数)高さ(ピクセル単位)
説明
説明の動作は実際には変更せず、フォームに入力できるものだけを変更しました。 したがって、デフォルトのWordPress関数は説明を印刷するために機能します。
get_the_archive_description()は説明を取得し、それを変数に入れたり、サニタイズ関数などで処理したりできるようにします。 次に、その変数を次のように出力します。
$description = get_the_archive_description(); print wp_kses_post( $description );
$description = get_the_archive_description(); print wp_kses_post( $description );
または、コンテンツをエコーするthe_archive_description()を使用することもできます。
カスタムフィールド
カスタムフィールドを取得する方法は、それらを作成した方法によって異なります。 Smashing Magazineの記事の指示に従って独自のプラグインを作成した場合は、get_post_meta()とまったく同じように機能するget_term_meta ()というWordPress関数を使用することをお勧めします。 TermID、必要なフィールドのキー、および単数形か複数形かを示すフラグを渡します。
ACF、Metabox.io、CMB2などのライブラリを使用した場合は、データを取得するためにそれらのカスタム関数を使用することをお勧めします。
たとえば、ACFを使用してmore_informationというフィールドを作成しました。 そのフィールドの内容を取得するには、次のようなものを使用します。
// get the current taxonomy term $term = get_queried_object(); // var $term_url = get_field( 'more_information', $term ); // make a link echo '<a href="' . esc_url( $term_url ) . '">More Information</a>';
// get the current taxonomy term $term = get_queried_object(); // var $term_url = get_field( 'more_information', $term ); // make a link echo '<a href="' . esc_url( $term_url ) . '">More Information</a>';
CMB2とMetabox.ioにはそれぞれ独自のメソッドがあり、ドキュメントでそれらを調査する必要があります。
概要
ですから、私の架空の旅行ウェブサイトでは、ハワイなどの各場所の上部に美しいバナー、目的地に関する情報、詳細情報を取得するためのリンクなどの追加情報が表示されます。の。
これにより、アーカイブページが、投稿の単純なリストから、適切に設計されたWebページのように見えるものに変わります。