稼げる副業でお小遣いを稼ぐ方法

稼げる副業でお小遣いを稼ぐだけじゃなく、料理や映画アニメ、趣味などメモにも使っているブログ

副業で稼ぐ仕組みの作り方

Custom Field Suiteのサブループ内で未入力の内容のみを非表示にする方法

投稿日:2022年7月30日 更新日:

ワードプレスでCFSのサブループ(ループ内ループ)でトラブルが発生しました。

はじめに

ワードプレスのプラグインCustom Field Suiteを使用してカスタムフィールドを取得しているのですが、未入力の情報は取得しないと言う内容がサブループ内でする方法をご紹介いたします。

注意事項

カスタムフィールドの呼び出しに気を付けてください

やりたい事

今回はtableで情報を表示させたいのですが、クライアント様側で入力した内容は表示、未入力の場合は表示させないの2パターンを考えなければいけません。

表示させたい場合

<table>
<tr>
<th>メニュー名</th>
<td>金額</td>
</tr>
<tr>
<td colspan="2">説明分が入ります</td>
</tr>
</table>

表示させたくない場合

<table>
<tr>
<th>メニュー名</th>
<td>金額</td>
</tr>
</table>

簡単そうに見えて解決するのに非常に時間がかかりました。

つまずいた内容

Custom Field Suiteの表示と分岐の入力がない場合の分岐にも書かせて頂きましたが、非表示させたい内容の箇所を

<?php if(get_post_meta($post->ID,'カスタムフィールド名',true)): ?>
<tr>
<td colspan="2">
<?php echo $cfs->get('カスタムフィールド名'); ?>
</td>
</tr>
<?php endif; ?>

こういった形で表示させれば問題ないかなと思いましたが「何故かサブループ(ループ内ループ)ではget_post_metaが使用できなかった」です。

解決方法

2-3時間ほどググってわかった内容ですが、以下の通りにすると解決しました。
念のため全体を見ながらの方がわかりやすいです。

<?php
$fields = $cfs->get('親ループ');
foreach ((array)$fields as $field) {	

	echo '<h2>'.$field['タイトル'].'</h2><table>';

    $fieldloops = $field['子ループ'];
    foreach ($fieldloops as $fieldloop) {

	echo '<tr><th>'.$fieldloop['メニュー名'].'</th>';
	echo '<td>'.$fieldloop['価格'].'</td></tr>';
	
$subloop = $fieldloop['説明'];
if($subloop) :
echo '<tr><td colspan="2">'.$fieldloop['説明'].'</td></tr>';
endif;
    }
	echo '</table>';
}
?>

こういった記載方法だと未入力の情報に関しては非表示にする事が出来ました。
注意点としてはカスタムフィールドの呼び出しを$field[”]と$fieldloop[”]の2種類使っている事でしょうか。

以上でCustom Field Suiteのサブループ内で未入力の内容のみを非表示にする方法の説明を終了致します。

さいごに

今回もGoogleさんに助けられました

色々な技術的なブログを拝見させて頂きましたが、ほとんどがCustom Field Suiteの表示と分岐の入力がない場合の分岐に書かれている事で止まってしまっていました。

ブログを書いている人はさらに前に進んだカスタマイズをしていない方が多いんでしょうね。

-副業で稼ぐ仕組みの作り方
-, , ,

執筆者:


comment

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください

関連記事

プラグインのインストール方法【ワードプレス】

ワードプレスは必要時に応じてプラグインをインストールする事でさまざまな機能を追加する事が可能です。今回はインストールの方法をご紹介いたします。 関連記事: Googleアドセンスから警告がきました ワ …

稼げるサブキーワードの探し方

例えばSEO対策などでメインキーワードが決まっている場合、単一だけでなくサブキーワードもヒットさせたい時の探し方です。 関連記事: 検索結果に著者情報を掲載する方法 【2019年版】googleショッ …

Contact Form 7の送信元をメールアドレスにする方法【さくら】

コンタクトフォーム7からのメールのメールアドレスと送信元が違うケースって結構ありますよね。 関連記事: WP-Membersのインストールと設定方法 ワードプレス全体にパスワードをかけるPasswor …

ECキューブで販売する為の最低限の設定その2

その1が終わったら次のこの2を見て下さいね。 関連記事: ECキューブに商品登録する時はCSVを使おう 【EC-CUBE】管理画面に色々な箇所のファイルを呼び出す方法 ネスタリゾートを100%遊びたい …

【WordPress】htaccessでhttpsにリダイレクト

WordPressでhttpsにした際にhtaccessを使ってリダイレクトさせる方法をご紹介いたします。 関連記事: ECCUBE2系から4系で商品一覧ページのリダイレクト カスタムフィールドで画像 …

新着記事一覧

2024/05/02

岸辺露伴は動かない

2024/05/01

シティーハンター

2024/04/26

魔法使い 俺

2024/04/25

僕のヤバイ妻

2024/04/24

BTOOOM!