質問箱/5048

カテゴリデザイン・CSS・スキン
サマリ中見出しの先頭に「●」の記号を常に付加したい
バージョン1.4.7
投稿者ジャコ?
状態完了
投稿日2011-04-02 (土) 22:57:55

質問

はじめまして、Pukiwikiを自宅や会社にて使用させて頂いています。
サマリについてなのですが、質問箱・公式ページ内で「見出し」で単語検索したり
検索サイトにて「Pukiwiki 見出し 記号 付加」などで検索をしてもわからなかった為、
質問をさせて頂きます。

中見出しの先頭にのみ常に「●」の記号を付加したいと思っています。

つまり編集画面にて

**あああ

と入力し、整形が

●あああ

となってほしいのです。

それも見出し全般(*、**、***)ではなく、中見出し(**)のみです。

この場合、CSSの変更ではなく、htmlを吐き出している部分を変更しなければならない
という所までは理解できるのですが、実際にどこをどういじればいいのかわかりません。。。

もし、どなたかわかる方がいらっしゃいましたら
アドバイスお願い致しますm(_ _)m

回答

  • 質問箱/3279質問箱/4184で話が出てる、lib/convert_html.phpを書き換えればできるとは思います。リンク先は見出しのレベル数を増やしたいという話題ですが、だいたいどのあたりが見出し部分のhtml化を担当しているかがわかるかと。 -- 2011-04-03 (日) 00:50:36
    • 実際にどこを書き換えるかで、contentsプラグインで表示できる目次のみ、見出し部分のみ、両方ともの3パターン、記号の付加方法が変わってきそうですが -- 2011-04-03 (日) 00:55:01
  • コメントありがとうございます。とりあえずコメントを参考にlib/convert_html.phpを以下のようにしてみたのですが。。。 -- ジャコ? 2011-04-03 (日) 02:22:51
    // * Heading1
    // ** Heading2
    // *** Heading3
    class Heading extends Element
    {
            var $level;
            var $id;
            var $msg_top;
    
            function Heading(& $root, $text)
            {
                    parent::Element(); 
    
                    $this->level = min(3, strspn($text, '*'));
                    list($text, $this->msg_top, $this->id) = $root->getAnchor($text, $this->level);
    
    +               if( $this->level == 2 )
    +               {
    +                       $text = '●'.$text;
    +               }
    
                    $this->insert(Factory_Inline($text));
                    $this->level++; // h2,h3,h4
            }
    ただこれだと整形後、表示は支障はないのですがhtmlのソースを確認してみると、「●」の直後に半角スペースが2つ入っているのですが、大丈夫なのでしょうか。。。
  • Factory_Inline関数に送ってからの処理でtrim関数が使われているので、普段ならカットされるていると思います。今回は頭に文字を付加してから送っているので、「●」の直後にある$textの先頭部分には働かなかったのだと思います。気になるのであれば、追加部分を
    $text = '●'.trim($text);
    とすれば消えると思います。 -- 2011-04-03 (日) 18:10:47
    • なるほど、そういう仕組みだったのですね。現在は自宅ではないので確認できないのですが、trim関数で空白を取り除く事がわかったので「完了」とさせて頂きます。問題があれば追記でもしようと思います。コメントをしてくださった皆様、ありがとうございました。 -- ジャコ? 2011-04-05 (火) 09:04:58


トップ   編集 凍結 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2011-04-05 (火) 09:06:42
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.204 sec.

OSDN