apeescape2.com
  • メイン
  • Webフロントエンド
  • リモートの台頭
  • 製品の担当者とチーム
  • Uiデザイン
バックエンド

WordPressで排他的なカスタム分類法を作成する方法

最も強力なオープンソースのブログおよびコンテンツ管理システムの1つであるWordPressは、インターウェブの主要なチャンクを強化するために使用されています。すべてのウェブサイトの最大4分の1がWordPressを実行しており、需要が不足することはありません。 WordPress開発サービス 。

他の多くのCMSとは異なり、WordPressはその柔軟性とカスタマイズ性で多くの人に愛されています。 WordPressのコア機能の1つである分類法を使用すると、必要な方法でコンテンツを整理できます。いくつかのデフォルトの分類法が組み込まれていますが、WordPressでは必要な数のカスタム分類法を追加できます。

ただし、分類法を希望どおりに動作させるには、文書化されていないアプローチをいじる必要がある場合があります。



さまざまなWordPress分類オプションのグラフィック表現

この記事では、WordPressでタグよりもカテゴリのように動作する排他的なカスタム分類法を定義して、すぐに使用できるよりもはるかに厳密に投稿を分類できるようにする方法を学習します。

ビジュアルデザインの要素と原則

分類法とは何ですか?

WordPressコーデックスによると:

分類法は、物事をグループ化する方法です。

たとえば、さまざまな種類の果物の束をさまざまな特性に従ってグループ化し、それらのグループに名前を割り当てることができます。

WordPressでは、分類法を使用して、投稿、ページ、さらにはカスタム投稿タイプをさまざまなグループにグループ化します。

分類法のさまざまなグループの名前は、 条項 。たとえば、果物と、その色に基づいて果物をグループ化する方法を考えてみましょう。この場合、異なる色の名前が用語になります。

デフォルトでは、WordPressには4つの分類法が組み込まれています。 カテゴリー 、 鬼ごっこ 、 リンクカテゴリ 、および 投稿フォーマット 。これらのデフォルトの分類法について詳しく知ることができます ここに 。

これらの組み込みの分類法の中で、カテゴリとタグは非常に似ていますが、重要な違いが1つあります。カテゴリは排他的な分類法です(つまり、投稿ごとに最大1つのカテゴリを選択できます)が、各投稿には複数のタグを割り当てることができます。

さらに、カテゴリは通常事前定義されていますが、タグは必要に応じて定義できます。

カスタム分類法の定義

register_taxonomy()を使用してカスタム分類法を定義できます関数。あなたは機能についてもっと学ぶことができます ここに 。

この関数がどのように機能するかを確認するために、風景の写真を含む投稿のカスタム分類を定義しましょう。

外国為替リスクの種類
function view_init() { register_taxonomy( 'view', 'post', array( 'label' => __( 'View' ), 'capabilities' => array( 'assign_terms' => 'edit_guides', 'edit_terms' => 'publish_guides' ) ) ); } add_action( 'init', 'view_init' );

上記のスニペットでは、と呼ばれる投稿の新しい分類法を定義しています 見る 。

この分類法は、写真に存在するビューの種類または性質(山、湖、森など)に基づいて写真を分類するために使用されていると考えることができます。

いつものように、このカテゴリの特定の用語に属する投稿は下に表示されます / view / {view_name} 。

上記のスニペットの機能行はオプションです。これがないと、WordPressのデフォルト機能は投稿と同じユーザーになります。上記のように、これにより、カスタムの「edit_guides」機能を持つすべてのユーザーが分類を投稿に割り当て、カスタムの「publish_guides」機能を持つすべてのユーザーが新しい分類アイテムを作成できるようになります。

公式ドキュメントによると、定義できる機能は4つあります。

分類機能には、assignterms、editterms、managetermsが含まれます。 (管理ナビゲーションに分類法を表示します)およびdeleteterms。

タクソノミーの使用方法

コード内で、wp_set_object_terms()を使用できます分類法を使用してオブジェクトに用語を追加する関数。 the_terms()を使用して既存の用語を一覧表示できます関数。さらに、wp_tag_cloud()を使用できますカスタム分類法の用語のクラウドを生成する関数。これらの機能について詳しく知ることができます ここに 。

