新着情報の表示を画像有版なし版と使いたい(blogPosts)
NEEZ > 新着情報の表示を画像有版なし版と使いたい(blogPosts) @ 2012/2/9 22:05 |
---|
初めて投稿しております、宜しくお願い致します。
ページにブログの新着を表示したい時に 使用する関数ですが、 ●画像有の新着 例 blogPostsPhoto('news', 3) ?> ●通常の新着(デフォルト) blogPosts('news', 3) ?> 新着に画像表示する方法は過去の投稿から、 foreach($posts as $key => $post):内で $blog->getPostImg($post); により取得できる事が分かりましたが、2つを使い分けするにはどのようにしたらいいのでしょうか? 何卒宜しくお願い致します。 ■ BaserCMSのバージョン:1.6.15 ■ レンタルサーバー名:専有サーバ root権限有 ■ スマートURLの利用: [ON] ■ 設置フォルダ: [ドキュメントルート] ■ 利用しているデータベース: [MySQL] ■ PHPスキル(自己評価): [ C ] |
goichi > Re: 新着情報の表示を画像有版なし版と使いたい(blogPosts) @ 2012/2/12 22:46 |
---|
こんにちは〜、通りすがったので返信してみています。
(ご希望通りの回答でなかったらすみません・・・・。) >2つを使い分け これはつまり、 例えば「画像有りの新着一覧」と、「画像無しの新着一覧」というふうに、 新着情報(news)を表示する箇所がサイト内に2ヶ所あるというようなイメージですよね。 (違いますか?違ったらごめんなさい。) だとしたら、(実際に試してないのですが・・・)、 blogPostには第3引数でテンプレートを指定できる箇所があったように思います。 (http://basercms.net/reference/archives/90) そこで、 画像有りのテンプレート($blog->getPostImgを使ったもの)と、 画像なしのテンプレートを2つ用意して、 状況に応じて読み込むテンプレートを変更することで対応できないでしょうか? お役に立てなかったらごめんんさい。 |
NEEZ > Re: 新着情報の表示を画像有版なし版と使いたい(blogPosts) @ 2012/2/15 19:18 |
---|
goichi様
ありがとうございます! 引数でのテンプレート指定を試してみたいと思います! |
NEEZ > Re: 新着情報の表示を画像有版なし版と使いたい(blogPosts) @ 2012/2/15 20:09 |
---|
goichi 様
app/webroot/themed/{テーマ名}/blog/thumbnail/posts.ctp を準備して、表示させたいページへ blogPosts('news_company', 3,array('template'=>'thumbnail')) ?> を記述したところ エラー : リクエストされたアドレス '/admin/pages/edit/1' はこのサーバにありませんでした。 というエラーがでてしまいました。 原因はわかりますでしょうか??? 何卒宜しくお願い致します。 ※テーマ名はオリジナルで作成しております |
arata > Re: 新着情報の表示を画像有版なし版と使いたい(blogPosts) @ 2012/2/15 20:40 |
---|
ちょっと通りますよ。。。NEEZさん、こんにちは!
テンプレート名を posts で用意されてるので、この場合、第3引数のテンプレート指定は不要です。 ※指定なしのデフォルトでは posts.ctp が使われます。 app/webroot/themed/{テーマ名}/blog/thumbnail/posts.ctp を app/webroot/themed/{テーマ名}/blog/thumbnail/thumbnail.ctp として作成している場合には必要になる指定の仕方ですね。 ■ 不明点解消できるかも。逆引きガイドもあります baserCMS公式wiki |
goichi > Re: 新着情報の表示を画像有版なし版と使いたい(blogPosts) @ 2012/2/15 23:54 |
---|
NEEZさん、arataさん、こんにちは〜(^^
arataさんのおっしゃっている事が正解だと私も思いますが、まずは以下の点を確認してみてください。 管理画面のブログの基本設定で、「コンテンツテンプレート名」が「thumbnail」になっているでしょうか?(レイアウトテンプレートではありません。) もしも、「default」のままになっているならば、新たに作成されるCTPファイルは「app/webroot/themed/{テーマ名}/blog/default/」配下に置くことになります。 ですので、例えば blogPosts('news_company', 3,array('template'=>'thumbnail')) で呼び出す際は、以下のようになると思います。 ・コンテンツテンプレートが「default」の場合 「app/webroot/themed/{テーマ名}/blog/default/thumbnail.ctp」 ・コンテンツテンプレートが「thumbnail」の場合 「app/webroot/themed/{テーマ名}/blog/thumbnail/thumbnail.ctp」 いかがでしょうか? 一度お試し下さい(^^ |
NEEZ > Re: 新着情報の表示を画像有版なし版と使いたい(blogPosts) @ 2012/2/16 0:10 |
---|
arataさん
goichiさん ご返答ありがとうございます! まさにご指摘の通りでした。 関数リファレンス(http://basercms.net/reference/archives/90%EF%BC%89) のコンテンツテンプレート名(default)とテンプレート名(thumbnail.ctp) を勘違いしておりました。。。 ●実装結果 ・コンテンツテンプレート「default」 app/webroot/themed/{テーマ名}/blog/default/posts_thumbnail.ctp を置いて、表示したいページで以下のように記述することで実装できました。 blogPosts('news', 3,array('template'=>'posts_thumbnail')) ?> |
arata > Re: 新着情報の表示を画像有版なし版と使いたい(blogPosts) @ 2012/2/16 14:12 |
---|
NEEZさん、解決して良かったです〜ヽ(・∀・)ノ
これからもbaser楽しんで触ってくださいね! goichiさん、大変丁寧な追加解説ありがとうございました! ■ 不明点解消できるかも。逆引きガイドもあります baserCMS公式wiki |