まず、soldout は今回カスタムフィールドのセレクトボックスで
20 : 販売受付中
1 : SOLD OUT
でやった。
YARPPを使いたい場合は
売り切れを表示する 一覧で最後に表示する
http://www.memo.d-marking.com/blog/2015/10/31/%E5%A3%B2%E3%82%8A%E5%88%87%E3%82%8C%E3%82%92%E8%A1%A8%E7%A4%BA%E3%81%99%E3%82%8B%E3%80%80%E4%B8%80%E8%A6%A7%E3%81%A7%E6%9C%80%E5%BE%8C%E3%81%AB%E8%A1%A8%E7%A4%BA%E3%81%99%E3%82%8B/
を参考に。
soldoutをタクソノミーで作成し、
yarppで 売り切れを除外できる。
並び替え等のファクションのクエリがみなへんこうとなるので注意
車はソートして見る事が基本でカーセンサーとかも関連時事なかったので
今回はなし。
並び替えの際に、たくすクエリで下記とした。
elseif ( $sortset == 'car_pay_money_low' ) { //総支払い価格安い 実際使わない $meta_query = array( 'relation' => 'AND', //meta_queryの配列が1つの時は指定しない 'meta_sort1' => array( 'key' => 'car_open', //キー 'type' => 'NUMERIC', //値のタイプ 数字 ), 'meta_sort2' => array( 'key' => 'car_pay_money', //キー 'type' => 'NUMERIC', //値のタイプ 数字 'value'=>'1', //ask設定 'compare'=>'>=', //総額1以上を表示 )); $orderby = array( 'meta_sort1' => 'DESC', 'meta_sort2' => 'ASC', // 'date' => 'DESC' ); $query->set('meta_query', $meta_query); $query->set('orderby', $orderby); }
通常の一覧部も
// サーチ ページ数 if ( $query->is_search() && $query->is_main_query() ) { $query->set('posts_per_page', 12 ); $query->set( 'meta_key', 'car_open' ); $query->set( 'orderby', 'meta_value_num' ); $query->set( 'order', 'DESC' ); //数値が低い順 } //アーカイブページ数 if ( $query-> is_tax() && $query->is_main_query() ) { $query->set('posts_per_page', 12 ); $query->set( 'meta_key', 'car_open' ); $query->set( 'orderby',array('meta_value_num' => 'DESC', 'date' => 'DESC') ); }
とした。car_open
ちなみに総額の部分は空欄だとaskでそうすると数値が入ってこないから
ソートで総額の時 最も安いがaskから出るので
上記総額ソートはやめて 車体価格のソートのみに
車体価格を目立たせた
タクソノミーにコメントアウトしてあるから
ファぬションにもうかいてあるので
必要があれば表示すれば並び替わる
タクソノミーは
タクソノミーページで分岐して
まんま 他のタクソノミーを誘導するのをはじめてやった
ギャラリーは
car で ギャラリーで 色々
http://www.memo.d-marking.com/blog/2017/05/11/car-%E3%81%A7%E3%80%80%E3%82%AE%E3%83%A3%E3%83%A9%E3%83%AA%E3%83%BC%E3%81%A7%E3%80%80%E8%89%B2%E3%80%85/
参考
高さをほぼ固定することで決まった。
絞込は
サイドバーでリストカテゴリにて
(タクソノミーを使って カテゴリ1=メーカー カテゴリ2=車両タイプ カテゴリ3=詳細項目として、管理画面から追加並びかえでき、クライアントによっては例えばロードスター専門店の場合 ほぼロードスターなので メーカーを年式 などに カテゴリ2までは自由に変更。詳細項目はシングルにも使ってるので統一 つまり2個のカテゴリは自由に変更
※タクソノミーでやってる場合は 絞り込み検索が自分でできるっぽい。これは後の課題)
http://kotori-blog.com/wordpress/refinement_search/
詳細項目で検索のみ
ドロップダウンで すぐ検索するやつ
<div class="car_serch_title_side" style="margin-top:24px;"> 詳細項目で選ぶ </div> <div style="padding-top:20px;"></div> <ul class="car_side_menu"> <?php $cats = get_categories(array( 'post_type' => 'car', 'taxonomy' => 'car_cat3' , 'hide_empty' => 0 ,//記事がなくとも表示 'depth' => 1,//子は表示しません。 'orderby' => 'order',//順番は指定します )); ?> <?php if(!empty($cats)): ?> <select name="cat" id="cat"> <option value=" "> 詳細項目で選ぶ</option> <?php foreach($cats as $cat): ?> <option value="<?php $cat_term = $cat->slug; echo get_term_link($cat_term ,'car_cat3'); ?>"><?php echo $cat->cat_name; ?>(<?php echo $cat->count; ?>)</option> <?php endforeach; ?> </select> <script type="text/javascript"> var dropdown = document.getElementById("cat"); function onCatChange(){ if(dropdown.options[dropdown.selectedIndex].value != ""){ location.href = dropdown.options[dropdown.selectedIndex].value; } } dropdown.onchange = onCatChange; </script> <?php endif; ?> </ul>
お気に入りプラグは ログインしてると、まだありませんが表示されないっぽい。
Duplicate Post は設定画面からカスタムポストも選べるが
カスタムフィールドスイートを使ってると
ループフィールド=今回はギャラリーのサムネイルに使ってるフォーチせずに1個目の画像 が前のものになるようなので
複製しないカスタムフィールドを指定すること
検索boxは
<div class="car_serch_page_side" style="margin-top:30px;"> <div class="car_serch_title_side"> <img src="<?php echo get_stylesheet_directory_uri(); ?>/d/img/car/side_serch.png" width="96" height="25" /> </div> <div class="search_box"> <form role="search" method="get" id="searchform" action="/" > <input type="text" value="<?php the_search_query(); ?>" name="s" class="s" /> <input type="hidden" name="post_type" value="car"> <input type="submit" class="searchsubmit" value="" /> </form> </div> </div>
とした。
value="<?php the_search_query(); ?>"
とすると、検索後も検索ワードが検索ボックスに入ったままになる