[wordpress] 投稿の出力 本文と抜粋の両方

wordpress if

通常、抜粋欄は、入力があれば抜粋が優先され、抜粋が空欄であれば本文を出力します。あまり使う事は無いかもしれませんが、本文と抜粋を共に出力させる覚書です。1つの投稿使って、あちこちに必要な情報だけを抜き出して出力したいという友人からの相談でやってみました。あまり自身はありませんが、とりあえず問題無く機能しましたので参考まで。

WordPressの抜粋について

通常、抜粋欄は、入力があれば抜粋が優先され、抜粋が空欄であれば本文を出力します。

今回の抜粋の仕様

指定したカテゴリーの投稿で、タイトル、本文、抜粋を表示させます。

<?php
$cat_posts = get_posts(array(
'post_type' => 'post', 
'category_name' => 'special', // カテゴリのスラッグ
'posts_per_page' => 4, // 表示件数
'orderby' => 'date', // 表示順
'order' => 'DESC' // 昇降順
));
global $post;
if($cat_posts): foreach($cat_posts as $post): setup_postdata($post); ?>
<dl>
<!-- ループ -->
<dt><h3><?php the_title(); ?></h3></dt>
<dd><?php the_content(); ?></dd>
<dd><?php if ( has_excerpt() ) : $excerpt = get_the_excerpt(); ?>
<?php echo nl2br($excerpt); ?>
<?php endif; ?></dd>
</dl>
<!-- おわり -->
<?php endforeach; endif; wp_reset_postdata(); ?>

はじめ、if 抜粋が空欄なら..と書いたら間違っていたのかなぁ??何だかすごく変になってしまいました。ただ表示させるだけで良い様です。

Leave a Reply

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

You may use these HTML tags and attributes:

<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>

CAPTCHA


このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください