WordPressで固定ページが多くなってきたので、フォルダ分けしたい。。

以下、作業用メモです。

テーマファイル直下にディレクトリをきって、そこに置きたい固定ページ用のテンプレートを配置。

page.phpの従前のコードの前に以下のコードを記述。

<?php
$url = $_SERVER['REQUEST_URI'];
$url = explode('?', $url);
$url = $url[0];
$path = get_template_directory() . substr($url, 0, strlen($url) - 1) . '.php';
if (file_exists($path)) {
    include($path);
    exit();
}
$path = get_template_directory() . $url . '/index.php';
if (file_exists($path)) {
    include($path);
    exit();
}
?>

ディレクトリ配下に置いたファイルは「スラッグ名.php」「page-スラッグ名.php」だったか、少し忘れてしまったのですが、どちらかで問題なく動きました。
ただし、テーマファイル直下に同じスラッグ名のファイルがあるとそちらが優先されるので注意。


以下の記事で紹介されていたコードを使い、無事にやりたいことが実現できました。
ありがとうございます。
【参考サイト】

この記事を書いた人