質問
私のウェブサイトを作成する headwaythemes を使用います。ORDER BY custimize をたい
。
このファイルに見つかったコードです
。
'order-by' => array( 'type' => 'select', 'name' => 'order-by', 'label' => 'Order By', 'tooltip' => '', 'options' => array( 'date' => 'Date', 'title' => 'Title', 'rand' => 'Random', 'comment_count' => 'Comment Count', 'ID' => 'ID', 'meta_value_num' => 'Custom' // my code ) ),
このラインは、追加選択ボックスに表示されます。何も起こりません原因 http://codex.wordpress.org/Class_Reference/WP_Query そこが欠落しているような ‘meta_key = keyname’ これも必要になります
。
どのようにそれ存在?
、
array( oderby => meta_value_num, meta_key => images_likes ) => 'Custom' // my code
を試みたこれは動作しません、余り
。
いくつかは、meta_key を追加する方法を教えてもらえますか?
答え
ない仕草を使用しているテーマがこの一般的なアプローチ ( 子のテーマのカスタマイズを行ってきた希望) をする必要があります
クエリ引数を変更する必要があります。ここでいくつかの選択肢があるだと思う
-
作成余分なテキスト フィールド meta キーのメタ値と比較演算子
-
ハードコーディングなしこの動的にする必要がある場合
meta_query
を
両方のオプションをまず
orderby=meta_value_num
オプションが選択されているかどうかを確認したいです。分からないかどうかはこれは単純なチェック ボックスまたはドロップダウン] がこのオプションが選択されているかどうかをチェックする条件文を書くことができる必要があります
。
オプション弾丸上のポイント 1 で行く場合も 3 つのテキスト フィールドに入力された値がある場合をテストするための追加チェックを持つことができます
。
言ったように私はすでに、クエリ引数を変更する必要がありも必要がありますこれは、英語でのようなもの、条件付きステートメントに現在のクエリー引数を配置する:
if( orderby=meta_value_num is selected plus additional check if bullet point 1 option) { $args = array( 'post_type' => 'product', 'orderby' => 'OPTION KEY FOR THIS', 'meta_key' => 'color', 'meta_query' => array( array( 'key' => 'color', 'value' => 'blue', ), ), ); }else{ //DEFAULT THEME QUERY ARGUMENTS }
http://stackoverflow.com/questions/27892755/wordpress-order-orderby-parameters