<?php //親のカテゴリがあれば 親の名前を出力する
//カテゴリー・タグ情報を取得(slug,アーカイブページでターム名取得,タクソノミー名取得)
$term = get_term_by('slug',get_query_var( 'term' ),get_query_var( 'taxonomy' )
);
?>
<?php //$termにはいってる情報で分岐
if ( $term->parent ): // 親IDが入ってれば (子だったら)
$ido= $term->parent;
$taxs = get_query_var( 'taxonomy' );
$term2 = get_term($ido,$taxs);
$oya = $term2->name;
$oyaurl = get_term_link($term2->slug,$taxs);
?>
<h1 class="top_titel" style="padding-top:30px; text-align:center">
カテゴリ:
<a href=" <?php echo $oyaurl ?>">
<?php echo $oya;?></a> >
<?php single_term_title(); ?>
</h1>
<?php
else: //親だったらそのまま出力
?>
<h1 class="top_titel" style="padding-top:30px; text-align:center">
カテゴリ:
<?php single_term_title(); ?>
</h1>
<?php endif ?>
カテゴリー: Code コード
デザイン参考 まとめ
web用に保存で色々違い
文字など(特に細かい)のweb用に保存・書き出しする場合
色々と差がでるので
ここで4年目のフリーWEBデザイナーとしてまとめ
細い文字を奇麗に出すなら下記比較してみるといい。
全て同じデータである!
【結果:
本気出すなら【アウトライン化してフォトショ】にもっていって web用保存
イラレでもいい感じなので大丈夫なのは
細いのは【アウトラインせずにアートに最適】
もしくは太くなるが【アウトライン化してアートに最適】
イラレではアートに最適を使い
太くしたいときはアウトライン化する的に覚えておこう!
ぐちゃぐちゃっぽいのは
アウトラインせずに文字に最適となりました。
(イラレでアウトライン化したら アートも文字もほぼ同じ)
【極細】
アウトライン無し
イラレでweb用に保存
アートに最適

【細い】
アウトライン無し
イラレ書き出し保存
アートに最適
【ナチュラル】
アウトライン化
フォトショにコピペしてweb用に保存
【太い】
アウトライン化
イラレでweb用に保存
アートに最適 文字に最適
まだあった
====
アウトライン化
イラレ書き出し保存
文字に最適 (アートに最適 同じ)

アウトライン化
イラレ書き出し保存
アートに最適 (文字に最適 同じ)

