WordPress3.1のtwentytenのバージョンが1.1から1.2へ

先週、WordPress3.1が正式リリースされた。まだ、英語版のみということで、先ずはUbuntuローカル環境にWordPressをバージョンアップしてみた。当然、ダッシュボードも英語になるかと思いきや、何故か日本語のままだ。


すべての環境でこうなるとは限らないので、運用中のサイトの場合は、日本語版の正式リリースを待ってアップグレードすべきだろう。

とはいえ、無事にWordPress3.1にアップグレードできたということで、先ずはWordPress3.1の標準テーマtwentytenから検証してみた。

なお、WordPress3.1から、twentytenのバージョンは、1.1から1.2に正式にバージョンアップしている。

標準テーマtwentyten1.2で追加されたファイル

3.1のtwentytenフォルダを開くと、ファイル数が増えていることに真っ先に気づく。twentyten1.2で追加されたファイルは次のとおりだ。

  • loop-attachment.php
  • loop-page.php
  • loop-single.php

これらのファイル追加に伴い、single.php等の記述内容が、極めてシンプルに書き改められている。

<?php
/**
 * The Template for displaying all single posts.
 *
 * @package WordPress
 * @subpackage Twenty_Ten
 * @since Twenty Ten 1.0
 */

get_header(); ?>

<div id="container">
<div id="content" role="main">

<?php
/* Run the loop to output the post.
 * If you want to overload this in a child theme
 * then include a file called loop-single.php and
 * that will be used instead. 
 */
   get_template_part( 'loop', 'single' );
?>

</div><!-- #content -->
</div><!-- #container -->

<?php get_sidebar(); ?>
<?php get_footer(); ?>

コメントでも説明されているとおり、旧バージョンでsingle.phpに記述されていた内容は、1.2ではloop-single.phpに記述されることになった。真ん中あたりにある、get_template_part( ‘loop’, ‘single’ );という箇所で、loop-single.phpをインクルードするよう指示している。同じく、固定ページを制御するpage.phpにもget_template_part( ‘loop’, ‘page’ );という箇所があり、loop-page.phpをインクルードするよう指示されている。

今のところ、1.1での記述の仕方でも問題なく動作しているが、子テーマでsingle.phpやpage.phpを書き換えている人は、この機会に1.2の記述法に書き換えておいたほうが良いだろう。

その他のファイルも、念のため、例えば次のようなdiffコマンドなどを使い、1.1と1.2の違いなどを事前にチェックしておいた方が良いかもしれない。

diff -c -b twentyten1.1ファイル twentyten1.2ファイル