検索
ホームページCMS チュートリアル&#&プレスWordPressにタイプを投稿するためにメタボックスを追加します

Adding Meta Boxes to Post Types in WordPress

WordPress Webサイトビルダーまたは開発者は、多くの場合メタボックスを使用します。この記事では、メタボックスとカスタム記事タイプとの関連性と統合、およびメタボックスを使用してWordPressフロントエンドで保存されたデータを使用する方法に飛び込みます。

コアポイント

  • add_meta_box()関数(マウントにadd_meta_boxesアクション)を使用して、任意の記事タイプの編集インターフェイスにメタボックスを追加します。この関数を使用して、メタボックスを複数の記事タイプ(記事、ページ、カスタム記事タイプ「書籍」など)、または既存および将来のすべての記事タイプに追加できます。
  • メタボックスは、記事タイプの名前をadd_meta_boxesアクションフックに追加することにより、特定の記事タイプに制限できます。 register_post_type()関数は、記事タイプをカスタマイズするために使用され、そのパラメーター配列にはregister_meta_box_cbが含まれます。その値は、メタボックスを設定するときに呼び出されるコールバック関数です。
  • global_notice_meta_box_callback関数には、メタボックスのフォームフィールドが含まれています。 save_postアクションフックドラフトまたは公開として記事を保存するときに、テキスト領域に保存されたプロセスデータをフックします。このデータは、対応する記事コンテンツを保存する前に、メタボックスに入力されたデータを表示することにより、効果的に利用できます。

メタボックスを記事タイプの画面

に追加します

Narayan Prustyは、すべてではないにしても、PHP関数、パラメーター、およびメタボックスを作成するアクションフックをカバーしています。

任意の記事タイプの編集画面にメタボックスを追加するには、add_meta_box()関数を使用してadd_meta_boxesアクションに添付できます。

次のコードは、メタボックスを記事編集画面に追加します。メタボックスにフォームフィールドを表示するために使用されるglobal_notice_meta_box_callback関数に注意してください。後で詳細に紹介します。

function global_notice_meta_box() {
    add_meta_box(
        'global-notice',
        __( '全局公告', 'sitepoint' ),
        'global_notice_meta_box_callback',
        'post'
    );
}
add_action( 'add_meta_boxes', 'global_notice_meta_box' );

複数の投稿タイプ画面(記事、ページ、およびカスタムポストタイプ「本」)にメタボックスを追加するには、記事タイプ配列を作成し、配列をループし、タイプのadd_meta_box()を使用してこれらの投稿に追加します。

function global_notice_meta_box() {
    $screens = array( 'post', 'page', 'book' );
    foreach ( $screens as $screen ) {
        add_meta_box(
            'global-notice',
            __( '全局公告', 'sitepoint' ),
            'global_notice_meta_box_callback',
            $screen
        );
    }
}
add_action( 'add_meta_boxes', 'global_notice_meta_box' );

既存および将来のすべての作成された記事タイプにメタボックスを追加するには、記事タイプアレイを取得し、上記の値を置き換えます。 get_post_types() $screen

メタボックスは、3番目の(
function global_notice_meta_box() {
    $screens = get_post_types();
    foreach ( $screens as $screen ) {
        add_meta_box(
            'global-notice',
            __( '全局公告', 'sitepoint' ),
            'global_notice_meta_box_callback',
            $screen
        );
    }
}
add_action( 'add_meta_boxes', 'global_notice_meta_box' );
)パラメーターを省略して、既存のすべての投稿タイプと新しい投稿タイプに追加することもできます。

$screen記事タイプ名(この場合は "book")を

アクションフックに添付して、メタボックスを特定の記事タイプに制限することもできます。
function global_notice_meta_box() {
    add_meta_box(
        'global-notice',
        __( '全局公告', 'sitepoint' ),
        'global_notice_meta_box_callback'
    );
}
add_action( 'add_meta_boxes', 'global_notice_meta_box' );

add_meta_boxes関数は、記事の種類をカスタマイズするために使用され、そのパラメーター配列には

が含まれ、その値はMetaboxを設定するときに呼び出されるコールバック関数です。
function global_notice_meta_box() {
    add_meta_box(
        'global-notice',
        __( '全局公告', 'sitepoint' ),
        'global_notice_meta_box_callback'
    );
}
add_action( 'add_meta_boxes_book', 'global_notice_meta_box' );

