blog.knym.net | I'm searching something to change my life.

wordpressでエントリ内の改行処理

  • markdownで改行をするときは文末にスペースを2回入れなければいけない。
  • syntax hilighterで、空行の入ったコードが<p>タグで分断される。

これらの対策を考えた。



に書いてある通りにとりあえずやってみる。


WordPress2.7.1を使ってるので、
CamCam » Blog Archive » 改行プラグイン WP2.7対応版
をインストール。


/wp-content/plugins/brBrbrbrBrbr.phpを編集

$brbr = preg_replace('/(&lt;form.<em>?&gt;)(.</em>?)&lt;\/form&gt;/ise', &quot;clr_br('$0')&quot;, $brbr);
$brbr = preg_replace('/(&lt;pre.<em>?&gt;)(.</em>?)&lt;\/pre&gt;/ise', &quot;clr_br('$0')&quot;, $brbr);
$brbr=&quot;&lt;p&gt;\n&quot;.$brbr.&quot;&lt;/p&gt;\n&quot;;
function clr_br($str){
    $str  = str_replace("<br />\n","\n",$str);
    $str  = str_replace('\"','"',$str);


<code-style>で囲う部分がめんどくさかったんでsyntax hilighterで挿入される<pre>タグに改行を消す処理を追加。


そうするとsyntax hilighterのコード内に<br />があるとそれも消えるので、
行末の<br />だけ消すようにし、
HTMLコードなどをsyntax hilighterで書くときは、
<br />を行末に置かないようにして対応することにした。


例えば、

[code language="html"]あああ<br />
いいい[\/code]
というように、<br />の後にスペースを一個入れとくとか。


あとは、<p><ul>タグのmarginを0pxにするように、sytle.cssに書いといて、いい感じになったと思う。


たぶん、ページ全体のレイアウトがえらいことになってると思うので、後から気付いたところは微調整しよう。

Related Posts

Write a Comment

XHTML: You can use these tags: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>

 

Essentials

Meta

Pages

Categories