*ls2プラグインでのリスト出力の階層調整を… *ls2プラグインでのリスト出力の階層調整を… [#ibc6581a] -ページ: BugTrack -投稿者: [[reimy]] -優先順位: 普通 -状態: 完了 -カテゴリー: プラグイン -投稿日: 2003-03-12 (水) 01:16:24 -バージョン: **メッセージ <h1>から始まらないページの場合、左マージンが大きくなりすぎる。 **メッセージ [#b58ad16a] <h1>から始まらないページの場合、左マージンが大きくなりすぎる。 ls2プラグインのリスト出力も#contentsのように、<h1>から始まらない場合の階層の左マージンの調整をしてほしい。 :(例)|[[れいみぃ:FrontPageニュース一覧]] ~各記事のタイトルの左マージンが大きくなり過ぎ。 ---- -これが ***3 *1 ***3 **2 ***3 こんな風になればいいということですか? -- [[ぱんだ]] SIZE(10){2003-03-29 (土) 11:18:25} ・test/1 ・3 ・1 ・3 ・2 ・3 -悪評高い :) $_list_pad_strを空にすれば、とりあえず上記の動作になります。 -- [[ぱんだ]] SIZE(10){2003-03-29 (土) 14:33:35} -極端な例で言えばそうなりますが。#contentsと同じように。 -- [[reimy]] SIZE(10){2003-03-29 (土) 14:33:40} --こんな感じでしょうか。 -- [[ぱんだ]] SIZE(10){2003-03-29 (土) 14:53:33} //リスト構造を構築する function ls2_list_push(&$params,$level) { - global $_ul_left_margin, $_ul_margin, $_list_pad_str; + global $_ul_left_margin, $_ul_margin; + $_list_pad_str = ' class="list%d"'; -#contentsでは以下のようになります。なんでだろ。 -- [[ぱんだ]] SIZE(10){2003-03-29 (土) 14:39:17} ・3 ・1 ・3 <- ?? ・2 ・3 -上のパッチを当ててみましたが、パッチを当てる前とまったく変化がありません。[[れいみぃ:FrontPageニュース一覧]] -- [[reimy]] SIZE(10){2003-03-29 (土) 17:22:29} -default.cssでulのmargin-left:32px;padding-left:32pxが効いてしまっているからかと。 -- [[ぱんだ]] SIZE(10){2003-03-29 (土) 20:55:20} -<ul class="list1">の次の階層を<ul class="list4">と出力してるのがまずいです。これって常にlist4になるのかな? -- [[reimy]] SIZE(10){2003-03-29 (土) 21:36:26} --えーと。1+'見出しの*の数'になります。 -- [[ぱんだ]] SIZE(10){2003-03-29 (土) 22:15:25} -ls2_list_push()を //リスト構造を構築する function ls2_list_push(&$params,$level) { - global $_ul_left_margin, $_ul_margin; - $_list_pad_str = ' class="list%d"'; + global $_ul_left_margin, $_ul_margin, $_list_pad_str; - - $margin = $level - count($saved); + $margin = 1; - while (count($saved) < ($level - 1)) { - array_unshift($saved, ''); //count($saved)を増やすためのdummy - } - - $str = sprintf($_list_pad_str, $level, $left, $left); + $str = sprintf($_list_pad_str, count($saved), $left, $left); としてみてください。 -- [[ぱんだ]] SIZE(10){2003-03-29 (土) 22:26:03} -それだと同レベルの階層が1→2→3になってしまいます。 -- [[reimy]] SIZE(10){2003-03-29 (土) 22:37:06} ~正しくは ・FrontPageニュース/2003-03 * NTT西日本のトラブルに伴う更新作業の遅延 * 受信メールサーバー緊急メンテナンスのお知らせ * 恒例・春の高校野球トトカルチョ実施中 * 20日昼過ぎから一時的に接続障害が発生 のものが ・FrontPageニュース/2003-03 * NTT西日本のトラブルに伴う更新作業の遅延 o 受信メールサーバー緊急メンテナンスのお知らせ + 恒例・春の高校野球トトカルチョ実施中 + 20日昼過ぎから一時的に接続障害が発生 になります。 -あ…そうですね。 -- [[ぱんだ]] SIZE(10){2003-03-29 (土) 23:16:38} -上の修正を取り消して、 if (count($saved) < $level) { $cont = FALSE; array_unshift($saved, $close); + // 修正レベル + $_level = $level - $margin + 1; + // マージンを固定 + $margin = 1; $left = $margin * $_ul_margin; if ($level == $margin) { $left += $_ul_left_margin; } - $str = sprintf($_list_pad_str, $level, $left, $left); + $str = sprintf($_list_pad_str, $_level, $left, $left); ではどうでしょうか。 -- [[ぱんだ]] SIZE(10){2003-03-29 (土) 23:29:59} -バッチリです&heart; -- [[reimy]] SIZE(10){2003-03-29 (土) 23:53:10} -cvsに投入しました。[[cvs:plugin/ls2.inc.php]](v1.4:r1.10) -- [[ぱんだ]] SIZE(10){2003-03-31 (月) 00:20:51} --LS2_LIST_COMPACT定数およびcompactパラメータを追加しました。デフォルトでレベル調整を行う場合はLS2_LIST_COMPACTをTRUEに、その場その場で切り替える場合は調整を行う場合にcompactを指定するようにしてください。 -- [[ぱんだ]] SIZE(10){2003-03-31 (月) 00:27:44} #comment //#comment