さっきふとみたら過去記事の改行が全部ぶっとんでてほんと焦った…
泣きそうになりながらひとつづつ直してたんだけどふとした表紙に「テキスト」のほうに切り替えて、あれ改行残ってるじゃん? って思ったら今度は「ビジュアル」のほうに戻せなくなった。泣きっ面に蜂とはこのことだ。
それで調べてみると、どちらも同じプラグイン「PS Disable Auto Formatting」が原因ぽいことが分かった。
WordPress 4.3でビジュアルエディタに変更できないエラーの原因!アップデート後の不具合対応と解決方法!
まず改行が全部飛んでたのについては、ダッシュボードの「設定→自動整形」の「記事内容の自動整形」がオフになっていたので、それを戻すと治った。
次に「ビジュアル」にできないほうは…もうプラグインをオフにするしかないみたいなので、それで対応。
代わりに「TinyMCE Advanced」の「Stop removing the <p> and <br /> tags when saving and show them in the Text editor」をオン。
それで改行問題も発生しなかったので、最初からこちらでいいかも。
もともと「PS Disable Auto Formatting」は、行頭の全角スペースが消されてしまうのを避けるために入れていたのですが、TinyMCE Advancedのチェックのほうでも全角スペースは消されないみたいなのでオフにしても問題なさそうです。
(2016/3/13追記)
「設定→自動整形」は「PS Disable Auto Formatting」の項目のようで、これをオフにすると出てこなくなるみたい。
改行が全部飛ぶという現象についてももう少し掴めた。
どうもWordPressのビジュアルエディタが全角スペースや改行などをデータとしてDBに保存していない→保存時と読み込み時に<p>タグなどを補完している、という状態で、
TinyMCEのオプションはそれを無効にする、つまり保存時に<p>タグなどがついたままにするし、読み込み時にも変換しない。
(だから「テキスト」にすると<p>タグとか一杯出てくる)
ただそれは過去にさかのぼって適用されないので、このオプション以前の記事では<p>タグが落とされた状態のテキストが変換なしで復元され、結果として改行もなにも全部とんだ状態になってしまうみたい。
対応はわからん。オフならオフで使い続けるしかない。オンにしたければ全部刷新するしかない。
頭にきたので「Search Regex」プラグイン使って\r\nを全部<br/>に一括で置き換えてやろうかとも思いましたがより厄介な事案に発展するとほんとにつらいので、
・「Stop removing the <p> and <br /> tags when saving and show them in the Text editor」をオンにする。今後書く記事はこれでOK。
・今までのぶんは、修正が必要なときに「テキスト」で開いた状態で一度戻って開き直す→改行が消されていないデータが出てくるので、まず手動で\r\nを<br/>などに置き換え、整形→修正を行って保存
というふうにしていこうと思います…
すでに公開したページはオプションの変更で影響受けていないので、「ビジュアル」で開いたときに改行が置き換えられて、その状態で保存すると改行が飛ぶ、という挙動のようなのでこれで回避できそう。つらい。
コメント