UI側では、WordPressはすべての分類法の投稿に新しいメタボックスを作成します。メタボックスは、1つ以上の用語を投稿にリンクできる[タグ]メタボックスに似ています。これはWordPressがデフォルトで行うことであり、これは分類法を排他的にすることで変更できることです。カスタム分類法をカテゴリ分類法のように動作させます。

タクソノミーに排他性を強制する

register_taxonomy()を使用してカスタム分類法を作成する場合メソッドでは、WordPressは複数のアイテムを選択したメタボックスを投稿編集ページに追加します。

このメタボックスを使用すると、ユーザーは既存の(すでに使用されている)用語をいくつでも選択でき、テキストボックスを使用して新しい用語を追加することもできます。

各投稿が事前定義されたカテゴリのセットから最大で1つのカテゴリに属する​​、カテゴリのような分類法を作成するには、WordPressを少し調整することで作成できます。

  • WordPressによって作成されたデフォルトのメタボックスを非表示にします。
  • 投稿編集ページにカスタムメタボックスを作成します。これにより、単一のアイテムを選択するためのコントロールが提供されます。
  • 投稿を保存するときに分類値を保存します。

各ステップを見てみましょう。

shazamどのように機能しますか

WordPressによって作成されたデフォルトのメタボックスを非表示にする

このために、show_in_quick_editを設定する必要がありますおよびmeta_box_cb falseへのオプションregister_taxonomyを呼び出すとき。

利用可能な用語のセットにアイテムを追加できるカスタム分類メタボックスのスクリーンショット

最初のオプションはクイック/バルク編集パネルで分類法を非表示にし、2番目のオプションは投稿編集ページで分類法を非表示にします。

register_taxonomy( 'custom_taxonomy', 'post', array( 'labels' => array( 'name' => 'Custom Exclusive Taxonomy' ), 'show_in_quick_edit' => false, 'meta_box_cb' => false ));

デフォルトのメタボックスが非表示になっている場合、分類法管理ページを使用して、分類法の使用可能な用語のセットに項目を追加できます。

いくつかのラジオボタンを備えたCustomExclusiveTaxonomyという名前のメタボックスのスクリーンショット

投稿編集ページでカスタムメタボックスを作成する

カスタムメタボックスを作成するには、add_meta_boxesを使用できます。 WordPressフック。あなたはフックについてもっと学ぶことができます ここに 。

add_action('add_meta_boxes', 'add_custom_meta_box'); function add_custom_meta_box(){ add_meta_box( 'taxonomy_box', __('Custom Exclusive Taxonomy'), 'fill_custom_meta_box_content', 'post' ,'side'); }

add_meta_boxと呼びます次の引数を持つメソッド:

  • taxonomy_box –メタボックスのID
  • __('Custom Exclusive Taxonomy') –メタボックスのタイトル
  • fill_custom_meta_box_content –メタボックスの内容を入力するために使用される関数
  • post –これは、メタボックスが編集後のページに表示される必要があることを示します。
  • side –これはメタボックスを挿入する場所を示します。

taxonomy_boxを指定した方法に注目してくださいIDとして。ただし、ボックスに何を入れるかを定義できるのは、3番目のパラメーターの関数です。

fill_custom_meta_box_contentを実装します関数:

'custom_taxonomy', 'hide_empty' => false // Retrieve all terms )); // We assume that there is a single category $currentTaxonomyValue = get_the_terms($post->ID, 'custom_taxonomy')[0]; ?>

Choose taxonomy value

製品の価格弾力性を知ることで、エコノミストは次のことが可能になります。

term_id) echo 'checked'; ?>>

ここでは、最初に分類法のすべての用語(つまり、既存の値)を取得します。これらを使用して、ラジオボタンコントロールのリストを表示します。

次に、get_the_terms()を使用して現在選択されている分類用語を取得します機能—それぞれのラジオボタンを選択するために必要です。

