WordPressでカテゴリごとにRSSを配信したい場合
静的にリンクを張りたい場合
設定>パーマリンクの設定>で
カスタム構造を選択し
/%category%/%postname%.html
と設定した場合
カテゴリ名/feed
でそのカテゴリのフィードが配信出来る。
例:http://kidokorock.com/wordpress-tips/feed
ついでに
下記でフィードをカテゴリリスト表示(テキストリンク)
<ul>
<php wp_list_cats('sort_column=name&optioncount=1&exclude=1&afeed=RSS'); ?>
</ul>
下記でフィードをカテゴリリスト表示(画像リンク)
<ul>
<?php wp_list_cats('sort_column=name&optioncount=1&hierarchical=1&exclude=1&feed_image=URL.jpg"); ?>
</ul>
特定のカテゴリに対してのみテンプレートを変更できるみたいです。
やり方は指定したいテンプレートを作成し、そのテンプレートの名前を
category-記事番号.phpにするだけです。
(ex. category-12.php)
記事番号は管理→カテゴリで確認できます。
さらに各テンプレートの優先順位
■メインページ
┣home.php
┗index.php
■カテゴリーページ
┣category-番号.php
┣category.php
┣archive.php
┗index.php
■投稿ページ
┣single.php
┣index.php
┗PAGE
■日付ページ
┣date.php
┣archive.php
┗index.php
■ページテンプレート
┣page.php
┗index.php
PHPでよく利用するPEARライブラリ「Pager」機能を
WordPressで実装できないかと調べてみたところ
WP-PageNavi 2.30がよさそうなので導入してみました。
まずwp-content/pluginsにダウンロードした「wp-pagenavi」を設置
ページナビゲーションを挿入したいところに(themes/index.phpなど)
<?php wp_pagenavi(); ?>
を記述することで実装できます。
追記:タブ表示したい場合は下記
<?php wp_pagenavi_dropdown(); ?>
サイドバーに特定のカテゴリーのみを表示させたいと思い
任意の場所に下記を記述するとカテゴリ中のタイトルと記事を表示できます。
<?php $posts = get_posts('numberposts=2&category=1');
foreach($posts as $post) :
setup_postdata($post); ?>
<h2 class="storytitle"><a href="<?php the_permalink() ?>"
rel="bookmark"><?php the_title(); ?></a></h2>
<div class="storycontent">
<?php the_content(__('(more...)')); ?>
</div>
<?php endforeach; ?>
を記述しコードの1行目の下記箇所を変更
numberposts=2←表示させたい記事の件数
さらに
category=1←カテゴリの通しID
で表示できます。
WordPressでビジネスホームページを作成する際に、
ブログレイアウトをトップページっぽいレイアウトにするために
トップページ専用のレイアウトを作成したい。
そんなとき気軽にif分岐で下記のようにするのが手っ取り早い
かも……
まずテンプレートの階層にトップで表示したい要素を記述し
top.phpとしてindex.phpから切り離す。
コンテンツ要素のindex.phpのページ上部で下記を宣言し
[index.php内容]
function get_top() {
do_action( 'get_top' );
if ( file_exists( TEMPLATEPATH . '/top.php') )
load_template( TEMPLATEPATH . '/top.php');
}
そして
[index.phpの表示したい箇所に]
if (is_home()) {
get_top();
}
でトップページのみに表示できます。