WordPressでカテゴリテンプレートを作成する方法

各カテゴリのレイアウトが異なるサイトにアクセスしましたか? WordPressテーマの開発では、カテゴリ、タグ、カスタム投稿タイプ、分類法に異なるテンプレートを使用するのが一般的です。カテゴリのテンプレートを作成することにより、カテゴリページに特定の機能を追加できます。たとえば、ユーザーがカテゴリをサブスクライブし、カテゴリの画像を追加し、カテゴリの説明を表示し、カテゴリごとに異なるレイアウトを選択することを許可できます。このガイドでは、WordPressでカテゴリテンプレートを作成する方法を説明します.


カテゴリページのWordPressテンプレート階層

WordPressには強力なテンプレートシステムがあります。 Webサイトのセクションごとに異なるテンプレートを使用して、WordPressテーマを作成できます。 WordPressは、ページを表示するときに、事前定義された階層順にテンプレートを検索します。カテゴリーページを表示するために、この順番でテンプレートを探します.

category-slug.php→category-id.php→category.php→archive.php→index.php

最初のWordPressは、カテゴリスラグを使用して、その特定のカテゴリに固有のテンプレートを探します。たとえば、category-design.phpテンプレートは、「デザイン」カテゴリを表示するために使用されます。 category-slugテンプレートが見つからない場合、WordPressは、category-6.phpなどのカテゴリIDを持つテンプレートを探します。その後、通常category.phpである一般的なカテゴリテンプレートを探します。一般的なカテゴリテンプレートが存在しない場合、WordPressは一般的なアーカイブテンプレート、つまりarchive.phpを探します。最後に、index.phpテンプレートを使用してカテゴリを表示します.

WordPressでカテゴリテンプレートを作成する

まず、典型的なcategory.phpテンプレートを見てみましょう.

<?php
/ **
*シンプルなカテゴリーテンプレート
* /

get_header(); ?>

<?php
//表示する投稿があるかどうかを確認します
if(have_posts()): ?>

カテゴリー: <?php single_cat_title( ”、false); ?>

<?php
//オプションのカテゴリの説明を表示します
if(category_description()): ?>
<?php echo category_description(); ?>
<?php endif; ?>

<?php

//ループ
while(have_posts()):the_post(); ?>

" rel ="ブックマーク" タイトル="への永続的なリンク <?php the_title_attribute(); ?>"><?php the_title(); ?>

<?php the_time( ‘F jS、Y’) ?> 沿って <?php the_author_posts_link() ?>

<?php the_content(); ?>

<?php
comments_popup_link( ‘まだコメントはありません’、 ‘1コメント’、 ‘%コメント’、 ‘コメントリンク’、 ‘コメントクローズ’);
?>

<?php endwhile;

そうしないと: ?>

申し訳ありませんが、条件に一致する投稿はありません.

<?php endif; ?>

<?php get_sidebar(); ?>
<?php get_footer(); ?>

ここで、「デザイン」というカテゴリがあり、カテゴリスラッグに「デザイン」があり、このカテゴリを他のカテゴリとは異なる方法で表示するとします。そのためには、その特定のカテゴリのテンプレートを作成する必要があります。に行く 外観»編集者. 右側のテーマファイルのリストからcategory.phpをクリックします。category.phpファイルがない場合は、archive.phpを探します。これらのテンプレートのいずれも見つからない場合は、WordPressテーマフレームワークを使用している可能性が高く、このチュートリアルは役に立たない可能性があります。使用している特定のフレームワークを参照することをお勧めします.

上記のファイルを見つけたら、category.phpのすべてのコンテンツをコピーして、メモ帳などのテキストエディターに貼り付けます。このファイルをcategory-design.phpとして保存します.

