2017-05-21 2 views
1

という名前のデータベースには、テーブルwp_postsが含まれています。私はPOST_TITLE列が充填されたフォームを送信するとデータベースのwp_postテーブルにカラムを追加するには?

function ru_meta_callback() { 
    wp_nonce_field(basename(__FILE__), 'ru_jobs_nonce '); 
    ?> 
    <form method="POST"> 
     <div> 
      <div class="meta-row"> 
       <div class="meta-th"> 
        <label for="date_listed" class="ru-row-title">Event Date</label> 
       </div> 
       <div class="meta-td"> 
        <input type="text" name="event_date" id="event_date" value=""/> 
       </div> 
      </div> 
      <div class="meta-row"> 
       <div class="meta-th"> 
        <label for="event_location" class="ru-row-title">Event Location</label> 
       </div> 
       <div class="meta-td"> 
        <input type="text" name="event_location" id="event_location" value=""/> 
       </div> 
      </div> 
      <input type="submit" value="Add Event"> 
     </div> 
    </form> 
    <?php 
} 

:また、私は次のような構造を持つメソッドのポストでフォームを作成するための機能を持っています。私の質問は、event_dateevent_locationの列を作成し、データを送信して元の投稿と一緒に新しい列を保存するにはどうしたらいいですか?

答えて

1

のためのあなたの追加データを保存するには、あまりにもwp_postmetaテーブルを使用することができます。しかし、あなたはその投稿の新しいメタを追加することができます。必要な新しいフィールドの管理パネルにフィールドを追加する場合。 add_meta_boxを使用して、投稿編集画面に新しいメタボックスを追加し、save_postフックでupdate_post_metaを使用することができます。希望が役立ちます。

メタフィールドは、meta_queryインデックスのWP_Queryで使用できます。しかし、wp_postsテーブルに追加されたカスタムフィールドを使用して、新しいメタが投稿に追加された投稿をフィルタリングまたは検索することはできません。

+0

新しいフィールドを追加するために '

'を使う必要はありません。WPがすべてのフィールドを表示するために使用しているフォームと衝突します。 –

1

あなたはあなたのポストに追加のデータを持っているいくつかのオプションがあり、
- >あなたが、ここのようにフィールドを追加するためのフックを使用することができますWordPress - Add extra column to wp_posts, and post to it
- >あなたはカスタムフィールドの使用はあなたのポストにデータを追加することができます。これには良いプラグインもあります。https://wordpress.org/plugins/advanced-custom-fields/
- >あなたはwp_postsテーブルに新しい列を追加する必要はありませんあなたのポスト

+0

私の現在のフォームの例を教えてもらえますか?私はこのトピックを読んでもまだ分かりません –

関連する問題