web-dev-qa-db-ja.com

カスタムフィールドのデータ型を定義することは可能ですか?

"セミナー"という名前の新しい "カスタム投稿タイプ"を追加します。 3つのカスタムフィールドを定義しています

  1. ロケーション
  2. 始まる時間
  3. 終了時間

StartTimeとEndTimeは日付を格納する予定です(サプライズ、サプライズ)。 WordPressにこれらを日付のように扱うように指示して、それらを並べ替えることができるようにするにはどうすればよいかと思います。

私はWPがとても初めてなので、これが愚かな質問である場合はご容赦ください。

3
jessegavin

こんにちは。

基本的にいいえ。しかし、WP_Queryではmeta_valueで並べ替えることができるので、並べ替えることができます。どのような形式で日付を保存しているのかわかりませんが、MySQLが順序付けできるものにする必要があります。単純なUnixタイムスタンプで問題ない場合は、次のようにします。

$query = new WP_Query( 'post_type=seminar&meta_key=start_time&meta_value=' . time() .  '&meta_compare=>' );

「今」以降の開始日をもってすべてのセミナーを受けるでしょう

2
Joe Hoyle

カスタムフィールドの値はそのまま保存されます - そして、投稿を取得するためにJoeの回答を使用することができますが、開始時間を使用して "ソート"するためには次のようなものを使用する必要があります。

$posts = query_posts($query_string. '&orderby=meta_value&meta_key=start_time&order=DESC' ); 

More fieldsというプラグインがあります。コードを書かずにこれを実行できると思います。カスタム投稿タイプにのみ新しい入力ボックスを追加してから、詳細オプションで日付を選択できます。

1
rfair404