質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.37%
WordPress

WordPressは、PHPで開発されているオープンソースのブログソフトウェアです。データベース管理システムにはMySQLを用いています。フリーのブログソフトウェアの中では最も人気が高く、PHPとHTMLを使って簡単にテンプレートをカスタマイズすることができます。

PHP

PHPは、Webサイト構築に特化して開発されたプログラミング言語です。大きな特徴のひとつは、HTMLに直接プログラムを埋め込むことができるという点です。PHPを用いることで、HTMLを動的コンテンツとして出力できます。HTMLがそのままブラウザに表示されるのに対し、PHPプログラムはサーバ側で実行された結果がブラウザに表示されるため、PHPスクリプトは「サーバサイドスクリプト」と呼ばれています。

Q&A

0回答

1156閲覧

WordPressのターム項目を独自に追加して、出力する方法について

Hotti

総合スコア14

WordPress

WordPressは、PHPで開発されているオープンソースのブログソフトウェアです。データベース管理システムにはMySQLを用いています。フリーのブログソフトウェアの中では最も人気が高く、PHPとHTMLを使って簡単にテンプレートをカスタマイズすることができます。

PHP

PHPは、Webサイト構築に特化して開発されたプログラミング言語です。大きな特徴のひとつは、HTMLに直接プログラムを埋め込むことができるという点です。PHPを用いることで、HTMLを動的コンテンツとして出力できます。HTMLがそのままブラウザに表示されるのに対し、PHPプログラムはサーバ側で実行された結果がブラウザに表示されるため、PHPスクリプトは「サーバサイドスクリプト」と呼ばれています。

0グッド

0クリップ

投稿2021/06/16 05:24

初心者のため、ご教授いただければ助かります。
WordPress5.7.2にて、プラグイン Custom Post UIでカスタム投稿タイプ、カスタムタクソノミーを作り、さらにタクソノミー登録の「名前」「スラッグ」「親」「説明」の項目のほかに別途項目「単価」という項目を独自で新規追加しました(ターム:term_unitprice)。
ここまでは情報を検索しながらなんとかできたのですが、その新規追加したタームの情報が取得できません。ターム名、タームの説明文まではforeachで取得できたのですが、新規追加したターム項目内容(term_unitprice)が出力できませんでした。
この点でもし何かヒント等いただければありがたいのですが、ご教授いただければ幸いでございます。
よろしくお願いいたします。

html

1function create_item_name() { 2 $keyname = 'estimate_item'; 3 global $post; 4 5 // 保存されているカスタムフィールドの値を取得 6 $get_value = get_post_meta( $post->ID, $keyname, true ); 7  $custom_fields = get_post_custom(); // 指定した投稿のすべてのカスタムフィールド情報を取得 8  $my_custom_field = $custom_fields['estimate_item']; // 'estimate_item'のカスタムフィールドの値を取得 9 10foreach ( $my_custom_field as $key ) { 11 $key = get_term($key); 12 13 // ターム名取得 14 $item_name = $key->name; 15 16 // タームの説明文取得 17 $item_kikaku = $key->description; 18 19    // タームの新規項目「単価」取得 20 $item_unitprice = $key->term_unitprice; 21     ・ 22     ・ 23     ・

情報不足かもしれませんが、どうぞよろしくお願いいたします。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

CHERRY

2021/06/16 09:28

> 別途項目「単価」という項目を独自で新規追加しました(ターム:term_unitprice)。 は、どのように定義されたのでしょうか?
Hotti

2021/06/16 23:56

ご連絡ありがとうございます。 term_unitpriceにつきましては下記のように定義いたしました。 長々と恐縮ですが、ご確認いただければ幸いです。 よろしくお願いいたします。 //単価(term_unitprice)の入力欄を追加(タクソノミー:estimate_items) function add_term_fields() { echo '<div class="form-field"> <label for="term_unitprice">単価</label> <input type="text" name="term_unitprice" id="term_unitprice" value="" size="40"> <p>単価を入力してください。</p> </div>'; } add_action('estimate_items_add_form_fields', 'add_term_fields'); // 編集画面に追加 function edit_term_fields( $tag ) { // すでにtermmetaに値があれば取得 ============================================================ $value = get_term_meta($tag->term_id, 'term_unitprice', 1); //htmlソース echo '<tr class="form-field"> <th><label for="term_unitprice">単価</label></th> <td> <input type="text" name="term_unitprice" id="term_unitprice" size="40" value="'.$value.'"> <p class="description">単価を入力してください。</p> </td> </tr>'; } add_action('estimate_items_edit_form_fields', 'edit_term_fields'); // 値を保存 ============================================================ function save_terms( $term_id ) { if (array_key_exists('term_unitprice', $_POST)) { update_term_meta( $term_id, 'term_unitprice', $_POST['term_unitprice']); } } add_action( 'create_term', 'save_terms' ); //新規追加用フック add_action( 'edit_terms', 'save_terms' ); //編集ページ用フック
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだ回答がついていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.37%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問