月間アーカイブの量が増えてきたので、ページとして独立させてみようかな、と考えたのが事の始まり。

まずアーカイブのページをどのように作るのがいいのかと調べてみる。
ぼんやりしたイメージだと、エントリー内でphpを走らせられるプラグインを入れているから
wp_get_archives('type=monthly')を書き出させればいいのかしらね?なんて事思ってた。

でもどうやらページには、ページテンプレートというモノがあって、ページ毎に別々のテンプレートを選択してページを作成出来るそうだ。
今読み込まれてるのはpage.phpで、サーバーを見ると他にもarchives.phpをアップしてある。

しかし何故だか判らないけれど、うちのWordPressには[ページ] – [新規作成]の下のほうにあるという
ページテンプレート選択プルダウンが無い。あるぇ?

こんな投稿を見つけた。
WordPress › フォーラム » ページにテンプレートを適用させることはできなくなったのでしょうか

ページの投稿画面にあったページのテンプレートを選択するプルダウン・メニューがなくなってしまいました

下のほうにありませんか?
ページの作成のテキストエリアの下の「詳細オプション」の下のほうですが。

ありました。
と思いましたら、テーマを wp.Vicuna Ext. 1.50 に戻したところ、再び消えてしまいました。

解決しました。テンプレートの .php ファイルを UTF-8 以外の文字コードで保存していたため、読み込めなかったようです。

fmfm文字コードですか、なるほど。

utf-8で保存してるハズなのに開き直すとshift-jisに戻ってしまう事があるのは何故だろう。
とりあえずutf-8に変換してarchives.phpをアップしてみた。
だがしかし新規追加画面にはテンプレートを選択するプルダウンなどどこにも見当たらない。

仕方がないので一度下書き保存してみる。
そこでクイック編集を選択したら、一応ページテンプレート選択プルダウンが現れた。
が、何回見てもデフォルトテンプレートしか選べない。

原因を見つけた。

Pages – WordPress Codex 日本語版

WordPressページテンプレートを作ってみよう
ファイルの先頭に以下のように書き込みましょう。

(注) テンプレートファイルは UTF-8 BOMなしで保存してください。それ以外で保存するとエラーが出たり文字化けしたりします。

(terapadならUTF-8NがBOMなし)

archives.phpにはTemplate Name: Archivesの記述があったけど
page.phpには無かったので追加してみたら、二つとも認識されました。

テンプレートプルダウン出現

その後、好奇心からpage.phpのTemplate Name: を削除して再アップしてみたんだけど、
テンプレート選択プルダウンは残っててarchives.phpだけ選べるようになってた。
最初と同じ状態に戻っただけなのに、なぜだろう?

テンプレート関係のリンク

使用すべきでないファイル名テーマの作成 – WordPress Codex 日本語版
[text]style.css
index.php
comments.php
comments-popup.php
home.php
single.php
page.php
category.php
author.php
date.php
archive.php
search.php
404.php[/text]

テンプレート階層 – WordPress Codex 日本語版
どのテンプレートがどんな優先順位で表示されるのかの説明。


コメントを残す

メールアドレスが公開されることはありません。

You can add images to your comment by clicking here.