ls2プラグインでのリスト出力の階層調整を…

  • ページ: BugTrack
  • 投稿者: reimy
  • 優先順位: 普通
  • 状態: 完了
  • カテゴリー: プラグイン
  • 投稿日: 2003-03-12 (水) 01:16:24
  • バージョン:

メッセージ

<h1>から始まらないページの場合、左マージンが大きくなりすぎる。 ls2プラグインのリスト出力も#contentsのように、<h1>から始まらない場合の階層の左マージンの調整をしてほしい。

(例)
れいみぃ:FrontPageニュース一覧

各記事のタイトルの左マージンが大きくなり過ぎ。


  • これが
    ***3
    *1
    ***3
    **2
    ***3
    こんな風になればいいということですか? -- ぱんだ 2003-03-29 (土) 11:18:25
    ・test/1
      ・3
      ・1
        ・3
        ・2
          ・3
  • 悪評高い :) $_list_pad_strを空にすれば、とりあえず上記の動作になります。 -- ぱんだ 2003-03-29 (土) 14:33:35
  • 極端な例で言えばそうなりますが。#contentsと同じように。 -- reimy 2003-03-29 (土) 14:33:40
    • こんな感じでしょうか。 -- ぱんだ 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では以下のようになります。なんでだろ。 -- ぱんだ 2003-03-29 (土) 14:39:17
      ・3
      ・1
          ・3 <- ??
        ・2
          ・3
  • 上のパッチを当ててみましたが、パッチを当てる前とまったく変化がありません。れいみぃ:FrontPageニュース一覧 -- reimy 2003-03-29 (土) 17:22:29
  • default.cssでulのmargin-left:32px;padding-left:32pxが効いてしまっているからかと。 -- ぱんだ 2003-03-29 (土) 20:55:20
  • <ul class="list1">の次の階層を<ul class="list4">と出力してるのがまずいです。これって常にlist4になるのかな? -- reimy 2003-03-29 (土) 21:36:26
    • えーと。1+'見出しの*の数'になります。 -- ぱんだ 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);
    としてみてください。 -- ぱんだ 2003-03-29 (土) 22:26:03
  • それだと同レベルの階層が1→2→3になってしまいます。 -- reimy 2003-03-29 (土) 22:37:06

    正しくは

    ・FrontPageニュース/2003-03
       * NTT西日本のトラブルに伴う更新作業の遅延
       * 受信メールサーバー緊急メンテナンスのお知らせ
       * 恒例・春の高校野球トトカルチョ実施中 
       * 20日昼過ぎから一時的に接続障害が発生
    のものが
    ・FrontPageニュース/2003-03
       * NTT西日本のトラブルに伴う更新作業の遅延
          o 受信メールサーバー緊急メンテナンスのお知らせ
            + 恒例・春の高校野球トトカルチョ実施中 
            + 20日昼過ぎから一時的に接続障害が発生
    になります。
  • あ…そうですね。 -- ぱんだ 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);
    ではどうでしょうか。 -- ぱんだ 2003-03-29 (土) 23:29:59
  • バッチリです(heart) -- reimy 2003-03-29 (土) 23:53:10
  • cvsに投入しました。cvs:plugin/ls2.inc.php(v1.4:r1.10) -- ぱんだ 2003-03-31 (月) 00:20:51
    • LS2_LIST_COMPACT定数およびcompactパラメータを追加しました。デフォルトでレベル調整を行う場合はLS2_LIST_COMPACTをTRUEに、その場その場で切り替える場合は調整を行う場合にcompactを指定するようにしてください。 -- ぱんだ 2003-03-31 (月) 00:27:44

トップ   編集 凍結 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2003-03-31 (月) 00:28:13
Site admin: PukiWiki Development Team

PukiWiki 1.5.2+ © 2001-2019 PukiWiki Development Team. Powered by PHP 5.6.40-0+deb8u7. HTML convert time: 0.224 sec.

OSDN