独自のプラグインを使用してWordPressカスタム投稿タイプを作成してください!

公開: 2021-01-18

WordPressのカスタム投稿タイプは非常に便利です。 これらが何であるかわからない場合は、詳細について「プラグインを使用したWordPressカスタム投稿タイプの作成」の記事を確認してください。 一連の記事では、カスタム投稿タイプを作成するさまざまな方法について説明しました。 これには、プラグインの使用(上記の記事による)からカスタム投稿タイプのゼロからのコーディングまでが含まれます。

WordPressに関連するほとんどのものと同様に、機能をコーディングする技術的能力がある場合、選択した目標の達成を支援することを目的としたプラグインによる制限に縛られることなく、ほとんど何でも達成できる可能性があります。 ただし、おそらく究極の制御と使いやすさは、自分で作成したカスタムプラグインを使用することから生まれます。 この記事では、独自のカスタム投稿タイププラグインを作成する方法を見て、カスタム投稿タイプの作成に関するミニシリーズを締めくくります。

それでは、テキストエディタを起動して、始めましょう。

カスタム投稿タイププラグインを作成する

独自のWordPressプラグインを作成したことがない場合は、このチュートリアルを続行する前に、記事「最初のWordPressプラグインを作成する方法」を確認する価値があるかもしれません。 ステップバイステップガイド」。

プラグインは、WordPressWebサイトの機能を拡張するための理想的な方法です。 「既成の」プラグインを使用する機能と、WordPress Webサイトの機能を拡張するために独自のプラグインを作成する機能の両方が、WordPressが非常に人気のあるCMSである多くの理由の1つです。 独自のプラグインを作成して(またはサードパーティのプラグインを使用して)機能を追加すると、通常、問題のプラグインの機能を失うことなく、テーマを切り替えたり、サイトにその他の主要な更新を加えたりすることができます。

このため、プラグインをWebサイトのデザインから機能を分離する方法でデザインすることは理にかなっています。つまり、プラグインがコア機能を提供するように設計されている場合、テーマ固有の機能も含まれていない場合に最適に機能します。 これにより、理論的には、このプラグインを任意のWordPress Webサイトにデプロイできるため、究極の柔軟性が得られます。

これを念頭に置いて、カスタム投稿タイプ用に作成するプラグインは、エンドユーザーがこの関数を直接Webサイトにコーディングしなくても、「レシピ」カスタム投稿タイプを登録するシンプルで完全なプラグインです。

ステップ1:プラグインを登録する

最初のステップは、「私のカスタム投稿タイプ」という名前のプラグインを作成し、それをWebサイトに登録することです。

これを行うには、 /wp-content/pluginsフォルダーの下にプラグインフォルダーを作成し、 my-custom-post-typeという名前を付けます。 次に、プラグイン関数と登録コードを保持するメインファイルをこのフォルダー内に作成します。 ファイルにmy-custom-post-type.php同じ名前を付けることをお勧めします。 したがって、FTPクライアントでは次のようになります。

カスタム投稿タイププラグイン

ここに記述しなければならない最小限の必須コードは次のとおりです。

 <?php /** Plugin Name: My CPT plugin **/

このPHPコメントは、プラグインの存在とプラグインの名前についてWordPressに通知します。 「MyCPTplugin」文字列は、これを更新すると管理領域プラグインリストに表示される名前です。

カスタム投稿タイププラグインに機能を与える

これで、プラグインに名前を付けて登録しました。プラグインにいくつかの機能を追加する必要があります。

必要なコードの大部分は、以前に記事「WordPressカスタム投稿タイプを手動で作成する」で作成されました。 このコードがどのように機能するかを確認するか、以下のコードからコピーしてください。

注:以前にチュートリアルに従った場合は、 functions.phpファイルにコードを追加したことになります。 続行する前に、 functions.phpファイルとプラグインの両方にコードを含めることで倍増したくないので、functions.phpファイルからこれを削除することをお勧めします。

