10/3 「広告表示に関して」を掲載。【重要】
記事内に広告が含まれています。

WordPressのつまづきポイント:「勝手にブランク」の謎。

スポンサーリンク

たまには

自分がWordPressを(なんとか)扱えるのは、ネットにソースを転がして下さる親切な方達さまさま。

恩返しとは言えませんが、なかなか検索出来なかった落とし穴をのっけてみようかな。
まぁ、私みたいなミスする人がそうそういるとは思えないんですが・・・念のため。^^;


現象

現象は「PHPファイルをブラウザで表示させると最上部に謎のブランクが空く」ことでした。

ブラウザでソースを表示させてみると、こんな感じ。

プログラムの1行目が空いている

原因

原因を絞り込むために、まず複数のブラウザで開いて、ブラウザ依存の不具合じゃないことを確認。
念のため、htmlやCSSにミスが無いかもチェックしました。

ここで気付いたのが、カスタムテンプレートを使ったページだけに起こるという点。
でも、ひとつのテンプレートだけじゃない。
カスタムテンプレートを使ってるページすべてにブランクが存在しました。

つまり、カスタムテンプレートに関係あるということが判明した訳なんですが・・・
ここからが長かった。^^;

カスタムテンプレートはもちろん、WordPressに投稿した記事にも問題が無い。
徹底的に調べ直しましたが、htmlやCSSに怪しい点を見つけられませんでした。

ぶっちゃけ、ブラウザの表示は問題無いので放置でもいいんだけど、
タグチェッカーにかけると、不要な改行があるって怒られちゃうんだよねー。
なんか、くやしい。w


犯人は

で、ひたすら検索して数日。
とある記事で「無駄な空白ひとつあってもアウト」という内容を見ました。
タグの再チェックの際、空白はチェックしたけど・・・と、ここで思い当たりました。

空白がダメなら改行も?

私は昔からタグを見易くするために、改行を入れてしまう癖がありました。
いや、でも、改行だけが問題ならカスタムテンプレートを使ってないページもブランクが空くはず。

まぁ、とりあえず不要な改行を取ってみようということで、
カスタムテンプレートの中の改行を削除してアップしてみたら・・・

消えました、ブランクくん。

えー、なんでー?と思いつつ、
今度は改行を追加していって、原因箇所を特定してみました。

ここです。

プログラムの6行目が空いている

テンプレートを使うためのお約束「テンプレートネーム」の後に、ヘッダーの記述をしてるんですが、区別するためにフツーに改行を入れてました。
だから、カスタムテンプレートだけに出てたんですね。

つか・・・これって、私だけ?^^;

プログラムとしては6行目が一番最初の行。それが改行なのでブランク。至極当たり前ですね。
「シビアだ」というのは聞いてましたが、この改行もダメですか。そうですか。w

犯人は自分の記述癖でした。

まぁ、でも、ルールに忠実ってのは、ある意味いいことだと思います。
不具合だって分かってるのに、ユーザーに甘えて、いつまでも改善しないブラウザとかとかとか・・・。(あ、逸れた。)

と、とにかく、無事に改行の謎はクリア出来たので超スッキリしました。^^

経緯もずらずら書いてしまったので、分かり難い報告ですみません。
もしかしたら、同じケースで悩んでる人の助けになったらうれしいです。
って、いないか。w


〔広告〕

コメント