高卒の私が28歳から未経験でWEBデザイナーになった体験談

【WordPress】カスタムフィールドテンプレートの項目が空の場合は非表示にしたい

こんにちは、最近よく「痩せた?」と言われますが、元々痩せてます。
でも元気です。

今回は、結構ハマった、WordPressのプラグイン、カスタムフィールドテンプレートについての記事です。

スポンサーリンク


カスタムフィールドテンプレート、とても便利ですよね。
カスタムポストタイプUIとセットでかなりお世話になってます。

今回やりたかったことは、記事の最後に、リンク先のURLを入力するカスタムフィールド。
「詳しくはこちら」って感じで。

それ自体は余裕で実装(といってもグーグル先生に聞きながらですがw)出来るんですが、ハマり箇所は
「リンク先URLが未入力の場合は、【詳しくはこちら】も表示しないようにしたい」

4時間~5時間くらいでしょうか。。。

かなり工数取られてしまいました。

でも、実装できてみると、「え、これだけ?」って感じの内容でした。

phpがガシガシ書ける方には造作もないでしょうね。

まずは、カスタムフィールドテンプレートをそのまま表示したときの記述から。

カスタムフィールドのタイプはtextで、名前はSampleとしています。
[Sample]
type = text
size = 35
label = サンプル

<a href="<?php echo post_custom('Sample'); ?>">詳しくはこちら</a>

という感じです。

これで、サンプルに入力したリンクへ飛びますね。
でも、サンプルに何も入力していないときは、

<a href="">詳しくはこちら</a>

となってしまいます。
現在のページへのリンクになってしまいます。

そこで、イロイロと調べた結果、if文を使うことで解決いたしました。

コチラです。

<?php if(post_custom('Sample')) : ?>
<a href="<?php echo post_custom('Sample'); ?>">詳しくはこちら</a>
<?php else : ?>

<?php endif; ?>

これで、Sampleにリンク先URLを入力していない場合は、何も表示されません。

if(post_custom(‘Sample’)
これで、「もし、中身がある場合」ですね。

else
で、「それ以外の場合」。

かなり悩んだのですが、たったのこれだけでした。。。

WordPressマスターへの道はまだまだ遠そうです。

でも、今回の案件でとても成長したと思いますw(多分)

以上。

カスタムフィールドテンプレートの使い方はググれば沢山記事があるので、割愛いたしますm(__)m

参考サイト様
WordPress|カスタムフィールドで値無記入の場合、項目非表示

ありがとうございました。

スポンサーリンク


コメントを残す

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

CAPTCHA