この関数は配列を返すことに注意してください。これは、デフォルトで、投稿に任意の数の用語を関連付けることができるためです。私たちの仮定では、投稿には最大で1つの項があるため、最初の配列要素にアクセスします。 (配列が空の場合は問題ありません。現在の値としてnullが取得され、ラジオボタンは選択されません。)

HTML発行コードはcustom_taxonomyを使用しますラジオボタンの名前およびそれらの値としての対応する用語IDとして。ラジオボタンID属性は、ラベルタグへの接続に使用されます。その結果、次のカスタムメタボックスが得られます。

カスタム排他的分類のスクリーンショット

投稿を保存するときに分類値を保存する

最後に、投稿を保存するときに分類値を保持する必要があります。これには、save_postを使用できます針:

add_action('save_post', 'save_custom_taxonomy'); function save_custom_taxonomy($post_id){ if ( isset( $_REQUEST['custom_taxonomy'] ) ) wp_set_object_terms($post_id, (int)sanitize_text_field( $_POST['custom_taxonomy'] ), 'custom_taxonomy'); }

以上です!完了です。

テスト可能なコードの書き方

これで、組み込みのカテゴリ分類法のように動作するカスタム分類法を定義する方法がわかりました。

注:WordPressは 機能リクエスト カスタム分類法の排他性を簡単に切り替えることができます。しかし、チケットはしばらくの間あまり活動していません。

要約

タクソノミーは、WordPressの非常に強力で便利な機能です。箱から出して、投稿を厳密に分類する機能はありませんが、WordPressのほとんどすべての場合と同様に、分類法と関連機能は非常にカスタマイズ可能です。これにより、このしばしば必要な能力をいくつかのステップで追加することができます。

ここで紹介するアプローチを使用して、分類用語を選択するための編集後のページにさらにカスタマイズされたUIを作成することもできます。

排他的なカスタム分類法の定義に関するこのクイックチュートリアルがお役に立てば幸いです。

基本を理解する

WordPressの分類法とは何ですか?

WordPressでは、分類法は、共通の特性を持つさまざまな用語で投稿とページをグループ化する方法です。

C ++でのQtマルチスレッドに関する欠落している記事

技術

C ++でのQtマルチスレッドに関する欠落している記事
Gulp Under the Hood:ストリームベースのタスク自動化ツールの構築

Gulp Under the Hood:ストリームベースのタスク自動化ツールの構築

バックエンド

人気の投稿
別の次元、新しい習得–アイソメトリックイラストレーションチュートリアル
別の次元、新しい習得–アイソメトリックイラストレーションチュートリアル
TensorFlow入門:機械学習チュートリアル
TensorFlow入門:機械学習チュートリアル
ゲシュタルトの設計原則を探る
ゲシュタルトの設計原則を探る
Webおよび印刷デザインの書体スタイ​​ル
Webおよび印刷デザインの書体スタイ​​ル
退屈なアイコンをオリジナルの傑作にすばやく変換する方法
退屈なアイコンをオリジナルの傑作にすばやく変換する方法
 
42億ドルは合理的ですか?インスタカートの評価を評価する方法
42億ドルは合理的ですか?インスタカートの評価を評価する方法
コウノトリ、パート4:ステートメントの実装とまとめ
コウノトリ、パート4:ステートメントの実装とまとめ
第一印象–UXのオンボーディングガイド
第一印象–UXのオンボーディングガイド
Android DDMS:究極のAndroidコンソールのガイド
Android DDMS:究極のAndroidコンソールのガイド
H-1Bビザ:ホンジュラスからシリコンバレーへのiOS開発者の旅
H-1Bビザ:ホンジュラスからシリコンバレーへのiOS開発者の旅
人気の投稿
  • 標準デバイスのメディアクエリ
  • 春の統合の例
  • すべてのデバイスのブートストラップメディアクエリ
  • 良いデータベースを作るもの
  • C言語を学ぶ方法
  • 金融の堀とは何ですか
カテゴリー
プロセスとツール Uiデザイン 製品の担当者とチーム 仕事の未来 Kpiと分析 財務プロセス 革新 データサイエンスとデータベース アジャイル 収益と成長

© 2021 | 全著作権所有

apeescape2.com