知っていると便利なWordPressのTips
Post on:2008年6月16日
Stylized Webのエントリーから、知っていると便利なWordPressのTipsを紹介します。
参考情報として、WordPress Codex 日本語版の関連項目へのリンクを追加しています。
カテゴリ名の表示
カテゴリ名を表示します。
参考:テンプレートタグ/get the category
1 2 3 4 5 6 |
<textarea name="code" class="html" cols="60" rows="5"> <?php $category = get_the_category(); echo $category[0]->cat_name; ?> </textarea> |
ページのテンプレート
ページのテンプレートの基本書式です。
アーカイブページについては、WordPress Archive Pageにあります。
参考:Pages
1 2 3 4 5 6 7 8 9 10 11 |
<textarea name="code" class="html" cols="60" rows="5"> <?php /* Template Name: Free Themes */ ?> <?php get_header(); ?> //the loop <?php get_footer(); ?> </textarea> |
特定記事の表示方法
query_posts() を使用する場合
特定のカテゴリ(ID=3)「cat=3」の記事を1つ「showposts=1」表示します。
参考:テンプレートタグ/query posts
1 2 3 4 5 6 |
<textarea name="code" class="html" cols="60" rows="5"> <?php query_posts('cat=3&showposts=1'); ?> <?php while (have_posts()) : the_post(); ?> <?php the_excerpt('Read the rest of this entry »'); ?> <?php endwhile; ?> </textarea> |
new WP_Query()を使用する場合
特定のID「page_id=2」の記事を1つ「showposts=1」表示します。
参考:The Loop、Function Reference/WP Query
1 2 3 4 5 |
<textarea name="code" class="html" cols="60" rows="5"> <?php $recent = new WP_Query("page_id=2&showposts=1"); while($recent->have_posts()) : $recent->the_post();?> <?php the_excerpt('Read the rest of this entry »'); ?> <?php endwhile; ?> </textarea> |
PHPで記述する場合
ループを使用して、記事を表示します。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 |
<textarea name="code" class="html" cols="60" rows="5"> <?php $i=1; ?> <?php while (have_posts()) : the_post(); ?> <?php if ($i == 1) { ?> <div id="post-<?php the_ID(); ?>" class="featured"> featured content </div> <?php } else { ?> <div id="post-<?php the_ID(); ?>"> rest of content </div> <!-- post --> <?php } ?> <?php $i++; ?> <?php endwhile; ?> </textarea> |
ファイルのインクルード
特定のファイル(get_header, get_footerなど)以外のファイルをインクルードする場合に使用します。
参考:インクルードタグ
1 2 3 |
<textarea name="code" class="html" cols="60" rows="5"> <?php include (TEMPLATEPATH . '/sidebar2.php'); ?> </textarea> |
条件タグ
指定したページのみに表示させる条件を設定します。
参考:Conditional Tags
1 2 3 4 5 6 |
<textarea name="code" class="html" cols="60" rows="5"> <?php if ( is_front_page() ) { include (TEMPLATEPATH . '/home1.php'); } else { include (TEMPLATEPATH . '/rest.php'); } ?> </textarea> |
is_home(), is_category(), is_archive(), is_search(), is_single(), is_date(), is_404() など多数の条件タグが用意されています。
エントリーを古い順に表示
「index.php」内の「<?php if(have_posts()) : ?><?php while(have_posts()) : the_post(); ?>」の前に次のコードを加えてください。
参考:テンプレートタグ/query posts
1 2 3 |
<textarea name="code" class="html" cols="60" rows="5"> <?php query_posts($query_string . "&order=ASC"); ?> </textarea> |
wp_specialchars()
タイトルタグやsearchのテンプレートなどに「<?php echo $s; ?>が使用されていたら、下記のものに変更してください。
「wp_specialchars()」は、PHPのhtmlspecialcharsと同様に特殊文字を HTMLエンティティに変換します。
参考:関数リファレンス
1 2 3 |
<textarea name="code" class="html" cols="60" rows="5"> <?php echo wp_specialchars($s, 1); ?> </textarea> |
コメントを古い順に表示
「array_reverse」を使用して、コメントを古い順に表示します。
1 2 3 4 5 6 |
<textarea name="code" class="html" cols="60" rows="5"> <?php $comments = array_reverse($comments, true); ?> <?php foreach ($comments as $comment) : ?> content here <?php endforeach; ?> </textarea> |
sponsors