投稿記事の最初の200字を出力し、「続きを読む」にする
「初歩から学ぶゲーム理論」というカテゴリーが呼び出されたときだけ、最新の投稿から記事内容を200字だけ出力することにした。
(1) list_web_kogi1.phpと言う、以下のファイルを作成。
<!-- 記事を200字出力し、続きを読むにリンクを貼る出力 -->
<h2>初歩から学ぶゲーム理論-WEB講義</h2>
<h3>最新の投稿</h3>
<ul>
<?php
$wp_query = new WP_Query();
$args = array(
'post_type' => 'post',
'post_status' => 'publish',
'category__in' => 8,
'posts_per_page' => 10,
'order' => 'DESC'
);
$wp_query->query($args);
if($wp_query->have_posts()){
?>
<?php
while (have_posts()) {
the_post();
?>
<!-- 出力部分 -->
<?php $naji_title=get_permalink(); ?>
<h4><a href="<?php echo $naji_title; ?>"><u>
<?php the_title(); ?></u></a></h4>
<?php
if(mb_strlen($post->post_content,'UTF-8')>200){
$content= str_replace('\n', '', mb_substr(strip_tags($post-> post_content), 0, 200,'UTF-8'));
echo $content.'<a href='.$naji_title.'><u>(.....続きを読む)</u></a>';
}else{
echo str_replace('\n', '', strip_tags($post->post_content));
}
?>
<!-- 出力部分 -->
<?php
}
wp_reset_query();
}
?>
(2) category.php の途中の適切な部分(ループの前)に以下を挿入
if (is_category('gametheory_lecture')):
include('list_web_kougi1.php');
else:
- gametheory_lecture:「初歩から学ぶゲーム理論」のカテゴリ名(スラッグ)
- 自分が使っているテーマ twelveseventeen はcategory.phpを用いず、すべてpage.php で出力を行うため、まず page.phpを複製し、それをcategory.phpという名前のファイルに変えた。