先日、このサイトの記事を編集していた最中に、少し驚く出来事がありました。
WordPressの管理画面で記事を修正し、実際のサイト表示を確認してみたところ、ページの一番上に見覚えのない記号が表示されていたのです!
「特に何もしていないのにナゼ?!」と慌てた私。
今回は、WordPressで記事を編集していた最中に突然現れた謎の記号について、考えられる原因や確認したい場所、不正アクセスの可能性などをまとめます。
事件発生~結末までの流れ
表示されていたのは、こちらです。
「”/>」
場所は、WordPressの管理バーのすぐ下で、サイトタイトルやヘッダーよりも上の部分でした。
その記号の下には、いつもどおり、
「本サイトはプロモーションを含みます」
「ワクワクたいむ」
という表示がありました。
記事を編集する前には、このような記号が出ていた記憶はありません。
そのため、最初は、
「記事を編集しているときに、何か変なコードを触ってしまった?」
「知らないうちにサイトの設定を壊してしまった?」
「もしかして不正アクセス?」
と、かなり不安になりました。
ただ、編集していたのは記事本文だけです。サイトのヘッダーを直接書き換えたり、WordPressのテーマファイルを編集したりしたわけではありません。
いったい何が原因だったのでしょうか。
結論からいうと、この「”/>」は、私が特別な修正作業をしないまま、数日後には自然と消えていました。
記事を編集した直後に「”/>」が表示された
今回の現象に気づいたのは、WordPressでこのサイトの記事を編集していた最中でした。
記事の文章を修正したり、プレビューや公開画面を確認したりしていると、突然、サイト上部に「”/>」という記号が表示されていることに気づきました。
記事編集の直後だったため、最初は自分の操作が原因だと思いました。
たとえば、記事本文にHTMLコードを貼り付けた際に、一部だけが残ってしまったのではないかと考えたのです。
WordPressの記事編集画面では、通常の文章だけでなく、画像、リンク、広告タグ、カスタムHTMLなど、さまざまなコードが扱われています。
ブロックエディターを使用していても、HTMLとして編集した部分や、外部サイトからコピーした文章に、不要なコードが混ざってしまう場合があるんですよね。
しかし、今回「”/>」が出ていたのは、記事本文の中ではありません。
表示されていたのは、サイトタイトルよりも上の部分。
記事本文の編集ミスであれば、通常は本文中や、編集したブロックの近くにおかしな文字が出るはずです。
そのため、記事を編集したタイミングと症状が出たタイミングは重なっていたものの、記事本文そのものが直接の原因とは限らないと考えました。
そもそも「”/>」とは、何なのでしょうか。
この記号は、HTMLタグの一部に見えます。
たとえば、Webサイトに画像を表示するときには、次のようなHTMLコードが使われることがあります。
このコードの末尾にも、「”/>」が含まれています。
本来はタグ全体がブラウザに処理されるため、この記号がそのまま画面上に表示されることはありません。
ところが、何らかの理由でHTMLタグの前半部分が消えたり、正しく読み込まれなかったりすると、閉じる部分だけが文字として表示されることがあります。
今回の「”/>」も、何らかのHTMLタグの断片だけがサイト上に出ていた可能性が高そうです。
考えられる原因としては、次のようなものがあります。
・HTMLタグの閉じ忘れや記述ミス
・広告コードの不具合
・テーマの設定欄に入った不要なコード
・カスタムHTMLウィジェットの表示崩れ
・ヘッダーへコードを挿入するプラグインの不具合
・HTML圧縮や高速化処理の失敗
・壊れた状態のページがキャッシュに残った
もしかして関係あるのでは?と気になったのは、謎の記号のすぐ下に表示させている
「本サイトはプロモーションを含みます」いう文章。
本来はこの文章だけが表示されるはずなのに、その直前にHTMLコードの断片が混ざった可能性も考えたけどいじった記憶はありません。
また、記事を編集していたとはいえ、ヘッダー部分のHTMLやテーマファイルを直接編集したわけでもありません。
そのため、私が手動で広告タグやヘッダーコードを書き間違えた可能性は低いと考えました。
WordPressで謎の記号が出たときの確認場所
記事を編集した直後に変な記号が表示されると、どうしても編集した記事ばかりを疑ってしまいます。
しかし、表示されている位置によっては、記事本文以外の場所が原因になっていることも。
今回のように、サイトタイトルよりも上に記号が表示された場合は、ヘッダー付近に関係する設定を確認する必要があります。
まず確認したいのは、WordPress管理画面の「設定」から「一般」です。
ここには、サイトタイトルやキャッチフレーズが入力されています。
サイトタイトルそのものよりも上に記号が出ているため、今回の直接的な原因である可能性は低そうですが、入力欄の先頭や末尾に見覚えのない記号が入っていないかを確認します。
でも確認してみたものの、何か変更になっているということはありませんでした。
次に確認するのは、「外観」から「カスタマイズ」。
使用しているWordPressテーマによって項目名は異なりますが、次のような設定を確認します。
・サイト基本情報
・ヘッダー設定
・ロゴ設定
・トップページ設定
・お知らせ表示
・広告設定
・アフィリエイト表記
・プロモーション表記
特に今回の場合は、「本サイトはプロモーションを含みます」という文言を表示している設定の影響があるのでは?と考えました。
この文章を入力している欄がある場合は、その前後に「”/>」や、途中で切れたHTMLコードが入っていないかを確認します。
でもやはり特に変化はありませんでした。
続いて、「外観」から「ウィジェット」も確認。
テーマによっては、サイト上部やヘッダーの前後にウィジェットを設置できます。
特に注意したいのは、次のような項目です。
・カスタムHTML
・テキスト
・広告ブロック
・ヘッダー上部
・トップページ上部
・お知らせエリア
過去に広告タグやアフィリエイトコードを貼り付けていた場合、そのコードがプラグインやテーマの更新によって、正しく読み込まれなくなることがあるそう。
記事編集中にプレビューや更新を繰り返したことでキャッシュが再生成され、以前から存在していたコードの不具合が、一時的に表面化した可能性もあります。
また、トップページとして固定ページを使用している場合は、その固定ページの本文先頭も確認します。
通常の編集画面だけでなく、コードエディターに切り替えて確認すると、通常の画面では見えないHTMLコードが見つかる場合があります。
プラグインも重要な確認ポイントです。
今回の症状と関係しそうなのは、次のような種類です。
・広告表示系プラグイン
・アフィリエイトタグ管理系プラグイン
・SEO系プラグイン
・キャッシュ系プラグイン
・高速化系プラグイン
・HTML圧縮系プラグイン
・ヘッダー・フッター挿入系プラグイン
ただし、原因を調べるために、いきなりすべてのプラグインを停止するのはおすすめできません。
運営中のサイトでは、レイアウトが崩れたり、必要な機能が使えなくなったりする可能性があるためです。
まずは、最近更新されたプラグインがないか、更新に失敗していないか、長期間更新されていないプラグインがないかを確認したほうが安全です。