次のコードを使用して「本」と呼ばれるカスタム記事タイプを作成するとします。

function global_notice_meta_box() {
    add_meta_box(
        'global-notice',
        __( '全局公告', 'sitepoint' ),
        'global_notice_meta_box_callback',
        'post'
    );
}
add_action( 'add_meta_boxes', 'global_notice_meta_box' );

php関数(上記の値の値)にglobal_notice_meta_box関数定義を追加すると、「本」のカスタム記事タイプの編集画面にメタボックスが追加されます。 register_meta_box_cb add_meta_box()繰り返しますが、これは

関数の例です。

global_notice_meta_box

これまでのところ、WordPressにメタボックスを登録または追加するさまざまな方法を学びました。また、Metaboxのフォームフィールドを含む
function global_notice_meta_box() {
    $screens = array( 'post', 'page', 'book' );
    foreach ( $screens as $screen ) {
        add_meta_box(
            'global-notice',
            __( '全局公告', 'sitepoint' ),
            'global_notice_meta_box_callback',
            $screen
        );
    }
}
add_action( 'add_meta_boxes', 'global_notice_meta_box' );
関数を作成する必要があります。

global_notice_meta_box_callback以下は、メタボックスにテキスト領域フィールドを含む

関数のコードです。

global_notice_meta_box_callback

function global_notice_meta_box() {
    $screens = get_post_types();
    foreach ( $screens as $screen ) {
        add_meta_box(
            'global-notice',
            __( '全局公告', 'sitepoint' ),
            'global_notice_meta_box_callback',
            $screen
        );
    }
}
add_action( 'add_meta_boxes', 'global_notice_meta_box' );

アクションフックドラフトまたは公開として記事を保存する際にテキスト領域に保存されたプロセスデータをフックします。 Adding Meta Boxes to Post Types in WordPress save_post

メタボックスのテキスト領域に入力されたデータを使用するには、対応する記事コンテンツを保存するために表示される前にデータを表示します。
function global_notice_meta_box() {
    add_meta_box(
        'global-notice',
        __( '全局公告', 'sitepoint' ),
        'global_notice_meta_box_callback'
    );
}
add_action( 'add_meta_boxes', 'global_notice_meta_box' );

function global_notice_meta_box() {
    add_meta_box(
        'global-notice',
        __( '全局公告', 'sitepoint' ),
        'global_notice_meta_box_callback'
    );
}
add_action( 'add_meta_boxes_book', 'global_notice_meta_box' );
コード説明

最初に、

関数を作成し、記事コンテンツを含む

パラメーターを使用してglobal_notice_before_postフィルターに添付します。 the_content 関数の内部には、現在表示されている記事のwp_postオブジェクトが含まれるグローバル$content変数を含めます。

特定の記事のために保存されたグローバルアナウンスを$postに取得し、それらを

変数に保存します。

get_post_meta次に、アナウンスをdivにラップして、$global_notice変数に保存します。

最後に、をグローバルな発表で$noticeに接続して、実際の記事コンテンツに接続します。

以下は、記事の内容の前にグローバルな発表を含む記事のスクリーンショットです。 $notice $content

概要Adding Meta Boxes to Post Types in WordPress

このチュートリアルでは、WordPress管理画面にメタボックスを登録するさまざまな方法と、それらを記事タイプに制限する方法を学びました。

また、メタボックスにフォームフィールドを追加する方法と、記事を保存または公開するときに入力データを保存する方法も確認しました。 最後に、入力されたデータをMetaboxに配置する方法を紹介します。

将来の記事では、記事タイプの管理画面にコンテキストヘルプタブを追加する方法について説明します。

質問や提案がある場合は、コメントでお気軽にお問い合わせください。