FTPクライアントを使用してWebサイトに接続します。 / wp-content / themes / your-current-theme /に移動し、category-design.phpファイルをテーマディレクトリにアップロードします。これで、このテンプレートに加えた変更は、この特定のカテゴリのアーカイブページにのみ表示されます。この手法を使用すると、必要な数のカテゴリのテンプレートを作成できます。ファイル名としてcategory- {category-slug} .phpを使用するだけです。 WordPress管理エリアのカテゴリセクションにアクセスして、カテゴリのナメクジを見つけることができます.

これは、category-slug.phpテンプレートの例です。少し変更を加えて、category.phpと同じテンプレートを使用していることに注意してください。カテゴリはすでにわかっているので、タイトル、説明、その他の詳細を手動で追加できるため、このカテゴリが使用されます。また、 <?php the_excerpt(); ?> の代わりに <?php the_content(); ?>. 完全な投稿の代わりに投稿の要約または抜粋を使用することをお勧めする理由を確認してください.

<?php
/ **
*シンプルなカテゴリーテンプレート
* /

get_header(); ?>

<?php
//表示する投稿があるかどうかを確認します
if(have_posts()): ?>

<?php
//このテンプレートはデザインカテゴリにのみ使用されるため
//カテゴリのタイトルと説明を手動で追加できます.
//または画像を追加するか、レイアウトを変更します
?>

デザイン記事

デザインとウェブに関する記事とチュートリアル.

<?php

//ループ
while(have_posts()):the_post();

" rel ="ブックマーク" タイトル="への永久リンク <?php the_title_attribute(); ?>"><?php the_title(); ?>

<?php the_time( ‘F jS、Y’) ?> 沿って <?php the_author_posts_link() ?>

<?php the_excerpt(); ?>

<?php
comments_popup_link( ‘まだコメントはありません’、 ‘1コメント’、 ‘%コメント’、 ‘コメントリンク’、 ‘コメントクローズ’);
?>

<?php endwhile; //ループを終了します

そうしないと: ?>

申し訳ありませんが、条件に一致する投稿はありません.

<?php endif; ?>

<?php get_sidebar(); ?>
<?php get_footer(); ?>

category-slugテンプレートを使用したくない場合は、category-idテンプレートを使用して、特定のカテゴリーIDのテンプレートを作成できます(WordPressでカテゴリーIDを見つける方法).

カテゴリに条件タグを使用する

テーマのテンプレートを作成するときは、自分がやりたいことを実行するために別のテンプレートが本当に必要なのか自問する必要がありますか?場合によっては、加えたい変更がそれほど複雑ではなく、category.phpやarchive.phpなどの一般的なテンプレート内のコンディショナルタグを使用して実現できます。.

WordPressは、テーマの作成者がテンプレートで使用できる多くのコンディショナルタグをサポートしています。そのような条件タグの1つはis_category()です。この条件タグを使用すると、条件が一致した場合に異なる出力を表示するようにテンプレートを変更できます。たとえば、「おすすめ」というおすすめの投稿のカテゴリがあるとします。次に、この特定のカテゴリのカテゴリアーカイブページに追加情報を表示します。そのためには、このコードをcategory.phpファイルの直後に追加します <?php if(have_posts()): ?>.

<?php if(is_category( ‘Featured’)): ?>

注目の記事:

<?php else: ?>

カテゴリーアーカイブ: <?php single_cat_title(); ?>

<?php endif; ?>

WordPressテーマの開発を学ぶことは、一晩で達成できるものではありません。しかし、テンプレートを調整して小さな変更を加えることで、学習を開始できます。それはリスクであり、あなたが望むよりも頻繁に物事を壊すでしょうが、最終的にそれを正しくする喜びはあなたのやる気を保ちます.

この記事を参考にして、WordPressでカテゴリテンプレートを作成してください。 WordPressのカテゴリテンプレートの変更について質問がある場合は、下にコメントを残してください.

Jeffrey Wilson Administrator
Sorry! The Author has not filled his profile.
follow me
    Like this post? Please share to your friends:
    Adblock
    detector
    map