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

ブログの single.ctp における contentsNavi のカスタマイズについて

hataya > ブログの single.ctp における contentsNavi のカスタマイズについて @ 2012/10/16 11:00
こんにちは

いつもお世話になっております TSR 畑屋 です

現在、自社ホームページのリニューアル作業をしているのですが、ニュースリリースや社員ブログなどでブログモジュールを利用しております。

そのなかで、ブログの個別記事(single.ctp)の contentsNavi 部分で、ブログタイトルの文字数が多いと画面の幅やコンテンツの幅によっては自動改行されてしまうため見栄えが良くありません。

そこで、single.ctp の contentsNavi 部分のカスタマイズをすることによって対応できるのではないかと思ったのですが、下記のような出力をさせることは可能なのでしょうか?

A案)
一定の文字数だけ表示する
----------
<< 〜〜〜〜長いブログタイトル〜〜〜〜〜 | 〜〜〜〜長いブログ
タイトル〜〜〜〜〜 >>
----------
 ↓
----------
<< 〜〜〜〜長いブログタ... | 〜〜〜〜長いブログタ... >>
----------

B案)
タイトルではなく「次の記事へ」とか「前の記事へ」という表記にする
----------
<< 〜〜〜〜長いブログタイトル〜〜〜〜〜 | 〜〜〜〜長いブログ
タイトル〜〜〜〜〜 >>
----------
 ↓
----------
<< 前の記事へ | 次の記事へ >>
----------

以上 よろしくお願いいたします。

〜環境〜
-----
■ BaserCMSのバージョン:4.0.0
■ 設置フォルダ:ドキュメントルート
■ 利用しているデータベース:CSV
■ PHPスキル(自己評価): E

goichi > Re: ブログの single.ctp における contentsNavi のカスタマイズについて @ 2012/10/18 22:00
こんにちは(^^

single.ctpで前後の記事を表示するリンクが以下のように書かれていると思います。
<!-- contents navi -->
<div id="contentsNavi">
	<?php $blog->prevLink($post) ?>
	&nbsp;|&nbsp;
	<?php $blog->nextLink($post) ?>
</div>


前の記事へのリンクを示すのが
<?php $blog->prevLink($post) ?>

というコードで、実際の処理は
/baser/plugins/blog/views/helpers/blog.php
の453行目付近から始まっています。
(カスタマイズする際は例によって
/app/plugins/blog/views/helpers/blog.php
を作って、そちらを変更するのが良いと思います)

この処理の中で、480行目付近だと思いますが
$title = $arrow.$prevPost['BlogPost']['name'];

というのがあると思います。
ちょっと試していないのですが(汗)、これが前の記事へいくリンクのテキスト部分になると思います。
これを例えば以下のようにすれば
//$title = $arrow.$prevPost['BlogPost']['name'];
$title = $arrow.'前の記事へ';

リンクの内容が変わるのではないでしょうか?

ちなみに次の記事へ行くリンクの処理も同じファイルの493行目付近から始まり、
リンクのテキスト部分を520行目付近で生成しています。
(同じような処理なので、みてもらうと分かると思います。)

間違ってたらごめんなさい。
参考までに回答してみます。m(__)m


ryuring > Re: ブログの single.ctp における contentsNavi のカスタマイズについて @ 2012/10/18 22:45
こんばんは。

$blog->nextLink は、第2引数に文字列を入れるとその文字が優先されます。

<?php $blog->nextLink($post, '次の記事へ') ?>


prevLinkも同様です。

お試しくださいな

Twitter:@ryuring
baserCMS総合サービスサイト ビーコミ

hataya > Re: ブログの single.ctp における contentsNavi のカスタマイズについて @ 2012/10/23 15:07
goichiさん
ryuringさん

さっそくレスありがとうございます。
(お休みをいただいていたのでチェックするのが遅くなってしまいました・・)

今回は取り急ぎ ryuringさん からご案内いただいた方法で対応させていただきます。
goichiさんからご案内いただいた内容についてはソースコードの勉強も兼ねてあとで試してみます。

〜環境〜
-----
■ BaserCMSのバージョン:4.0.0
■ 設置フォルダ:ドキュメントルート
■ 利用しているデータベース:CSV
■ PHPスキル(自己評価): E

ログイン
ユーザー名:
パスワード:


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

検索

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

フォーラムガイド


関連リンク

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

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