WordPressの記事タイプにメタボックスを追加する際のFAQ
  • WordPressのメタボックスとは何ですか? WordPressのメタボックスは、管理インターフェイスに表示されるドラッグ可能なボックスです。これらのボックスは、追加の入力フィールドを表示するために使用され、ユーザーはさまざまな種類の記事の機能とレイアウトをカスタマイズできます。記事、ページ、カスタム投稿タイプに追加できます。メタボックスには、テキスト、チェックボックス、選択オプションなど、さまざまな種類のフィールドを含めることができます。

  • WordPressのカスタム投稿タイプにメタボックスを追加する方法は? WordPressのカスタム投稿タイプにメタボックスを追加するには、関数を使用する必要があります。この関数を使用すると、メタボックスID、タイトル、コールバック関数、記事タイプ、コンテキスト、および優先度を指定できます。コールバック関数は、メタボックスの内容を出力するために使用されます。 add_meta_box()

  • 単一の記事タイプに複数のメタボックスを追加できますか?

    はい。各メタボックスには、競合を避けるために一意のIDが必要です。 関数を複数回使用して、異なるパラメーターを使用して複数のメタボックスを追加できます。 add_meta_box()

  • メタボックスフィールドに入力されたデータを保存する方法は?

    メタボックスフィールドに入力されたデータを保存するには、アクションに関数を添付する必要があります。この関数は、NONCEをチェックし、現在のユーザーの権限を確認し、または関数を使用してメタボックスデータをデータベースに保存する必要があります。 save_post update_post_meta() add_post_meta()

  • フロントエンドにメタボックスデータを表示する方法は?
  • フロントエンドにメタボックスデータを表示するには、ループ内の

    関数を使用できます。この関数は、データベースからMetaboxデータを取得し、文字列として返し、テンプレートファイルに出力できます。 get_post_meta()

  • ページと記事にメタボックスを追加できますか?
  • はい。

    関数を使用する場合、記事タイプを「ページ」として指定して、ページにメタボックスを追加できます。 add_meta_box()

  • 記事タイプからメタボックスを削除する方法は?
  • 関数を使用できます。この関数には、パラメーターとしてメタボックスIDと記事タイプが必要です。 remove_meta_box()

  • 記事編集画面のメタボックスの位置をカスタマイズできますか?
  • はい。

    関数のパラメーターは、メタボックスの位置を決定します。考えられる値は、「通常」、「サイド」、「高度」です。 add_meta_box() context

    プラグインによって作成されたカスタム投稿タイプにメタボックスを追加できますか?
  • はい。カスタム記事タイプのスラッグを知り、
  • 関数の

    パラメーターとして使用する必要があります。 add_meta_box() post_type

    メタボックスとそのフィールドのスタイル方法は?
  • CSSを使用して、メタボックスとそのフィールドをスタイリングできます。 Metaboxには「ポストボックス」クラスがあり、Metaboxのフィールドに独自のクラスを追加できます。その後、これらのクラスをCSSで見つけてスタイルを適用できます。
  • 以上がWordPressにタイプを投稿するためにメタボックスを追加しますの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

    声明
    この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
    2025年に開発者が使用できる5つのWordPressプラグイン2025年に開発者が使用できる5つのWordPressプラグインApr 27, 2025 am 08:25 AM

    2025年のウェブサイト開発のための7つの必須ワードプレスプラグイン 2025年に一流のWordPress Webサイトを構築するには、速度、応答性、およびスケーラビリティが必要です。 これを効率的に達成することは、しばしば戦略的なプラグインの選択にかかっています。 この記事Highlig

    WordPressは何のために使用しますか?WordPressは何のために使用しますか?Apr 27, 2025 am 12:14 AM

    wordpresscanbeusedpurposesbeyondblogging.1)e-ocommerce:withwoocommerce、itcanbecomeafulloninestore.2)メンバーシップサイト:Pluginslikememberpressenable clusivecontentareas.3)ポートフォリオソイト:ThemeslikeasieasiestraololowStunnningStunnningStunnningStunnningStuntunnneDayOutssuntunnneaTuntunnnedrayOutuntuntuntunnnedraySuts

    WordPressはポートフォリオWebサイトを作成するのに適していますか?WordPressはポートフォリオWebサイトを作成するのに適していますか?Apr 26, 2025 am 12:05 AM

    はい、wordpressisexcellentforcreatingportfoliowebsite.1)itoffers numersportfolio cilems like'astra'astra'foreasycustomization.2)プラグインエレメントレメントレディングの装飾、思想的な態度環境を

    Webサイトをゼロからコーディングする上でWordPressを使用することの利点は何ですか?Webサイトをゼロからコーディングする上でWordPressを使用することの利点は何ですか?Apr 25, 2025 am 12:16 AM

    wordpressisadvasteousovercodingawebsitefromscratchdueto:1)easeofuseandfasterdevelopment、2)柔軟性と吸収性、3)strongCommunitySupport、4)組み込みインセンアンドマークティングツール、5)費用対効果、6)レシュリティアップデート

    WordPressがコンテンツ管理システムになっている理由は何ですか?WordPressがコンテンツ管理システムになっている理由は何ですか?Apr 24, 2025 pm 05:25 PM

    wordpressisacmsduetoitseaseaseofuse、customization、usermanagement、seo、andcommunitysupport.1)ofssextensiveationization throughthemesandplugins.3)ofsiscontensiveativeizationization withintentmanagement withintententmanagement with inting ustomization.3)revisustusersandpermissions.4)拡張型を提供します

    WordPressにコメントボックスを追加する方法WordPressにコメントボックスを追加する方法Apr 20, 2025 pm 12:15 PM

    WordPress Webサイトでコメントを有効にして、訪問者にディスカッションに参加し、フィードバックを共有するプラットフォームを提供します。これを行うには、次の手順に従ってください。コメントを有効にします。ダッシュボードで、設定に移動してgt;議論し、[コメントを許可]チェックボックスを選択します。コメントフォームの作成:エディターで、[ブロックの追加]をクリックし、コメントブロックを検索してコンテンツに追加します。カスタムコメントフォーム:タイトル、ラベル、プレースホルダー、ボタンテキストを設定して、コメントブロックをカスタマイズします。変更を保存します:[更新]をクリックしてコメントボックスを保存し、ページまたは記事に追加します。

    WordPressからサブサイトをコピーする方法WordPressからサブサイトをコピーする方法Apr 20, 2025 pm 12:12 PM

    WordPressサブサイトをコピーする方法は?手順:メインサイトにサブサイトを作成します。メインサイトのサブサイトのクローニング。クローンをターゲットの場所にインポートします。ドメイン名(オプション)を更新します。個別のプラグインとテーマ。

    WordPressのヘッダーの書き方WordPressのヘッダーの書き方Apr 20, 2025 pm 12:09 PM

    WordPressでカスタムヘッダーを作成する手順は次のとおりです。テーマファイル「header.php」を編集します。あなたのウェブサイトの名前と説明を追加します。ナビゲーションメニューを作成します。検索バーを追加します。変更を保存して、カスタムヘッダーを表示します。

    See all articles

    ホットAIツール

    Undresser.AI Undress

    Undresser.AI Undress

    リアルなヌード写真を作成する AI 搭載アプリ

    AI Clothes Remover

    AI Clothes Remover

    写真から衣服を削除するオンライン AI ツール。

    Undress AI Tool

    Undress AI Tool

    脱衣画像を無料で

    Clothoff.io

    Clothoff.io

    AI衣類リムーバー

    Video Face Swap

    Video Face Swap

    完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

    ホットツール

    SublimeText3 英語版

    SublimeText3 英語版

    推奨: Win バージョン、コードプロンプトをサポート!

    SecLists

    SecLists

    SecLists は、セキュリティ テスターの究極の相棒です。これは、セキュリティ評価中に頻繁に使用されるさまざまな種類のリストを 1 か所にまとめたものです。 SecLists は、セキュリティ テスターが必要とする可能性のあるすべてのリストを便利に提供することで、セキュリティ テストをより効率的かつ生産的にするのに役立ちます。リストの種類には、ユーザー名、パスワード、URL、ファジング ペイロード、機密データ パターン、Web シェルなどが含まれます。テスターはこのリポジトリを新しいテスト マシンにプルするだけで、必要なあらゆる種類のリストにアクセスできるようになります。

    Dreamweaver Mac版

    Dreamweaver Mac版

    ビジュアル Web 開発ツール

    メモ帳++7.3.1

    メモ帳++7.3.1

    使いやすく無料のコードエディター

    PhpStorm Mac バージョン

    PhpStorm Mac バージョン

    最新(2018.2.1)のプロフェッショナル向けPHP統合開発ツール