新しいCakePHPインストールのホームページを変更するときにページコントローラがデフォルトで使用されていることがわかりました。私はこれが主に静的ページに使用されていることを読んでいます。私は静的な左手の垂直ナビゲーションバーを作ってみたいですが、私はここから他のコントローラーをどのように使う必要があるのか分かりません。/cake
CakePHP:他のコントローラを使用するためにホームページからナビゲートする
私は物事を理解しようとしているので、これは本当に面倒です...例えば、私は/cake/products
を介してデータベースにあるいくつかの製品で何かをすることを可能にするProduct Controllerを持っています。そこで、$this->element('left_menu')
を使って左メニューを作った。これには、次の(HTMLコード省略)コードが含まれていて、C:\...\cake\app\views\pages\home.ctp
にある。
<?php echo $this->Html->link(__('Product View', true), array('action' => 'products/view')); ?>
そして、このメニューボタンがクリックされたときに、私は製品コントローラの機能を使用できるように、私は製品コントローラのインデックスページへ(ホームページから)cake/page/products
をルーティングしています。
Router::connect('/pages/products/*', array('controller' => 'products', 'action' => 'index'));
この左ナビメニューはホームページから働かないが、私はこのメニューのボタンをクリックして/cake/product/...
に行くたら、それはページコントローラに相対的であるので、それはもはや機能します。この静的な左のナビゲーションバーを使用して他のコントローラを使用できるようにするにはどうすればよいですか?最終的に、私はこの静的メニューで他のコントローラの機能を使用するようにしたいと思います。私は困惑している!
CakePHPで静的な項目を行うべき場所はどこですか?ヘッダー、フッター、そして(私の場合は)すべてのページに左のナビゲーションバーが必要なので、これは意味をなさないようです。これはすべて1つのファイルで行うことができます。これについて話している記事はありますか? – musicliftsme
はい、それは静的情報を追加する方法です。そして、さまざまなレイアウトを定義して、さまざまなタイプの外観を追加することができます。記事に関しては、わからない。私はYiiに切り替える前にCakePhpを1つのサイトに使用しました(これはステロイドのCakePhpに似ています)。あなたのサイトとあまり遠く離れていない場合は、見てみる価値があるかもしれません。私は、Cakeフレームワークが難しい時に落ちたという印象を受けています... – acorncom