=====
【駄目な例】
アウトライン無し
イラレでweb用に保存
文字に最適
アウトライン無し
イラレ書き出し保存
文字に最適
アウトライン無し
フォトショにコピペしてweb用に保存
サイトアイコン画像=ファビコンfavicon.ico
favicon.icoを
ドメイン最上階層におくだけ
http://allabout.co.jp/gm/gc/23917/
今回発見した分岐の際の注意点 同じroop phpでh3 h4使い分け
//この際 分岐のコードをまとめて
分岐させたいページのヘッダーもしくは上部でインクルードさせた方が速いわ
上記やってみたが!is_tax(¥¥)の解釈がまちごうとったわ これだと 多分それ以外全てを指示しとるわ
is_single(ポストタイプ)も出来んくて
is_singlar(‘ポストタイプだな’)
一応 d_h_3_4.php 作って
<?php include("d_h_3_4.php"); //hタグ分岐用?>
こうやったよ
内容は
<?php
if(is_page(787) || is_singular('jirei')):
$h = '<h4 class="jirei_sub_title">';
$h_e = '</h4>';
elseif(is_home() || is_tax()):
$h = '<h3 class="jirei_sub_title">';
$h_e = '</h3>';
endif;
?>
こんだけ
以上追記
ループ内でif(is_home())
ははホームとみなされない
ループ内の記事とされるっぽい
または
アーカイブページや固定ページで
クエリポスト後
(多分..タックスクエリ指定後)
ループ前に
if(is_tax())
if(is_page())
などやると
その指示をまともに受けない
タックスクエリでタクスを指定した場合そのis_tax(¥¥)
が指示される。
応用例として
カスタムポストで
どのアーカイブでも
同じ表示をさせるが
ページによってhタグのマークアップがh3とh4に分かれる
コンテンツは
roop_jirei.php
を読み込ませる
今回やった例は
クエリポストまでは各ページ
インクルードでroop_jirei.php
ページナビ
リセットクエリ
という感じ
もちろんタクソノミーアーカイブには
クエリポストはない
カスタムポストのTOPページは固定ページに
フォーチ{クエリポスト}にて各記事を表示
タックスクエリはcate_jirei
今回はこの固定ページのみループ内のタイトルがh4
他はh3がよかった
ホームにも新着カスタムポストを表示
そのため
ループ事例にはこう書いた
<?php
if(is_home() || !is_tax('cate_jirei')):
$h = '<h3 class="jirei_sub_title">';
$h_e = '</h3>';
else:
//タクスかてじれい はページ409とtaxに直書き
endif;
?>
ループコードは
<?php echo $h; ?> <i class="icon-dot-circled"></i> <a href="<?php the_permalink(); ?>"><?php the_title(); ?> </a> <?php echo $h_e; ?>
こうしてエコーでドルを出す。
固定ページには
タックスクエリ前に
<?php $h = '<h4 class="jirei_sub_title">'; $h_e = '</h4>';
タクスには
ループインクルード前に
<?php
if(is_tax('cate_jirei')):
$h = '<h3 class="jirei_sub_title">';
$h_e = '</h3>';
else:
//タクスかてじれい はページ409とtaxに直書き
endif;
?>
とした
めんどくセー
だでhtml5はすべてh1から始まるのかと思った。
セクションで区切りゃいいもんで
牧野作る際参考
http://www.prismacreative.jp/collections/collections_1.html
説明項目で関連制作事例の記事があれば 制作事例をみる と出す 新規コード
<?php $tarmname = '金銀プリント(メタリック)'; $taxonomy_name = 'make_cate'; $args = array( 'slug' => $tarmname ); $taxonomy_term = get_terms($taxonomy_name,$args); if(!is_wp_error( $taxonomy_term) && count( $taxonomy_term)): $url = get_term_link($tarmname, $taxonomy_name); ?> <div style="text-align:right; padding-top:15px; padding-bottom:15px; padding-right:30px;"> <a href="<?php echo $url; ?>" style="color:#FF3300; font-size:13px;">制作事例を見る ▶▶</a> </div> <?php endif; ?>
説明すると
タームネームを入れ替えるだけで(タクソノミーも指定)
使えるコード
タームスラッグ タクソノミーを入れて
get_tarmsでターム情報を取得
フォーチでまわすのが面倒なので
count()で記事があれば となってるのかな?
タームアーカイブurlはget_term_linkで直接入れてとる
タクソノミー ターム別 記事一覧 記事件数で全て見る
http://naoyu.net/wordpress/tax_query/583/
ここに感謝
そもそもタクソノミーのタームを全て取得するコードが
あまりメジャーじゃないから悩んだ。
これでカスタムポストの全記事をターム別に一覧表示できる。
【備考】
アーカイブページで表現できるのはポストタイプのみで
タクソノミーページの全記事アーカイブはタクソノミー – タクソノミー名では
そのテンプレートが使われなかった。
つまりそんな表示はできない
/タクソノミー名/ではぺーじがありません。
/タクソノミー名/ラベル名/で一覧が表示されたようにみえたが
タクソノミーphpで表示されただけで ラベル名の部分は適当なもじでも同じように全部でた。
つまりないからタクソノミーページを表示してるだけだ。
つまり
固定ページに書いて表現する。
デフォルトで この表現であったら良いのに。
そのうちなるかな?
タクソノミーのタームを全て取得するコード
$args = array(
'parent' => 0,
'hierarchical' => 0,
'orderby' => 'term_order', // Category Order and Taxonomy Terms Order を使用
'order' => 'ASC'
);
$taxonomy_name = 'cate_jirei';
$taxonomys = get_terms($taxonomy_name,$args);
if(!is_wp_error($taxonomys) && count($taxonomys)):
foreach($taxonomys as $taxonomy_term):
$url = get_term_link($taxonomy_term->slug, $taxonomy_name);
?>
<h3><div class="jirei_title"><i class="icon-doc-inv"></i>
<a href="<?php echo $url; ?>">
<?php
echo $taxonomy_term->name;
?>
</a>
</div>
</h3>
<?php endforeach; endif; ?>
$taxonomy_name = 'cate_jirei'; $taxonomys = get_terms($taxonomy_name,$args);
これだろう
あとは
フォーチでさらにクエリポストでまわした。
<?php
$args = array(
'parent' => 0,
'hierarchical' => 0,
'orderby' => 'term_order', // Category Order and Taxonomy Terms Order を使用
'order' => 'ASC'
);
$taxonomy_name = 'cate_jirei';
$taxonomys = get_terms($taxonomy_name,$args);
if(!is_wp_error($taxonomys) && count($taxonomys)):
foreach($taxonomys as $taxonomy_term):
$url = get_term_link($taxonomy_term->slug, $taxonomy_name);
?>
<h3><div class="jirei_title"><i class="icon-doc-inv"></i>
<a href="<?php echo $url; ?>">
<?php
echo $taxonomy_term->name;
?>
</a>
</div>
</h3>
<!----------------------BOX ALL----------------------------->
<div class="jirei_box_all">
<?php
$args = array(
'posts_per_page' => -1,
//'orderby' => 'menu_order',
//'order' => 'ASC',
'tax_query' => array(
'relation' => 'AND',
array(
'taxonomy' => $taxonomy_name,
'field' => 'slug',
'terms' => array( $taxonomy_term->slug ),
//'operator'=>'NOT IN'
),
),
//カテ例 'cat'=> 4,
//カテ複数例 'cat'=> array(4,6)
);
?>
<!----/宣言----->
<!----宣言2----->
<?php
query_posts( $args );
?>
<!--★★★ループ基本-->
<?php
if ( have_posts () ) :
while ( have_posts() ) :
the_post();
?>
<div class="jirei_box">
<div class="jirei_box_img" style="height:210px;">
<a href="<?php the_permalink(); ?>">
<?php
$title= get_the_title();
echo wp_get_attachment_image(get_post_meta($post->ID,"jirei_gazou",true),W210,0,array('alt'=>$title,'title'=>$title)); ?>
</a>
<?php //new
$days=30;
$today=date('U'); $entry=get_the_time('U');
$diff1=date('U',($today - $entry))/86400;
if ($days > $diff1) {
echo '<div class="new_icon"><img src="/img/new_icon/rainbow1.gif" width="31" height="12" alt="愛知春日井ホームページ制作NEW記事"></div>';
}
?>
</div>
<h4><div class="jirei_sub_title"><i class="icon-dot-circled"></i>
<a href="<?php the_permalink(); ?>"><?php the_title(); ?>
</a></div></h4>
</div>
<?php
endwhile;
endif;
?>
<?php wp_reset_query(); ?>
<div style="clear:both"></div>
</div class="jirei_box_all">
<div style="padding-top:30px;"></div>
<!----------------------BOX ALL----------------------------->
<?php endforeach; endif; ?>
原文はこうだ
<?php
$args = array(
'parent' => 0,
'hierarchical' => 0,
'orderby' => 'term_order', // Category Order and Taxonomy Terms Order を使用
'order' => 'ASC'
);
$taxonomy_name = 'item_category';
$taxonomys = get_terms($taxonomy_name,$args);
if(!is_wp_error($taxonomys) && count($taxonomys)):
foreach($taxonomys as $taxonomy):
$url = get_term_link($taxonomy->slug, $taxonomy_name);
$tax_posts = get_posts(array(
'post_type' => get_post_type(),
'posts_per_page' => 5, // 表示させたい記事数
'tax_query' => array(
array(
'taxonomy'=>'item_category',
'terms'=>array( $taxonomy->slug ),
'field'=>'slug',
'include_children'=>true,
'operator'=>'IN'
),
'relation' => 'AND'
)
));
if($tax_posts):
?>
<h2 id="<?php echo esc_html($taxonomy->slug); ?>" class=""><a href="<?php echo $url; ?>"><?php echo esc_html($taxonomy->name); ?></a></h2>
<ul>
<?php foreach($tax_posts as $tax_post): ?>
<li>
<span class="thumb">
<a href="<?php echo get_permalink($tax_post->ID); ?>">
<?php if(has_post_thumbnail($tax_post->ID)) {
echo get_the_post_thumbnail($tax_post->ID,'post-thumbnail');
} ?>
</a>
</span>
<span class="title"><?php echo get_the_title($tax_post->ID); ?></span>
</li>
<?php endforeach; ?>
</ul>
<?php
endif;
endforeach;
endif;
?>
さらにタクソノミー シーズンで表現
<?php
$args = array(
'parent' => 0,
'hierarchical' => 0,
'orderby' => 'term_order', // Category Order and Taxonomy Terms Order を使用
'order' => 'ASC'
);
$taxonomy_name = 'item_category';
$taxonomys = get_terms($taxonomy_name,$args);
if(!is_wp_error($taxonomys) && count($taxonomys)):
foreach($taxonomys as $taxonomy):
$url = get_term_link($taxonomy->slug, $taxonomy_name);
$this_term = get_query_var( 'term' );
$tax_posts = get_posts(array(
'post_type' => get_post_type(),
'posts_per_page' => 5, // 表示させたい記事数
'tax_query' => array(
array(
'taxonomy'=>'item_category',
'terms'=>array( $taxonomy->slug ),
'field'=>'slug',
'include_children'=>true,
'operator'=>'IN'
),
array(
'taxonomy'=>'season',
'terms'=>array( $this_term ),
'field'=>'slug',
'include_children'=>true,
'operator'=>'AND'
),
'relation' => 'AND'
)
));
if($tax_posts):
?>
<h2 id="<?php echo esc_html($taxonomy->slug); ?>" class=""><a href="<?php echo $url; ?>"><?php echo esc_html($taxonomy->name); ?></a></h2>
<ul>
<?php foreach($tax_posts as $tax_post): ?>
<li>
<span class="thumb">
<a href="<?php echo get_permalink($tax_post->ID); ?>">
<?php if(has_post_thumbnail($tax_post->ID)) {
echo get_the_post_thumbnail($tax_post->ID,'post-thumbnail');
} ?>
</a>
</span>
<span class="title"><?php echo get_the_title($tax_post->ID); ?></span>
</li>
<?php endforeach; ?>
</ul>
<?php
endif;
endforeach;
endif;
?>
さらにこの記事に書くが
何件以上あった場合には 全て表示を表示したい
まずタームなので
上記コードの
$taxonomys = get_terms($taxonomy_name,$args); を使い $count = $taxonomy_term->count;
とし
それで分岐 wp_reset_queryの前
リンク先は
$url = get_term_link($taxonomy_term->slug, $taxonomy_name);
を使いそのままえこー
演算子はここを参照
http://www.tohoho-web.com/js/operator.htm
<?php if($count > 9):
?>
<div style="text-align:right; padding-top:0px; padding-bottom:15px; padding-right:30px;">
<a href="<?php echo $url; ?>" style="color:#FF3300; font-size:13px;">すべて見る ▶▶</a>
</div>
<?php
endif;
?>
参考
タームIDで記事数取得: get_term( $chosen_id, 'タクソノミースラッグ' )->count タームスラッグで記事数取得: get_term_by( 'slug', 'タームスラッグ', 'タクソノミースラッグ' )->count 参照:codex.wordpress.org get_term get_term_by
カテゴリは
get_category($id)->category_count;
これらしい
未検証
わかった事 記事並び替え
まず
検索結果を並び替える場合
if ($query->is_search() ) ://method=”post” URLが動的
$sortset = (string)filter_input(INPUT_POST, ‘sort’);
と
foreach 繰り返す場合と繰り返さない場合があるとき
<?php foreach((array)$others as $other){?>
これだけでいけた
foreachというのは配列の数だけ繰り返すということですので $list[$key]; が1つの時には配列で返ってこないからエラーが出るということだと思います。 配列かどうかの判断はis_array()で判定させます。
Contact form 7 のフォームに自動的に記事タイトルを入れる方法
function my_form_tag_filter($tag){
if ( ! is_array( $tag ) )
return $tag;
if(isset($_GET['carname_title'])){
$name = $tag['name'];
if($name == 'carname_title')
$tag['values'] = (array) $_GET['carname_title'];
}
return $tag;
}
add_filter('wpcf7_form_tag', 'my_form_tag_filter', 11);
carname_titleを変える。
コンタクトに作成
<a href='/?page_id=9&carname_title=<?php the_title(); ?>'>
二つの場合
//Contact form 7 のフォームに自動的に記事タイトルを入れる方法
function my_form_tag_filter($tag){
if ( ! is_array( $tag ) )
return $tag;
if(isset($_GET['carname_title'])){
$name = $tag['name'];
if($name == 'carname_title')
$tag['values'] = (array) $_GET['carname_title'];
}
if(isset($_GET['car_url'])){
$name = $tag['name'];
if($name == 'car_url')
$tag['values'] = (array) $_GET['car_url'];
}
return $tag;
}
add_filter('wpcf7_form_tag', 'my_form_tag_filter', 11);
スペシャルコード 親要素 小要素がすべてアブソルートの場合の縦横比固定のレスポンシブ ギャラリーのレスポンシブで仕様方法
この場合
cssで
縦横指定
100%
autoでは
親の高さが指定しないと
レスポンシブされない。
そのための対応策として
無地もしくは透明な画像を
アブソルートの下にダミーで敷く
とし 画像はギャラリーの枠のDIVと同じ比率に 透明もしくは白だが
そして
.d-garabox{ width: 100%;height: auto; }
とすればよい
アーカイブページ等の記事の並び替え方法
参考 http://ateitexe.com/wordpress-archive-sort-popular/
まずパーマーリンクを
投稿名にしなければならん
ポストタイプアーカイブ
http://www.d-format1.com/car/
のようにケツにスラッシュで終わらなかん
—
固定ページでは
is_main_くえり がポストタイプを指定できなかったな〜
カスタムポストでなく ポストならできるかも
—
URLに
?sort=newerのように
?自分できめた文字=自分で決めた文字
というURLをつけるように
ボタンをつくる。
簡単にコードをまとめたやつを書こう
<?php
if ( is_archive() || is_search() ) { //アーカイブか検索ページだったら
global $wp_query;
$total_results = $wp_query->found_posts; //件数を取得しておく
//※ソールドアウトの設定確認
}
?>
</div></h2>
<?php //※1 2ページ目以降でボタンを押されても、1ページ目に飛ぶようにURLを指定
$url = explode('/', $_SERVER["HTTP_HOST"] . $_SERVER["REQUEST_URI"]);
$url_str ='http://'.$url[0].'/'.$url[1].'/';
$sortset = (string)filter_input(INPUT_GET, 'sort'); //信頼できないのでチェック
?>
<div class="change_bottan_arc">
取り扱い車両:<?php echo $total_results; ?>件<br />
並び替え:
<form method="get" action="<?php echo $url_str //※1?>">
<input type="hidden" name="sort" value="newer"/>
<input type="submit" value="新着順" />
</form>
</form>
<!--|
<form method="get" action="<?php echo $url_str //※1?>">
<input type="hidden" name="sort" value="older"/>
<input type="submit" value="古い" />
</form>-->
|
<form method="get" action="<?php echo $url_str //※1?>">
<input type="hidden" name="sort" value="car_price_low"/>
<input type="submit" value="価格が安い" />
</form>
|
<form method="get" action="<?php echo $url_str //※1?>">
<input type="hidden" name="sort" value="car_price_high"/>
<input type="submit" value="価格が高い" />
</form>
|
<form method="get" action="<?php echo $url_str //※1?>">
<input type="hidden" name="sort" value="car_km_low"/>
<input type="submit" value="走行距離が短い" />
</form>
|
<form method="get" action="<?php echo $url_str //※1?>">
<input type="hidden" name="sort" value="car_year_new"/>
<input type="submit" value="年式が新しい" />
</form>
|
<form method="get" action="<?php echo $url_str //※1?>">
<input type="hidden" name="sort" value="car_cc_big"/>
<input type="submit" value="排気量大" />
</form>
|
<form method="get" action="<?php echo $url_str //※1?>">
<input type="hidden" name="sort" value="car_cc_small"/>
<input type="submit" value="排気量小" />
</form>
</div>
<input type="hidden" name="sort" value="newer"/>
<input type="submit" value="新着順" />
この部分が基本
あとは
ファンクションに
イズメインクエリを指定してやる
//こっから本番
function SortArchive( $query ) {
//管理画面スルー
if ( is_admin() || ! $query->is_main_query() )
return;
//こっから
if ( $query->is_category() || $query->is_archive() ) {
$sortset = (string)filter_input(INPUT_GET, 'sort');
//if ( $sortset != 'older' && $sortset != 'car_price_high' && $sortset != 'car_price_low' ) {
if ( $sortset == 'new' ) {
$query->set( 'orderby', 'date' ); //新しい デフォ
}
elseif ( $sortset == 'older' ) { //記事古い
$query->set( 'orderby', 'date' );
$query->set( 'order', 'ASC' );
}
elseif ( $sortset == 'car_price_high' ) { //価格高い
$query->set( 'meta_key', 'car_price' );
$query->set( 'orderby', 'meta_value_num' );
}
elseif ( $sortset == 'car_price_low' ) { //安い
$query->set( 'meta_key', 'car_price' );
$query->set( 'orderby', 'meta_value_num' );
$query->set( 'order', 'ASC' );
}
elseif ( $sortset == 'car_km_low' ) { //走行距離が短い
$query->set( 'meta_key', 'car_km' );
$query->set( 'orderby', 'meta_value_num' );
$query->set( 'order', 'ASC' );
}
elseif ( $sortset == 'car_year_new' ) { //年式が新しい
$query->set( 'meta_key', 'car_year' );
$query->set( 'orderby', 'meta_value_num' );
$query->set( 'order', 'DESC' );
}
elseif ( $sortset == 'car_cc_big' ) { //排気量大
$query->set( 'meta_key', 'car_cc' );
$query->set( 'orderby', 'meta_value_num' );
$query->set( 'order', 'DESC' );
}
elseif ( $sortset == 'car_cc_small' ) { //排気量小
$query->set( 'meta_key', 'car_cc' );
$query->set( 'orderby', 'meta_value_num' );
$query->set( 'order', 'ASC' );
}
return;
}
}
add_action( 'pre_get_posts', 'SortArchive' );
こうだ!
空のカスタムフィールどの場合の表示は無視してそのままでるからそこは
制御してない
あとは
カレントを設定するコードを書いたらOKか?
こうした↓
デフォのアーカイブも新着がかれんとされるようにね
<?php //※1 2ページ目以降でボタンを押されても、1ページ目に飛ぶようにURLを指定
$url = explode('/', $_SERVER["HTTP_HOST"] . $_SERVER["REQUEST_URI"]);
$url_str ='http://'.$url[0].'/'.$url[1].'/';
$sortset = (string)filter_input(INPUT_GET, 'sort'); //信頼できないのでチェック
?>
<div class="change_bottan_arc">
取り扱い車両:<?php echo $total_results; ?>件<br />
並び替え:
<form method="get" action="<?php echo $url_str //※1?>">
<input type="hidden" name="sort" value="newer"/>
<?php if ( $sortset == 'newer' || $sortset == '' ): ?>
<input type="submit" class="sort_current" value="新着順" />
<?php else: ?>
<input type="submit" value="新着順" />
<?php endif; ?>
</form>
</form>
<!--|
<form method="get" action="<?php echo $url_str //※1?>">
<input type="hidden" name="sort" value="older"/>
<input type="submit" value="古い" />
</form>-->
|
<form method="get" action="<?php echo $url_str //※1?>">
<input type="hidden" name="sort" value="car_price_low"/>
<?php if ( $sortset == 'car_price_low' ): ?>
<input type="submit" value="価格が安い" class="sort_current" />
<?php else: ?>
<input type="submit" value="価格が安い" />
<?php endif; ?>
</form>
|
<form method="get" action="<?php echo $url_str //※1?>">
<input type="hidden" name="sort" value="car_price_high"/>
<?php if ( $sortset == 'car_price_high' ): ?>
<input type="submit" value="価格が高い" class="sort_current" />
<?php else: ?>
<input type="submit" value="価格が高い" />
<?php endif; ?>
</form>
|
<form method="get" action="<?php echo $url_str //※1?>">
<input type="hidden" name="sort" value="car_km_low"/>
<?php if ( $sortset == 'car_km_low' ): ?>
<input type="submit" value="走行距離が短い" class="sort_current" />
<?php else: ?>
<input type="submit" value="走行距離が短い" />
<?php endif; ?>
</form>
|
<form method="get" action="<?php echo $url_str //※1?>">
<input type="hidden" name="sort" value="car_year_new"/>
<?php if ( $sortset == 'car_year_new' ): ?>
<input type="submit" value="年式が新しい" class="sort_current" />
<?php else: ?>
<input type="submit" value="年式が新しい" />
<?php endif; ?>
</form>
|
<form method="get" action="<?php echo $url_str //※1?>">
<input type="hidden" name="sort" value="car_cc_big"/>
<?php if ( $sortset == 'car_cc_big' ): ?>
<input type="submit" value="排気量大" class="sort_current" />
<?php else: ?>
<input type="submit" value="排気量大" />
<?php endif; ?>
</form>
|
<form method="get" action="<?php echo $url_str //※1?>">
<input type="hidden" name="sort" value="car_cc_small"/>
<?php if ( $sortset == 'car_cc_small' ): ?>
<input type="submit" value="排気量小" class="sort_current" />
<?php else: ?>
<input type="submit" value="排気量小" />
<?php endif; ?>
</form>
cssも書いとく
/*-----------------------並べ替えボタン*/
.change_bottan_arc{ margin-top:20px; margin-bottom:10px;font-size: 80%;}
.change_bottan_arc form{display: inline!important;}
.change_bottan_arc input[type='submit']{
color: #aa9a85;
padding: 0;
margin: 0;
box-shadow: none!important;
background: none!important;
border: none!important;
font-size: 100%;
text-decoration: underline;
cursor: pointer;
}
.change_bottan_arc .sort_current{ font-weight: normal!important;
text-decoration: none!important;
color:#e60012!important}
投稿日や更新日のクエリdate_query
タックスクエリ
メタクエリ
に続き
発見しましたよ
date_query
クエリポストや
イズメインクエリなどで
重宝しそう
今回の目的は
ソールドアウトと更新した記事は
30日間はループに表示させるが
30日以降は表示させない
という設定で仕様予定
date_query
//投稿日が一年以上前で、一ヶ月以内に更新された記事を取得 $args = array( 'date_query' => array( array( 'column' => 'post_date_gmt', 'before' => '1 year ago', ), array( 'column' => 'post_modified_gmt', 'after' => '1 month ago', ), ), 'posts_per_page' => -1, ); $query = new WP_Query( $args );
省略時は投稿日時(’post_date’)となっている。’column’には’post_date’、’post_date_gmt’、’post_modified’、’post_modified_gmt’、’comment_date’、’comment_date_gmt’が指定できる。
$query = new WP_Query( array( ‘date_query’=>array( array( ‘inclusive’=>ture, ‘after’=>date(‘Y/m/d’, strtotime(‘-14 days’))) ) ) );
http://www.mspace.info/wordpress-4-251.html
くわしくは
http://codex.wordpress.org/Class_Reference/WP_Query
参考
http://elearn.jp/wpman/column/c20131030_01.html
以下
コードの参照になればとコピペ
//サイトを閲覧している日時に更新されたpostを取得
$today = getdate();
$args = array(
'date_query' => array(
array(
'year' => $today["year"],
'month' => $today["mon"],
'day' => $today["mday"],
),
),
);
$query = new WP_Query( $args );
//今週の記事を取得
$week = date('W');
$year = date('Y');
$query = new WP_Query( 'year=' . $year . '&w=' . $week );
//今週の記事を取得
$args = array(
'date_query' => array(
array(
'year' => date('Y'),
'week' => date('W'),
),
),
);
$query = new WP_Query( $args );
日〜土が1〜7に割り当てられています。
日 = 1
月 = 2
火 = 3
水 = 4
木 = 5
金 = 6
土 = 7
//平日(月〜金)9時〜17時に投稿された記事を取得
$args = array(
'date_query' => array(
array(
'hour' => 9,
'compare' => '>=',
),
array(
'hour' => 17,
'compare' => '<=',
),
array(
'dayofweek' => array( 2, 6 ),
'compare' => 'BETWEEN',
),
),
'posts_per_page' => -1,
);
$query = new WP_Query( $args );
ソースを見ているとcompareには下記の値が使えそうです。BETWEEN、NOT BETWEENあたりは特に便利そうですね。
'=', '!=', '>', '>=', '<', '<=', 'IN', 'NOT IN', 'BETWEEN', 'NOT BETWEEN'
続いてもう一つ。afterのように英語表記で年月日指定もできますが、beforeのような指定のほうがわかりやすいと思います。
inclusiveはafter, beforeのみに適用されるtrue/falseの値を取るパラメータで、trueであればafterやbefore自体のマッチした投稿を含む、falseであれば含まない、というパラメータになっています。
//2013/1/1〜2013/2/28に投稿された記事を取得
$args = array(
'date_query' => array(
array(
'after' => 'January 1st, 2013',
'before' => array(
'year' => 2013,
'month' => 2,
'day' => 28,
),
'inclusive' => true,
),
),
'posts_per_page' => -1,
);
$query = new WP_Query( $args );
http://makeityourself.org/howto/date_query/
クエリーポストまとめURL等
http://blog.sus-happy.net/201105/customfield-search/
meta_key と meta_value
meta_compare
「meta_compare」に、「=」(デフォルト)、「!=」、「>」、「>=」、「<」、「<」の指定をして異なる検索結果を得ることが出来ます。 meta_query 以下のように記述することで、「hoge」に「fuga」という文字列を含み、「foo」(配列)の値が「bar」を持たない記事を検索できます。 条件式の「compare」も追加されており、「LIKE」、「NOT LIKE」、「IN」、「NOT IN」、「BETWEEN」、「NOT BETWEEN」という曖昧な検索を行えるようになりました。 [php] query_posts( array( "meta_query" => array( array( "key" => "hoge", "value" => "fuga", "compare" => "LIKE" ), array( "key" => "foo", "value" => "bar", "compare" => "NOT IN" ) ) ) );[/php] 複数ソート むりくる http://www.seeds-std.co.jp/seedsblog/876.html http://globalit-academy.com/programming/wordpress%E3%81%A7%E8%A4%87%E6%95%B0%E3%81%AE%E3%82%AB%E3%82%B9%E3%82%BF%E3%83%A0%E3%83%95%E3%82%A3%E3%83%BC%E3%83%AB%E3%83%89%E3%82%92%E5%AF%BE%E8%B1%A1%E3%81%AB%E3%82%BD%E3%83%BC%E3%83%88%E3%81%99/
こりとり うちやま 等で使ったJS jquery.imageNavigation.js
69行目
overSrc = $("img", this).attr("src").replace(/^(.+)(\.[a-z]+)$/, "$1_on$2");
を
overSrc = $("img", this).attr("src").replace(/^(.+)(\.[a-z]+)$/, "img/galery/on.png");
キャラリー のサムネイル の方のオーバー部分
wp-custom-fields-search で各項目にクラスをつけるコード
昔使った 繰り返せば増えるコードを使用
wp-custom-fields-search-form.php
<?php if($title && !(@$params['noTitle'])){
echo $params['before_title'].$title.$params['after_title'];
}?>
<form method='get' class='<?php echo $formCssClass?>' action='<?php echo $formAction?>'>
<?php echo $hidden ?>
<div class='searchform-params'>
<?php $i = 1; // 追加?>
<?php foreach($inputs as $input){?>
<div class='<?php echo $input->getCSSClass()?> car_search<?php echo $i++; // 追加?>'><?php echo $input->getInput()?></div>
<?php }?>
</div>
<div class='searchform-controls'>
<input type='submit' name='search' value='<?php _e('Search','wp-custom-fields-search')?>'/>
</div>
<?php if(array_key_exists('showlink',$config) && $config['showlink']) { ?>
<div class='searchform-spoiler'><?php echo $spoiler_link; ?></div>
<?php } ?>
</form>
Jクエリで管理画面の順番を入れ替えるコード
おきかえはよくあるので
調べたので忘れない様に解説します。
function my_footer() {
}
add_action('admin_footer', 'my_footer');
で管理画面フッターに入れます。
echo '<script type="text/javascript">
</script>';
でスプリクトを差し込みます。
//<![CDATA[
//]]>
はCDATA セクションというらしく
ここにの文字は純粋な文字として処理されるそう。
http://wisdom.sakura.ne.jp/web/xml/xml/xml7.html参考
そして
jQuery(function(){
});
JQueryの実行?
ポイント
----------------------------------------------------------
$(A).prepend(B) はA要素の最後にB要素が追加される
要素の中身を他の要素の先頭に挿入する。
■具体的に最後に挿入したい場合一度とりだしてまた入れると最後に入れられる
(これは、全ての要素に対して appendChild を行うことに近く、
操作後はDOMに要素が追加された状態になる。らしい。
(多分たくさんあれば全部にいれるってこと?))
$(A).prependTo(B) ではB要素にA要素が挿入される。
$(A).append(B) A要素の最初にB要素が追加される
$(A).appendTo(B) B要素の最初にA要素が追加される
----------------------------------------------------------
jQuery("#normal-sortables").prepend( jQuery("#acf_497") );
でエディターの次のDIV#normal-sortables の先頭にアドバンスカスタムのBOXを
// カテゴリ->カスタムフィールド->公開 に毎回並び替える
function my_footer() {
echo '<script type="text/javascript">
//<![CDATA[
jQuery(function(){
jQuery("#normal-sortables").prepend( jQuery("#acf_497") );
こいつらはつかわせんけど記録用
jQuery("#normal-sortables").prepend( jQuery("#side-sortables").children("#tagsdiv-car_name") );
jQuery("#tagsdiv-car_name").prependTo(jQuery("#normal-sortables"));
jQuery("#normal-sortables").append(jQuery("#side-sortables").children("#submitdiv"));
jQuery("#submitdiv").appendTo(jQuery("#normal-sortables"));
});
//]]>
</script>';
}
add_action('admin_footer', 'my_footer');
//prependは先頭に挿入
レスポンシブで viewportの書き方
<meta name="viewport" content="width=device-width,initial-scale=1.0"> 春日井デフォルト <meta name="viewport" content="width=1020px" maximum-scale=1, >
freee で未決済を2回に分けて 入金が合った場合 入金とマッチでどのように登録すればよいか
自動で経理で「詳細登録」
「未決済の収入を選ぶ」で該当の未決済取りに引きにチェックを入れて、
今回の決済金額を入力して登録して頂く形になります。
shingoさん ありがとう






