WordPressで追加CSSの登録ができない・・

WordPress CSSの追加

WordPressを使用する場合、有償、無償で公開されているテンプレートを使用することが多い。

カスタマイズが許可されているテーマの場合、スタイルシート・CSSをちょっといじって色を変えたりフォントを変更したりすることなどで見栄えを変えることができる。
 
 
ただ、ここで気になるのが配布されているテーマがアップデートされた場合の対処。
 
バクfixもあるのでなるべくならばバージョンアップされたら自分のサイトにも反映させておきたい。
このとき、オリジナルのスタイルシートをいじっていると再度変更する必要がある。
 
 
方法1
追加・変更する量が多い場合、自分で新たに追加のスタイルシートを作成し、オリジナルのスタイルシートの後に読み込むようにしておく。
 
この場合、テーマがアップデートされる都度、自作のスタイルシートを読み込む記述をテンプレートに追加する必要がある。
  
方法2
追加・変更する量が少ない場合、WordPressの機能で追加CSSを記述する。
テンプレートも対応しいてる必要があったりするが・・
  
WordPress CSSの追加
Wordpressのダッシュボードから「外観」-「カスタマイズ」で表示されるメニューの中にある「追加CSS」をクリックすることで追加するスタイルを記述するエディタが開く。
記述されたスタイルはhtml中に挿入される。
  
cssファイルを読み込むのに比べると、全ページに挿入されるので追加・変更する量が多い場合には不向きと思われるが、少量なら十分。

・・で、追加CSSを記述してみようとしたが。

WordPress CSSの追加
デフォルトで表示されているコメントの後にスタイルを書いて「保存して公開」をクリックすると・・・
・・何も起こらない。

ダッシュボードのページに移動しようとするとデータを破棄してよいかを尋ねるダイアログが表示される。
明らかにデータが書き込めていない模様。
 
ちなみに、WordPressのバージョンは4.8.1で現在の最新のもの。
 
WP Multibyte Patch などマルチバイト文字の取り扱いに関するプラグインの他、使用しているプラグインを停止したりしてみたが、書き込める様子はない。
 
デバッグ環境で試したところすんなり書き込めた。
 
 
どうやら、デフォルトで表示されているコメントを消してみたところうまくいったようだ。
ただ、運用環境ではコメントを消してもうまくいかないった。
ただ、気になるのはコメントは「/*」「*/」ともに消しているのにコメントの対応がとれていない旨のメッセージが入力フィールドの上部に表示されたり。
おそらく、WordPressのバグ。
 
 

試しに

コメントは全くない状態にして

.test{
font:10px;
}

と記述して「保存して公開」をクリックすると正常に処理がされた。

このとき、Wordpressは
「customized “{\”custom_css[テーマ名]…\”.test{\\nfont:10px;\\n}\”}”」
というデータをサーバにpostしていた。

ついで

/*test */
.test{
font:10px;
}

と記述して「保存して公開」をクリックすると処理はなされずボタンは「保存して公開」のまま。

このとき、Wordpressは
「customize_changeset_data “{\”custom_css[テーマ名]…n.test{\\nfont:10px;\\n}\”}}”」
というデータをサーバにpostしていた。
 
 
画面には表示されないがサーバ側は、

「The server refuse to browse the page.
The URL or value may not be correct. Please confirm the value.」

というページを返していた。
 
 
おそらく、「/*~*/」というコメントがあるとその処理をするロジックが「customize_changeset_data」というパラメータで送信しているのだが、このパラメータはサーバ側では使われておらず、現在は「customized」に変わっているのではなかろうか。
また、正常時に送信されていた「customize_changeset_status “publish”」というパラメータがエラー時には送信されていなかった。
このパラメータが不足しているのかも知れない。
さらに、エラー時に送信されたデータにはコメントの「/*test */」という文字列もなくなっているようだ。
 
こんなコメント処理ルーチンのバグで追加CSSの登録ができないのではなかろうか。
 

ということで。

wordpressの現時点のバージョン4.8.1ではコメントがあれば追加CSSの登録できないようだ。
また、コメントを削除しても登録ができない場合、一旦新たなスタイルは記述せず、空欄にして一旦書き込み。
その後再度編集することで追加できるようになる。・・・・場合があるかも。
 
 
どうしても書き込めない場合、バージョンアップに乞うご期待!!

 
・・急いで解決したい、興味のあるという方はソースファイルでも覗いてみれば解決するかも。