プラグインの影響を確認する際は、一つずつ停止して、その都度表示を確認するという方法を取るとどれが影響しているのかわかりやすいです。
キャッシュ系のプラグインを使用している場合は、管理画面からキャッシュを削除してみる方法もあります。
さらに、別のブラウザやスマートフォンからサイトを開いてみることも有効です。
いつも使っているブラウザだけに「”/>」が表示され、シークレットモードや別の端末では表示されない場合は、ブラウザキャッシュが原因の可能性があります。
反対に、どの端末から見ても同じ場所に表示される場合は、WordPressやサーバー側から、実際にその文字が出力されている可能性が高くなります。
同じ症状が出たときは、まずスクリーンショットを撮っておくことも大切です。
今回のように、数日後に自然に消えてしまうと、あとから原因を調べようとしても表示を再現できないことがあります。
表示された日時、編集していた記事、直前に行った操作、プラグインの更新履歴なども、簡単にメモしておくと役立ちますよ。
数日後に自然と消えた理由はキャッシュ?
今回の「”/>」は、結局、私が何かを修正したわけではないのに、数日後には自然と消えていました。
記事本文を元に戻したわけでも、テーマを編集したわけでも、プラグインを停止したわけでもありません。
この経過から考えると、もっとも可能性が高いのは、一時的に壊れたHTMLの断片が、キャッシュに残っていたというものです。
WordPressのサイトでは、ページの表示速度を上げるために、いくつもの場所でキャッシュが利用されています。
たとえば、次のようなキャッシュがあります。
・パソコンやスマートフォンのブラウザキャッシュ
・WordPressのキャッシュ系プラグイン
・レンタルサーバー側のキャッシュ
・テーマが自動生成するキャッシュ
・CDNのキャッシュ
・HTMLやCSSを圧縮したデータ
記事を更新すると、サイトの一部またはページ全体のキャッシュが再生成されることがあります。
その際、テーマやプラグインの処理が一時的にうまくいかず、HTMLタグの一部だけが残った状態でページが保存された可能性があります。
その壊れた表示がキャッシュに残っていたため、数日間「”/>」が見えていたのかもしれません。
その後、キャッシュの有効期限が切れたり、自動的に新しいページが生成されたりしたことで、正常な表示へ戻ったと考えられます。
もう一つの可能性は、テーマやプラグインの一時的な不具合です。
特に、プロモーション表記、広告表示、SEO、高速化、キャッシュ、HTML圧縮などの機能は、サイトのHTMLへ自動的に処理を加えます。
記事の更新をきっかけに複数の機能が同時に動き、一時的に処理が競合した結果、HTMLタグの一部が画面に出てしまった可能性もあります。
また、WordPress本体、テーマ、プラグインの自動更新によって、知らないうちに不具合が修正された可能性もあります。
では、不正アクセスの可能性はどうなのでしょうか。
今回の状況だけを見る限り、不正アクセスの可能性はそれほど高くないと考えています。
理由は、表示されたものが「”/>」というHTMLコードの断片らしき記号だけだったからです。
知らない広告や外部サイトへのリンク、意味不明な文章、海外のスパム、見覚えのない画像などは表示されていません。
また、知らない記事や固定ページが追加された様子もなく、勝手に別のサイトへ転送される現象もありませんでした。
そして何より、数日後には自然と消えています。
これらの点から、悪意のある改ざんというよりも、一時的な表示崩れやキャッシュの不具合である可能性のほうが高そうです。
とはいえ、何も確認しなくてよいわけではありません。
念のため、次のような基本的な安全対策は行っておくと安心です。
・WordPress本体を最新版にする
・使用中のテーマを最新版にする
・プラグインを最新版にする
・使っていないプラグインやテーマを削除する
・知らない管理者ユーザーがいないか確認する
・WordPressのサイトヘルスを確認する
・キャッシュを削除する
・セキュリティプラグインでスキャンする
・WordPressのログインパスワードを見直す
・サーバーやFTPのパスワードを強化する
今回のように記事編集中に症状が出ると、自分の編集ミスだと思って慌ててしまいました。
しかし、表示されている場所が記事本文とは異なる場合は、テーマ、ウィジェット、プラグイン、キャッシュなど、サイト全体に関係する機能も確認する必要があります。
まとめ
今回、WordPressで記事を編集していた最中に、サイト上部へ突然「”/>」という謎の記号が表示されました。
記事編集の直後だったため、自分が何かを壊したのではないか、不正アクセスされたのではないかと焦りましたが、数日後には何もせず自然と消えました。
表示された記号がHTMLタグの断片に見えることや、知らないリンクや記事の追加などがなかったことから、一時的なHTML出力の乱れや、壊れた表示がキャッシュに残っていた可能性が高そうです。
同じことが起きた場合は、まずスクリーンショットを保存し、記事本文だけでなく、テーマ設定、ウィジェット、プラグイン、キャッシュを順番に確認することが大事だなと思いました。


コメント