2007年3月9日(金曜日)

wordpress と pukiwiki モジュールのブロックで折り返しをさせる小ネタハック

カテゴリー: - Ryuji @ 18時52分39秒

XOOPS Cube2.1 では、コアファイルを直接書き換えるようなハックは不要になりました。
しかし、モジュールの動作はコアから手を加えられないのでまだまだハックが必要になることもあります。

というわけで、最近やってみた小ネタハックを今日は書いてみます。

■ PukiWiki最新記事ブロックで、階層化された英語ページ名を折り返しできるようにする
PukiWiki はページ名を / で区切ると仮想的に階層とみなすローカルルールがあります。
これを利用して階層化したページを作成すると、階層の深さに比例してページ名が長くなります。

例)
XOOPSCubeLegacy/BasicTutorial/GettingStarted

このような長いページ名がある状態で PukiWiki 最新記事ブロックを左ブロックに出すと、改行されずレイアウトがくずれてしまいます。

そこで、PukiWiki 最新記事ブロックで / の前後に半角スペースを入れるハックです。

pukiwiki/blocks/block_function.php 54 行目あたり

$retval .= $sep.$link;

$retval .= ' '.$sep.' '.$link;

にするだけです。

実例は http://xoopscube.org/ の左ブロックをご覧ください。

■ Wordpress の最新コメントブロックで強制折り返しする
スタッフ BLOG の左ブロックに wordpress の最新コメントブロックを表示させているのですが、コメント冒頭に URL を記述されたときに折り返されずに表示されるためレイアウトが崩れるという症状が発生しました。

そこで、コメントに決まった文字数で強制的に
を入れるハックです。

強制改行するためのコードは、zk diary にある、mb_wordwrap を利用させてもらいました。

wordpress/blocks/wp_recent_comments.php の

	define( 'WP_RECENT_COMMENTS_INCLUDED' , 1 ) ;

の下に、
zk diary にある、mb_wordwrap のコードをコピペ。
(ほんとは別ファイルにして preload で読み込みがいいかな)

b_wp_recent_comments_show の

$comment_excerpt = mb_substr($comment_content,0,$comment_lenth);

の下に、

$comment_excerpt = mb_wordwrap($comment_excerpt, 22, '>br /<');

を追加。
上記は半角 22 文字で br を挿入するようになってますが、この数字は適当に調整してください。


RSS feed for comments on this post.

ƤˤϡޤȤդƤޤ

Ȥ

ʤߥȤդ뤳ȤϽޤ

10 queries. 0.009 sec.
Powered by WordPress Module based on WordPress ME & WordPress

〒104-0061 東京都中央区銀座1丁目3番3号 G1ビル7階
お問い合わせ TEL 03-3524-8860

Copyright(c) 2012 RYUS.All Rights Reserved.