同じコードをfunctions.phpファイルからプラグインのメインphpファイルに貼り付けました。 my-custom-post-type.phpファイルは次のようになります。

 <?php /** Plugin Name: My CPT plugin **/ //// Create recipes CPT function recipes_post_type() { register_post_type( 'recipes', array( 'labels' => array( 'name' => __( 'Recipes' ), 'singular_name' => __( 'Recipe' ) ), 'public' => true, 'show_in_rest' => true, 'supports' => array('title', 'editor', 'thumbnail'), 'has_archive' => true, 'rewrite' => array( 'slug' => 'my-home-recipes' ), 'menu_position' => 5, 'menu_icon' => 'dashicons-food', // 'taxonomies' => array('cuisines', 'post_tag') // this is IMPORTANT ) ); } add_action( 'init', 'recipes_post_type' ); //// Add cuisines taxonomy function create_recipes_taxonomy() { register_taxonomy('cuisines','recipes',array( 'hierarchical' => false, 'labels' => array( 'name' => _x( 'Cuisines', 'taxonomy general name' ), 'singular_name' => _x( 'Cuisine', 'taxonomy singular name' ), 'menu_name' => __( 'Cuisines' ), 'all_items' => __( 'All Cuisines' ), 'edit_item' => __( 'Edit Cuisine' ), 'update_item' => __( 'Update Cuisine' ), 'add_new_item' => __( 'Add Cuisine' ), 'new_item_name' => __( 'New Cuisine' ), ), 'show_ui' => true, 'show_in_rest' => true, 'show_admin_column' => true, )); register_taxonomy('ingredients','recipes',array( 'hierarchical' => false, 'labels' => array( 'name' => _x( 'Ingredients', 'taxonomy general name' ), 'singular_name' => _x( 'Ingredient', 'taxonomy singular name' ), 'menu_name' => __( 'Ingredients' ), 'all_items' => __( 'All Ingredients' ), 'edit_item' => __( 'Edit Ingredient' ), 'update_item' => __( 'Update Ingredient' ), 'add_new_item' => __( 'Add Ingredient' ), 'new_item_name' => __( 'New Ingredient' ), ), 'show_ui' => true, 'show_in_rest' => true, 'show_admin_column' => true, )); } add_action( 'init', 'create_recipes_taxonomy', 0 );

これで、管理エリアに移動してプラグインをアクティブ化すると、メインメニューに「レシピ」が表示されます。

したがって、「レシピ」カスタム投稿タイプと2つのレシピ投稿「レシピ1」と「レシピ2」があり、それぞれに「料理」分類法が割り当てられています。 以上です! これで、カスタム投稿タイプを更新するたびにfunctions.phpファイルにコードを変更する必要はなく、プラグインphpファイルを介してこれを行うことができます。これははるかに優れています。 また、管理者から直接制御でき、プラグインをすばやく簡単に無効にできます。 さらに、これをプラグインzipファイルとして保存し、他のWordPressWebサイトで使用することもできます。

代わりにライブラリプラグインを使用してください

独自のカスタム投稿を作成するプロセスをさらにスピードアップしたい場合は、MyCustomFunctionsプラグインを使用してみてください。

このプラグインを使用すると、SFTP接続を介してファイルを直接編集しなくても、PHP関数コードをWebサイトに挿入できます。

プラグインをインストールしてアクティブ化すると、新しいメニュー項目が管理メニューに追加されます。 [設定]>[PHPインサーター]に移動し、提供されたコードブロックにカスタム投稿タイプのカスタムコードを追加します。

コードを挿入したら、スイッチをオンにして変更を保存します。 PHPコードは、パフォーマンスに影響を与えたり、テーマファイルを変更したりすることなく、Webサイトに自動的に追加されます。

同じ管理画面には、プラグインの使用方法を理解するのに役立つ[使用法]タブと[FAQ]タブもあります(テスト時に使用しました)。

参考文献

これで、カスタム投稿タイプに関するミニシリーズが終了しました。 これらをチェックしたい場合は、以前の記事へのリンクを以下に示します。

  • プラグインを使用してWordPressカスタム投稿タイプを作成する
  • WordPressカスタム投稿タイプを手動で作成する
  • WordPressカスタム投稿タイプ–さらに進んで

結論

この一連の記事を楽しんでいただき、カスタム投稿タイプの処理方法を理解していただければ幸いです。 カスタム投稿タイプは素晴らしいものであり、WordPress Webサイトの構築方法に革命をもたらし、WordPressのもう1つの優れた機能になります。