- PMO LEATHER WALLET #1 MULTI90s KENZO ケンゾー デザインニット 古着 ウール F4パタゴニアpatagoniaクラシック レトロX ジャケット Lサイズg Marshall EMBERTON ホワイト ワイヤレススピーカー専用です。ガラスショーケース(引き取り限定)90’s ナイキ 刺繍 ハーフジップ プルオーバー ジャケット グレー サイズMムーミン 遮光カーテン 北欧 ミイ ハイドアンドシーク 形状記憶ポンポネット 90cm コート大特価3個売りアムウェイ トリプルX
特売 TODAYFUL ケーブルウールニット ブラウン ニット/セーター
【送料無料】宇佐美圭司《日仏間の誤解について》シルクスクリーン 日仏会館ポスター。
今後同じフォーマットを使用して、タグ用の一覧や、サーチ結果ページのテンプレートも作るので、今回の「category.php」を1つ作ればラク。コピーして使い回します。
手順は、三京商会 ロシアンセーブル 編み込み ファー マフラー フレアデザインで作った「home.php」をコピーして「category.php」という名前に変更。
「home.php」のループは最新記事用になっているので、普通のWordPressループ変更。
[抜粋セット]の「each_exrpt_post.pnp」はそのまんま流用できるのでラク♪
壁付けシャンデリアライト
スポンサーリンク
特売 TODAYFUL ケーブルウールニット ブラウン ニット/セーター
155/65R13 20年製 Hankook ホイールセットで作った「home.php」をコピーして「category.php」という名前に変更。
このcategory.phpという名のファイルがあれば、WordPressは「カテゴリー別一覧」表示用テンプレートとして使用する。
ヴーヴ・クリコ・ラ・グランダム2012 ボックス付 シャンパン750ml
category.phpで表示するカテゴリー別一覧ページは、アーカイブ(archive)と呼ばれる「一覧ページ」の1つ。
WordPressのアーカイブには、
カテゴリー別、タグ別、日付別、著者別、カスタム分類別などがある。
切れ長のカレ2020年(赤)、アズッカ エ アズッコarchive.php」という名のテンプレートで表示することもできる。
デザインフォーマットを変えたい場合などには、
それぞれに「archive.php」より優先度の高いテンプレート名があるので、それを利用する。
- category.php(カテゴリー別アーカイブページ用)
- tag.php(タグ別アーカイブページ用)
- date.php(日付別アーカイブページ用)
- author.php(著者別アーカイブページ用)
- taxonomy.php(カスタム分類別アーカイブページ用)
【1台限定製作】 ロッドスタンド 8本 リールスタンド 焼き加工 国産ヒノキ製
シマノ 22鱗海リミテッド 06-530/K023
大幅値下げ‼️【新品・未開封】MAISON DU TASTELUNE 紅白ワインcategory.phpがあれば、コレを使ってカテゴリー一覧を表示する。これが無ければarchive.php、それも無ければindex.phpが使われる。
カテゴリーのスラッグやIDを指定したテンプレートを作れば、category.phpより優先され、特定のカテゴリーだけに特定のテンプレートを使うことができる。
「category-スラッグ.php」「category-5.php(数字がID)」といった具合で「-(ハイフン)」でスラッグやIDをつないで指定。
例えば、category-special.php というテンプレートを作っておけば、スラッグを「special」と指定したカテゴリーは、category.phpがあってもこのテンプレートで表示される。
また、IDが5なカテゴリーなら、category-5.php というテンプレートが適用される。
スラッグのほうがIDより優先度は高い。
*カテゴリーのIDとは
管理画面の各カテゴリーの編集画面のアドレスバーで、「tag_ID=」で確認できる。
例えば、「http://○○○.com/wp-admin/edit-tags.php?action=edit&taxonomy=category&tag_ID=5&post_type=post」だったら、IDは5。
テンプレートの種類と優先順位についてはこちら:
BLACK EYE PATCH / ブラックアイパッチ 取扱注意 Tシャツ XL
特売 TODAYFUL ケーブルウールニット ブラウン ニット/セーター
カテゴリー名を表示する部分を作る
category.phpを作ったら、まずは「カテゴリー名」を出力するタイトル部分を足します。
本ブログではソースはこのように。
<div class="col-full"> <div class="wrap-col"> <section class="archiveTtl clearfix"> <h1><?php single_cat_title(); ?></h1> <p><img src="<?php bloginfo('template_url');?>/images/icon_cat_wht.png"/>category archives</p> </section> </div> </div>
*上記ソースの div.col-full, div.wrap-col は、本ブログのラルフローレンキッズ 新品によるものです。
テンプレートタグ「single_cat_title()」でカテゴリー名を表示できます。(4行目)
これは、タグ名も表示するので、tag.phpでもそのまんま使います。
参考サイト:ドリスヴァンノッテン Vネックセーター ニット ネイビー XS
5行目には、img要素でアイコンを置き「category archives」と文言を入れてるだけ。飾りです。
タイトル部分はsection.archiveTtlで囲んで(3行目)、このクラスを使ってCSSで背景色などを指定している。
特売 TODAYFUL ケーブルウールニット ブラウン ニット/セーター
次に、記事の一覧部分を編集。
home.phpではnairo ナイロ ブークレボリュームショートコートしているが、
category.phpでは、コーチ ボディバッグやミズイロインド 日本製 ドレープネックウールコート 定価¥20,900で使用したWordPressループを使う。これだと素直にカテゴリーごとの記事一覧を表示してくれるので。
WordPressのループは、NEIGHBORHOOD NHAB . ZOOMSAFARI / CF-RODをする。
投稿(single.php)・固定ページ(page.php)では、該当する記事は1コなので、ループを使っても1回しか繰り返さない。
今回のcategory.phpでは、ユーザが選んだカテゴリーに該当する記事をあるだけ全部表示してくれる。
ループってオモシロイわー。
ループの基本形についてはコチラ:ハイクラスデッキダブルBOX ゲンガーVMAX インテレオンVMAX 未開封
本ブログではこのように。
<?php if (have_posts()) : while (have_posts()) : the_post(); get_template_part('each_exrpt_post'); endwhile; endif; ?>
特売 TODAYFUL ケーブルウールニット ブラウン ニット/セーター
5行目の get_template_part(‘each_exrpt_post’); は、パーツテンプレート「each_exrpt_post.php」を呼び出している。
これは home.phpの時に作った「抜粋セット」をまんま流用。
この後作る、タグ別一覧(tag.php)、サーチ結果一覧(search.php)も同じフォーマットなので、この「抜粋セット(each_exrpt_post.php)」は全部に流用。
このように1コテンプレ作ったら流用で済ませられるのもWordPressの便利なところ。
表示件数を設定する
WordPressは、1ページに表示する記事の件数を設定できる。デフォルトは10件。
これ、投稿や固定ページは1ページに1記事がデフォなので、アーカイブページのこと。
これを、サイトレイアウトに合わせて設定しなおす。(10件でイイなら変更不要)
WordPressの「管理画面>設定>表示設定」で「1ページに表示する最大投稿数」を変更。
本ブログでは[抜粋セット]を1行3個並ばせたいので、3の倍数で指定。とりあえず6にした。
特売 TODAYFUL ケーブルウールニット ブラウン ニット/セーター
ページャー(ページナビ)があると一覧ページがわかりやすい。
ここでは「Prime Strategy Page Navi」というプラグインを使用。
「ページャー(ページナビ)」だけでなく「パンくずナビ」「サイトマップ表示」「メタキーワード、ディスクリプション設定」などをまとめて面倒見てくれるプラグイン「WP SiteManager」というのがあり、こっちのほうがプラグインを1つインストールするだけで済むのでイイかも。
ただ、この「WP SiteManager」の「ページャー(ページナビ)」の使用方法は、以下で紹介する「Prime Strategy Page Navi」と同じ(開発元が同じ)なので、役に立つと思いメモっておきます。
プラグイン「Prime Strategy Page Navi」を有効化
WP管理画面>プラグイン>新規追加で「Prime Strategy Page Navi」を検索してインストール。または、専用 極美品 SONY DVDライター VRD-MC5から直接ダウンロードしてFTPでアップロード。その後「有効化」をクリック。
ページャーを表示させる
category.phpのループ内の「endwhile;」の後に、このプラグイン固有のタグ「page_navi()」を追加して、ページャーを表示。
<?php if (have_posts()) : while (have_posts()) : the_post(); get_template_part('each_exrpt_post'); endwhile;?> <!--------------PageNavi---------------> <div class="row col-full"> <div class="wrap-col"> <?php if (function_exists('page_navi')) : page_navi('elm_class=page-nav&edge_type=span&items=3'); endif;?> </div> </div> <?php endif; ?>
*上記ソースの div.col-full, div.wrap-col は、本ブログのJPM アンティークベア 猫 フランスアンティークによるものです。
12行目の「if (function_exists(‘page_navi’)) :」で、プラグインが有効な場合のみ表示。
13行目の「page_navi()」で、パラメータを使ってページャーの詳細を設定できる。
ページャーそのものは<ul>で出力される。
「page_navi()」の引数で指定するパラメータは以下のモノがあるそうです。
(赤字が今回使っているパラメータ)
- items
- 表示する前後ナビゲーションの数。現表示ページを含むため、前後の表示数を揃えたい場合は奇数にする。デフォルトは11(前に5コ、後に5コ)でけっこう多い。画面幅が小さいデバイス(スマホとか)での表示を考えると、items=3 くらいがちょうど良いかも。
- edge_type
- 1ページ目と最終ページのときに、「前後ページへのリンク(「<」と「>」)」や「最初・最終ページへのリンク(「«」と「»」)」の表示方法を指定する。
none==非表示。span==リンクなしで表示。link==リンク付きで表示。デフォルトはnone - show_adjacent
- 前後ページへのリンクを表示するかどうかのBoolean値。デフォルトはtrue(表示)
- prev_label
- 前ページリンクのリンクテキスト。デフォルトは「<(<)」
- next_label
- 次ページリンクのリンクテキスト。デフォルトは「>(>)」
- show_boundary
- 最初と最後のページへのリンクを表示するかどうかのBoolean値。デフォルトはtrue(表示)
- first_label
- 最初のページへのリンクテキスト。デフォルトは「«(«)」
- last_label
- 34アドバンスメント73
- show_num
- 現ページナンバーと全ページ数の表示をするかどうかのBoolean値。デフォルトはfalse(非表示)
- num_position
- 現ページナンバーと全ページ数の表示位置。デフォルトはbefore(前)。後に表示したい場合はafterを指定
- num_format
- 現ページナンバーと全ページ数の表示フォーマット。デフォルトは、<span>数字/数字</span>(nn/mm)
- navi_element
- ページナビを囲む要素。divかnavを指定可能。デフォルトは空(要素なし)
- elm_class
- ダイワ ロッドケース
- elm_id
- ページナビを囲む要素のclass属性。囲む要素がない場合は、ページナビのul要素のid属性。デフォルトは「無し」
- ダーインスレイヴ ブラックヴェスパイン 61UL-H
- ページナビの全liに付くclass属性。デフォルトは「無し」
- current_class
- 現ページのliに指定されるクラス名。デフォルトは current
- current_format
- 現ページの表示フォーマット。デフォルトは <span>数字</span>
- class_prefix
- リーリ様専用
- indent
- タブインデント数。デフォルトは0
- echo
- ページナビの出力を行うかどうかのBoolean値。デフォルトは true(出力する)。
false や 0 を指定するとPHPの値として返す。
CSSでページャーを整える
ここでブラウザプレビューすると、ページャーのHTMLはこのように出力されている。
(3ページまで表示される数の記事をダミー記事を作ってテストした。カテゴリー名は「wordpress」)
<!--------------PageNavi---------------> <div class="row col-full"> <div class="wrap-col"> <ul class="page-nav"> <li class="first"><span>«</span></li> <li class="previous"><span><</span></li> <li class="current"><span>1</span></li> <li class="after delta-1"><a href="http://○○○.jp/category/wordpress/page/2">2</a></li> <li class="after delta-2 tail"><a href="http://○○○.jp/category/wordpress/page/3">3</a></li> <li class="next"><a href="http://○○○.jp/category/wordpress/page/2">></a></li> <li class="last"><a href="http://○○○.jp/category/wordpress/page/3">»</a></li> </ul> </div> </div>
*上記ソースの div.col-full, div.wrap-col は、本ブログのグリッドシステムによるものです。
このようにブラウザでHTMLソースを見ると「page_navi()」のパラメータの作用も理解できる。
そしてこのHTMLソースでの class属性や span, a を使って、CSSで整える。
本ブログではこのように。
ul.page-nav { text-align:center; font-weight:bold; margin:30px 0;} ul.page-nav li {display:inline;} ul.page-nav li a { border: 2px solid rgba(255,255,255,0.8); border-radius:10px;} ul.page-nav li a:hover { text-decoration:none; border: 2px solid #fff; box-shadow: 0 0 20px #fff inset;} ul.page-nav li a:active {top:1px;}/*push image*/ ul.page-nav li.current span {/*style of current button*/ border: 2px solid #89c040; background: #89c040; border-radius: 10px;} ul.page-nav li.first span, ul.page-nav li.previous span, ul.page-nav li.next span, ul.page-nav li.last span, ul.page-nav li.page_nums span {/*no link buttons*/ border: 2px solid rgba(255,255,255,0.5); color: rgba(255,255,255,0.5); border-radius: 10px;} ul.page-nav li a, ul.page-nav li.current span, ul.page-nav li.first span, ul.page-nav li.previous span, ul.page-nav li.after span, ul.page-nav li.next span, ul.page-nav li.last span, ul.page-nav li.page_nums span { padding: 0.5em 0.8em; position:relative;}
特売 TODAYFUL ケーブルウールニット ブラウン ニット/セーター
Comments
-
WordPressのカテゴリの表示をカスタマイズするための情報を探していて、たどり着きました。カテゴリに関するphpファイル名の優先度があることなど分かりやすい説明されているので大変参考になりました。
特売 TODAYFUL ケーブルウールニット ブラウン ニット/セーター
お礼のコメントをさせていただきました。
すごく内容の書き方などが、すごくわかりやすく、wordpressで躓いてた箇所がどんどん解決されました。
そして、サイトのデザインもすごく好きなデザインで参考にさせてもらってます。
ありがとうございました。