web-dev-qa-db-ja.com

テーマを壊さずにWordpressテーマファイルをサブフォルダに移動する方法

私はOOP PHP、node.jsとWebpackを使って、そしてクラス、node_modules、設定ファイルとWordpressテンプレートファイルの間で私のテーマのディレクトリが少し面倒になってきました...

テーマを壊すことなくテーマのテンプレートファイルをappサブフォルダに移動する簡単な方法はありますか?

(私は同様の質問を見つけましたが、それは2011年に尋ねられたので、うまくいけば何かが時間の経過とともに現れました)。

2
grazianodev

出荷時の状態WPは、テンプレートの解決とロードをテンプレート階層に依存しています。デフォルトの前提は、(ほとんどの)templateがテーマのルートにあり、命名規則に従っていることです。

テンプレートファイルを別の場所に配置するには、基本的にコード内でテンプレート階層をさまざまな仮定で再構築する必要があります。これは以前はおかしくて不便でしたが、WP 4.7では {$type}_template_hierarchy hookが導入されたため、非常に簡単になりました。

個人的な余談として、ネイティブのWPテンプレートは、単純に意味のあるように複雑なユースケースに拡張できないと思います。ディレクトリを乱雑にするのに十分なテンプレートがある場合は、私はまったく別のテンプレートエンジン(Twigなど)に移動します。もちろん、これはWP開発における主流のテクニックではありません。

Twig統合のための私のMeadowプロジェクトでは テンプレート階層のオーバーライドの例 を持っていますが、PHPテンプレートのロジックを変更するのと同じことができます。

2
Rarst