the_time()

現在の投稿の公開時刻を表示します。

位置

ループ内

引数

様々な様式で、時刻だけでなく西暦、年、月、日を表示させることができます。
詳しくは、Codex「日付けと時間の書式」へどうぞ。

コード記述例

基本の記述

<?php the_time(); ?>  →  12:09 AM
<?php the_time('Y年n月j日 l'); ?>  →  2008年4月1日 火曜日
<?php the_time('Y.m.d'); ?>  →  2015.03.09

query_posts()

WordPress ループ で表示される投稿を変更するために使います。
私の場合、一番お世話になっているタグです。グローバル変数$wp_queryを書き換えてしまうので、ループの最後でリセットするのを忘れずに。
リセットをしないと、あとに続くループの挙動がおかしくなります。

※query_posts() 関数はメインの WordPress ループだけを変更するためのものです。新たなループを作るためのものではありません。メインループの他にループが必要な場合は、get_posts() を使ってください。

意外な感じがするのですが(私だけかも?)、query_posts()で固定ページもひっぱれます

位置

ループの前

引数

普段あまり使わないけれど便利なものだけピックアップします!

  • post_status…ステータス・公開状態で引っ張れます。
    例)post_status=private
    …非公開記事

その他はCodexへどうぞ。

コード記述例

基本の記述

<?php query_posts('引数'); ?>
<?php if ( have_posts() ) : while ( have_posts() ) : the_post(); ?>
//ここに表示したい内容を入れる
<?php endwhile; endif; ?>
<?php wp_reset_query(); ?>

 

 

投稿のカテゴリースラッグがaaaの記事を表示する

<?php query_posts('category_name=aaa'); ?>
<?php if ( have_posts() ) : while ( have_posts() ) : the_post(); ?>
//ここに表示したい内容を入れる
<?php endwhile; endif; ?>
<?php wp_reset_query(); ?>

 

 

投稿のカテゴリースラッグがaaaまたはbbbまたはcccのとき、999個まで記事を表示する

<?php query_posts($query_string . "cat=" .(get_category_by_slug('aaa')->term_id .",".get_category_by_slug('bbb')->term_id .",".get_category_by_slug('ccc')->term_id) . "&showposts=999"); ?>
<?php if ( have_posts() ) : while ( have_posts() ) : the_post(); ?>
//ここに表示したい内容を入れる
<?php endwhile; endif; ?>
<?php wp_reset_query(); ?>

 

 

固定ページをだす

<?php query_posts('post_type=page'); ?>
<?php if ( have_posts() ) : while ( have_posts() ) : the_post(); ?>
//ここに表示したい内容を入れる
<?php endwhile; endif; ?>
<?php wp_reset_query(); ?>

 

 

固定ページでページング

<ul>
<?php
global $paged;
query_posts('category_name=example&showposts=3&paged=' . $paged); ?>
<?php if ( have_posts() ) : while ( have_posts() ) : the_post(); ?>
<li><a href="<?php the_permalink(); ?>"><?php the_title(); ?></a></li>
<?php endwhile; endif; ?>
<?php posts_nav_link(' | ','前の記事','次の記事'); ?>
<?php wp_reset_query(); ?>
</ul>

 

 

カスタム投稿タイプ「aaa」または「bbb」でカスタムフィールドのKeyが「xyz」の記事を表示

<?php
$args = array(
'post_type' =&gt; array('aaa','bbb'),
'meta_key' =&gt; 'xyz',
);
query_posts($args); ?>
<?php if ( have_posts() ) : while ( have_posts() ) : the_post(); ?>
//ここに表示したい内容を入れる
<?php endwhile; endif; ?>
<?php wp_reset_query(); ?>

wp_dropdown_categories()

カテゴリーリストを出す際、ドロップダウンにする必要のある案件に出くわしました。
これは、wp_list_categories()をつかってfor文…いやforeach文!?などと考えつつ調べていたら、こんな便利なタグがありました。何でもそろってるなぁWordPress…。

ちなみに「カテゴリー」ではなく「投稿の月別アーカイブ」へのリンクをドロップダウンにするときはwp_get_archives()をつかいます。

引数

Codexへどうぞ

コード記述例

<form action="<?php echo get_home_url(); ?>" method="get">
<?php wp_dropdown_categories(); ?>
<input type="submit" name="submit" value="GO" />
</form>

 

get_permalink()

記事のパーマリンクをPHPの値として返します。echo で出力させることもできます。
the_permalink()との違いは、引数として記事のIDを使える点です。

位置

ループ内・外

引数

  • id (整数)- 記事の数字ID。ループ内で使用した場合、デフォルト値は表示中記事のID。

コード記述例

<p><a href="<?php echo get_permalink(5); ?>">記事ID5へのリンク</a></p>

 

esc_html()

HTMLタグをエスケープしてくれます。
例えば、HTML文の中に<br>と書いた場合、改行が行われるだけで<br>というタグ自体はユーザ画面には表示されません。

esc_html()を使えば「<」は「&lt;」、「>」は「&gt;」へと置き換えられ、<br>というタグをユーザ画面で表示できます。

記述例

<br>をエスケープし、表示させる。

<?php echo esc_html('<br />'); ?>