この記事の所要時間: 237

WordPressサイト構築時に記事一覧を自分で制作して
例えばこんな感じに・・・

これこれこうでこうでした。
[ sample]サンプルをごらんください[/sample ]

※ショートコードにならないように [ のあとにスペースを入れています。

こんな感じで記事の文章が表示されて「いやだなぁ」と思った時にすることです。

HTMLのタグは

strip_tags で除外出来るのでそのショートコード版が無いかなぁと思ったらあったんですね・・・

strip_shortcodes というメソッドが。

// ~前略~ $myQueryは WP_Queryで検索オブジェクトを作っています。通常のループと同様にお考え下さい
<ul class="new">
<?php if($myQuery->have_posts()) { while($myQuery->have_posts()) { $myQuery->the_post(); ?>
<li>
<?php if ( has_post_thumbnail() ) { ?>
<!-- THUMBNAIL -->
<a href="<?php the_permalink(); ?>" style="float:left; margin-right:10px;">
<?php the_post_thumbnail(); ?></a>
<?php echo get_post_time("Y年m月d日"); ?> <br />
<a href="<?php the_permalink(); ?>"><?php the_title(); ?></a> <br />
<?php echo mb_substr(strip_tags(strip_shortcodes($post-> post_content)), 0, 300); ?>
<a href="<?php the_permalink(); ?>" class="more-link"><br /> ▼続きを読む</a>
</li>
<?php } } else { ?>
    情報がありません。
<?php } ?>
</ul>

この11行目のようにしました。

11行目は何をしているかというと

1.記事コンテンツからショートコードを除外
2.記事コンテンツからHTMLタグを除外
3.記事コンテンツの先頭から300文字を出力

ということをしています。

このサンプルでは文章がこれ以上あろうがなかろうが「続きを読む」を出しています。

参考になれば幸いです。

この記事が気に入ったら
いいね ! しよう

Twitter で