質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
WordPress

WordPressは、PHPで開発されているオープンソースのブログソフトウェアです。データベース管理システムにはMySQLを用いています。フリーのブログソフトウェアの中では最も人気が高く、PHPとHTMLを使って簡単にテンプレートをカスタマイズすることができます。

Q&A

2回答

10878閲覧

【WordPress】page-〇〇.phpをフォルダに入れて管理したい

ShogoChicago

総合スコア38

WordPress

WordPressは、PHPで開発されているオープンソースのブログソフトウェアです。データベース管理システムにはMySQLを用いています。フリーのブログソフトウェアの中では最も人気が高く、PHPとHTMLを使って簡単にテンプレートをカスタマイズすることができます。

0グッド

1クリップ

投稿2016/11/03 05:56

編集2016/11/03 09:29

WordPressを用いてスポーツ関係のサイトを構築しています。
作成をしていく中で、徐々に固定ページのテンプレート(page-○○.php)がかなり増えてきて、テーマのディレクトリが見づらくなってきました。

そこで、これらのpage-○○.phpをいくつかのディレクトリに入れて整理したいと思っています。

#実現したい状態
例えば、
page-game1.php
page-game2.php
page-game3.php
・・・
page-game10.php
というように、10個ほどファイルがあるとします。
これが、front-page.phpと同じ階層にあるのがとても煩わしいので、
"games"というディレクトリを作り、その配下にこれらのファイルを配置したいと思っています。

ですので、URLでいうと

<?php echo home_url(); ?>/game1

という状態から

<?php echo home_url(); ?>/games/game1

という状態になるのが理想です。

この構造を実現して、パスが通る状態にするには、どんな操作が必要になりますでしょうか?

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

kei344

2016/11/12 09:21

まだ質問が「受付中」になっていますが、いったん「解決済」にされてはいかがでしょうか。また、解決されていないなら状況をお教えください。
guest

回答2

0

page.php だけ用意して、その中で get_template_part( 'games/page', $page->post_name ); とか。(それ以外の記述は無くてもいけるはず)

gamesフォルダには下記のようなファイル名で入れておけばいけると思われる。

page.php // フォールバック用 page-game1.php page-game2.php ・・・

【【WordPress】任意のテンプレートパーツを読み込む関数[get_template_part() ;]の使い方。 - ONZE】
http://on-ze.com/archives/1144

【現在のページのスラッグ名を取得する - Qiita】
http://qiita.com/t_okubo/items/f4f71958a2d358795192


$page はデフォルトでグローバルに入っていたと思うが、入っていなかったら $page = get_post( get_the_ID() ); で入れる。

【[Wordpress] 固定ページのスラッグを取得する|ゆるゆるダイアリ~[初老女の備忘録]】
http://ameblo.jp/ecosan/entry-12070850540.html

投稿2016/11/03 09:07

kei344

総合スコア69398

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

ShogoChicago

2016/11/12 07:54

ありがとうございます! この参考サイトも見ながら設定したところ、うまくいきました。
guest

0

3年前の質問に亀で申し訳ありませんが、まだ募集されている?ようですので
同じようなことでイラついた事があったため別回答を。

テーマ内に/page-templates/というディレクトリを作成することで
その中のテンプレートファイルが認識されます。

ですので、/page-templates/以下に、page-game1.php、page-game2.phpなどを
配置すればディレクトリ内に固定ページテンプレートをまとめることが可能です。

スラッグは適当に親子関係を作成すれば良いかと。

投稿2019/10/29 14:38

madone99

総合スコア1855

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだベストアンサーが選ばれていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問