

## 前提・実現したいこと

WordPressを利用し、あるジャンルの話題を投稿できるSNS的なサービスを作っています。その投稿フローの中で、すでに登録されている情報（カスタムフィールド）を編集フォームのドロップダウンメニューに表示させる方法で苦戦しています。

## 問題が発生するまでの流れ・手順

▼投稿フォームの動作は以下の通りです  
新規投稿の場合：[投稿フォーム] -> [プレビュー] -> [投稿完了ページ]  
編集の場合：[投稿済み記事] -> [編集フォーム] -> [プレビュー] -> [編集完了ページ]

上記の[投稿フォーム]と[編集フォーム]は同じファイル（以下のコード）になります。

## ソースコード

[code]

    //すでに投稿されたカスタムフィールドをデータベースから取得
    <?php
    $fruits = get_post_meta( $post->ID , 'fruits' , true );
    ?>
    
    //上記の値を代入し、カスタムフィールドがすでに登録されている場合とされていない場合に条件分岐
    <?php
    if (isset($fruits)){
    $selected = $fruits;
    }else{
    $selected = "フルーツの種類";
    }
    ?>
    
    //フォームの内容
    <p class="post-form__fruits">
    <select name="fruits">
    <option selected value="<?php echo $selected; ?>"><?php echo $selected; ?></option>;
    <option value="フルーツの種類">フルーツの種類</option>
    <optgroup label="柑橘類">
    <option value="みかん">みかん</option>
    <option value="グレープフルーツ">グレープフルーツ</option>
    
[/code]


CC BY-SA 4.0
2019-03-31T09:45:39.987
53840
2019-03-31T09:54:41.190
2020-06-17T08:14:45.997
-1
32728
question
php mysql wordpress
編集フォームのドロップダウンメニューにすでに登録された値を表示する