■ユーザーズフォーラム リニューアルのお知らせ
新規投稿は新ユーザーズフォーラムにお願いします。

検索結果ページのカスタマイズについて

macchaka > 検索結果ページのカスタマイズについて @ 2014/11/10 22:50
私の探し方が悪いのか、公式のドキュメントで標記の件に触れたページを確認できないのですが、どこに書いてあるでしょうか?

ユーザが書かれたエントリーとソースを追いかけて、Contents/search.phpを作ればよいことは分かったのですが、これはdefaultレイアウトを使っていますよね?他のレイアウトにしたいのですが、固定ページがあるわけではないので、エントリーのコードで指定するわけにもいきません。

コアテンプレートを見よう見まねするしかない状況なので、私がドキュメントを見落としているのではないかと思うのですが、フォーラムで検索しても出てこず。ここに書いてあるよという情報でも頂けると助かります。よろしくお願いします。


■ BaserCMSのバージョン:3.0.5.1
■ スマートURLの利用: ON
■ 設置フォルダ: ドキュメントルート
■ 利用しているデータベース: MySQL
■ PHPスキル(自己評価): C
■ OSの種類:OSX
■ PHPのバージョン:5.4.30
■ データベース種類・バージョン:MySQL 5.6.19
goichi > Re: 検索結果ページのカスタマイズについて @ 2014/11/10 23:41
引用:
他のレイアウトにしたい

何かしらの事情で、検索結果のページだけdefault.php以外を使いたいということですよね。
baserCMSでは、CakePHPの作法がそのまま通じますので、コントローサーサイドで、例えば・・・
$this->layout = 'hogehoge'

とすれば、別のレイアウト(hogehoge.php)を適用できると思います。
コアフォルダ(/lib/Baser)にあるContentsController.phpを、開発フォルダ側(/app)の同階層に持って行って、カスタマイズすると良いかもしれません。

他にもっと良い方法がありそうな気もしますが、ちょっとすぐに思いつかないです。すみません。
macchaka > Re: 検索結果ページのカスタマイズについて @ 2014/11/12 12:30
回答ありがとうございます。
ドキュメントはないのですね。

あくまでもテーマの中で片付けたいので、defaultレイアウトを使う方向で調整しています。

例えば、所謂デフォルトテンプレートを「ルートレイアウトテンプレート」で別のレイアウトを指定し、検索結果はdefaultを使うという方法もあると思いますが、defaultがデフォルトじゃないっていう状況を生み出すので、私としては好まない設定です。まぁデフォルトを何のデフォルトと定義するかの感覚の違いかもしれませんが。

トップページと、検索結果で何のレイアウトを使うか、「ルートレイアウトテンプレート」のように管理画面で設定できればいいなぁと思いました。

今回は、トップページと第1階層のコンテンツ、検索結果のページでそれぞれ微妙に共有化できず、共有化しようとするとかなり上位のタグからコンテンツに入れないといけないという状況でした。
記事のコンテンツはユーザが自由に変更できるので、最小限にする(うっかり変更しては困る部分を外す)必要がありますので、それだけテンプレートを作り分けないといけないものと認識しています。
(もちろん一つのレイアウトで、色々と切り分けで定義する方法もありますが、見通しが悪くなるのであまりやりません。)
n1215 > Re: 検索結果ページのカスタマイズについて @ 2014/11/12 21:54
macchaka 様

的外れだったらすみませんが、
もしサイドバーやヘッダーなどレイアウトに含まれる一部分を書き換えたいという状況なら
CakePHPのビューブロックを利用されてはいかがでしょう?
http://book.cakephp.org/2.0/ja/views.html#view-blocks

これだけのためにテーマ内にプラグインを作るのは大げさですし悩ましいですね。

Twitter: @n_1215

macchaka > Re: 検索結果ページのカスタマイズについて @ 2014/11/19 15:05
コメントありがとうございます。
なるほど、一つの方法ではありますね。

私自身は、CakePHPで開発をしているので、最終的には如何様にも…というのはあるんですが、方針としては表立ったところにはプログラムをかかず、DreamWeaverと同様の使用感というのを提供したいと思っているので、CakePHPはもちろん、PHPが分かっていない人が触れるように、なるべくシンプルにしたいです。

検索結果を表示するのは、コアの機能なので、GUIでなくてもいいので、どこかに設定できればいいのになぁという気がします。
ログイン
ユーザー名:
パスワード:


  新規登録 / パスワード紛失

検索

facebook
フォーラムで悩みが解決した場合など、よかったら「いいね!」をポチっとクリックしてください!質問の回答者や開発者の励みになります

フォーラムガイド


関連リンク

オンライン状況
32 人のユーザが現在オンラインです。 (32 人のユーザが フォーラム を参照しています。)

登録ユーザ: 0
ゲスト: 32