0

私は現在、CodeIgniterをフレームワークとして使用しているPHPプロジェクトに取り組んでいます。私はおそらく使用することができるいくつかのテンプレートシステムを見ました - Strogenのテンプレートシステム(現在PyroCMSで使用されています - 私が間違っていない場合)、Twig、SmartyなどどのようにWordPressのテンプレートシステムは良いですか?

しかし私は自分自身に行くことに決めました最初から1つを構築する。私はWordpressのテンプレートを扱う経験があるので、私は似たようなものを作ることを考えていました。

WordPressテーマの仕組みを説明するため、Wordpressにはデータを収集するための一連の機能(テーマ機能)があります。同じことを続けることが自分のプロジェクトにも良いアイデアであるかどうか疑問に思っていましたか?

ビュー内で呼び出すようなテンプレート関数を作成した場合、MVCの原則に反して動作しますか?そしてそれはどんな方法でもパフォーマンスに影響を与えますか?

答えて

0

まあ、MVCでは、モデルはdbのやりとりを行い、ビューはデータを表示し、コントローラは間に入ります。コントローラに「テンプレート関数」を作成した場合は、MVCに準拠していると思います。あなたが言いたいのは、データの収集/操作を行うためのライブラリやヘルパーを作成する場合、MVCの規約に準拠していないということです。 AFAIK、あなたが選ぶ方法は好みの問題です。パフォーマンスに関しては、プロファイリングを使ってどちらが良いかをテストすることができます。

しかし、WPテンプレートの仕組みに精通しているからといって、WPと似ているCI用のテンプレートシステムを構築することを目標にしているのであれば、あなた自身のものを構築するよりも新しいもの。私はまた、WP oneを学ぶよりも、新しいものを学ぶのにはるかに短い時間がかかるだろうと思っています。

また、pyroはPhilのテンプレートとスマートな組み合わせを使用しますが、肯定的ではないと思います。 Philはテンプレート作成システムを持っています。https://github.com/philsturgeon/codeigniter-templateチェックアウトの価値があります。

歓声。

+0

回答ありがとうStorm。私はWordPressのテンプレートスタイルを使い慣れているだけでなく、私のテンプレートがコントローラから独立しているからです。私のテーマに別のウィジェットを組み込む場合、コントローラを編集して私のために取得する必要はありません。テンプレートの関数はそれを正しく行うでしょうか? – Sterex

+0

私はCIのウィジェットを理解しているのか分かりませんか? WPウィジェット? CIは、ウィジェット/モジュールが自己完結型で、ビューから呼び出すことができるウィジェット/モジュールの可用性を備えています。つまり、メインページのコントローラーを煩わせることなく、ログインボックスをビューに追加することができます。これが役立つかどうかを確認してください:http://codeigniter.com/forums/viewthread/109584 – stormdrain

関連する問題