新規投稿はサイドバーの「最近の投稿」欄に出てくるのでいいのだが、固定ページ(当方サイトだと、Welcome、Gallery:写真館、GuestBook)を更新しても、どこにも更新されたことが表示されないので、「見た人だけが知っている」状態・・・。それもどうなのよっと思い、トップページ(Home)に最近更新されたページ、投稿から5件ほど出してみることにしました。
当方のトップページの状態は、コードがindex.phpの以下の直前に埋め込まれています。
<?php if (have_posts()) : ?>
<br>
<h2><strong>更新状況</strong></h2>
<?php
$updateposts = get_posts('numberposts=5&post_type=any&orderby=modified&exclude='.EXCLUDE);
if ($updateposts) { ?>
<ul>
<?php foreach($updateposts as $post): setup_postdata($post); ?>
<li><?php echo date("Y.n.j", strtotime($post->post_modified)); ?> <a href="<?php the_permalink(); ?>"><?php the_title(); ?></a></li>
<?php endforeach; ?>
</ul>
<?php
}
?>
phpで処理されている引数等の説明はwordpressのドキュメントをお読みくださいな。注意点は、このコードの中で使われている変数$updatepostsです。この変数を$postsにすると、wordpress本体が持っていた本来の$postsを書き換えてしまいます。普通は最近の投稿がトップページに出てくるものがほとんどだと思いますが、$postsにして実行すると、このパラメータで引き出されたページなり投稿がこの下に出てくる結果になります。やってみれば分かります・・・(人柱にすんなや
)。で、画像だけを表示するページ 何かを更新すると、
あらぁ~、大変なことに・・・
そうです、当方がやっちまいましたよ・・・Galleryページの写真がバラバラと出て・・・(ry
まぁ~、注意と言えば注意なんですが、この動作を逆手にとって、ページ判定なんかを付けると、もっとエレガントになると思われ。興味がある方はトライしてみてくださいな。
(コードからなるべく余分なHTMLコードは抜いたので、体裁はご自分で整えてくださいな
)