質問箱/5215

カテゴリデザイン・CSS・スキン
サマリ一部の見出し要素が指定通りに反映(表示)されない
バージョン1.4.7→1.5.1
投稿者あお
状態完了
投稿日2016-04-12 (火) 16:48:40

質問

よろしくお願いします。
レンタルサーバの移転に伴い、古いサーバからごっそり落として新しい方に入れようとしています。
それまで稼働していたのは1.4.7のEUC版で、これを機に1.5.1に上げようとしています。
現状は、1.5.1EUC版の基本セットをアップしたところに、旧サーバで使っていたwikiやskinなど固有のデータに差し替えています。
もちろんpukiwiki.ini.phpを新サーバ用に書き換えるなども行い、ひとまず移転は済んだように見えるのですが、cssで指定している見出し要素の一部が再現できていない現象が起きています。

pukiwiki.css.phpで設定している、それぞれの見出し要素が、*~***までは、これまで通りに再現するのですが、*が4つ以上になると無視され再現しません。
例えば***がh4として、任意のwikiページで*****と指定した場合、<h4>が表示された後に意味のない文字列として「**」と表示されます。

基本セットからプラグインを追加したりもしているので、純然たる構成ではありません。
明日以後、時間を見て腰据えて取り組もうと思いますが、もし何かヒントといいますか、チェックすべきポイントなど思いつくことがございましたらご教示いただければ幸いです。

回答

① /lib/convert_html.php
 class Heading extends Element
  function Heading(& $root, $text)
   $this->level = min(5, strspn($text, '*')); //3 を 5 へ
class Body extends Element
 function getAnchor($text, $level)
  if($level < 4) //追記 #contents の見出しから **** ***** は除外する
  $this->contents_last = & $this->contents_last->add(new Contents_UList($text, $level, $id));
② lib/html.php
 function make_heading(& $str, $strip = TRUE)
  if (preg_match('/^(\*{0,5})(.*?)\[#([A-Za-z][\w-]+)\](.*?)$/m', $str, $matches)) { //3 を 5 へ
   $str = preg_replace('/^\*{0,5}/', '', $str); //3 を 5 へ

私の場合、実際には「5」ではなく「6」にして運用していたようです。今回もこれに倣い、動作確認もしましたが望みどおりに表示しています。
②の方は質問箱/3279と同じですが、加えてconvert_html.phpにも手を加えているようです。皆さまありがとうございました。完了とさせていただきます。 -- あお 2016-04-18 (月) 13:28:00


*1 お試しサイトでは出来たのですが

トップ   編集 凍結 差分 履歴 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2023-11-23 (木) 19:14:24
Site admin: PukiWiki Development Team

PukiWiki 1.5.4+ © 2001-2022 PukiWiki Development Team. Powered by PHP 8.2.12. HTML convert time: 0.294 sec.

SourceForge