サーバーエラーメッセージリンク

クイックインストールをした直後や、デモサイトをレストアした直後等、トップページ以外が全て404エラーでアクセスできないことがたまにあります。

ルートにあるべき「.hraccess」が存在しなかったり、存在していても記述が足りなかったりするとこの現象が起きます。

この場合「設定 ⇒ パーマリンク」と進み「変更を保存」することで大抵解決します。

※内容は変更してもしなくても構いません。

特定のページのみ404になる場合

固定ページと同じスラッグのフォルダが存在すると、

  • 古いHTMLファイルが表示されたり
  • 404エラーになったり

します。(WPのスラッグよりも優先されます)

削除、リネームなどで回避しましょう。

サーバーエラーメッセージセキュリティ

WAFが掛かっていると、ナビゲーション、テーマオプション、テンプレートファイル等、あちこちが書き換え不能になります。

特にGMO系列のサーバーは標準でONになっていますので注意です。


WAFが掛かっていたらセキュリティは万全か?

当然「NO」なので、切っても構わないでしょう。さくら、Xサーバーは標準でOFFです。

心配な場合は、変更が必要な時だけOFFにして、またONに戻すと良いでしょう。

サーバーリンク

データベースに保存された絶対パスは、レストアの際に自動で変換されます。

これには、本文、ナビゲーションメニュー、ウィジェットなどが含まれます。

メディアライブラリから登録した画像がリンク切れにならないのはこのためです。

 

一方、データベース保存ではないパスは一切変換されません。

これにはテンプレートファイルやCSSファイルが含まれます。

また、標準では存在しないデータも変換してくれないようですので、「テーマオプション > ログイン画面のCSS」等も要注意です。

 

こういった差異があるため、「どんな場合でもリンク切れを起こさない」マジックはありません。

ただし、公開サーバーに出来るだけ近い状態でデモを作ることで、リンク切れを最小限に抑えることは出来ます。

設置例

NG:ドメイン/デモ1/wp、ドメイン/デモ2/wp

CSSの画像パスなどは、絶対パスで書いても相対パスで書いても、すべて書き換える必要がある

無難:サブドメイン1/wp、サブドメイン2/wp

CSSの画像パスなどは、相対パスで書いておけば書き換え不要

※弊社が、お客様毎の個別サブドメインに設置していたのはこれが理由です。

※コーポレートの下にリクルートが来る場合なども、同じディレクトリ構成にしてデモを作ると後手間が少ないです。

HTMLプリセットリンク

サイト外にリンクを張ると自動で外部リンクアイコンが入ります。

例:ググる

 

外部サイトに飛ぶことを明示するためですが、バナーやボタンの場合邪魔になります。

 

こういう場合は、スタイルから「装飾無しリンク」(class=”link-decoration-none”)を充ててみてください。

SSLHTML

Aレコードだけ変更して、別のサーバー(以降サーバーB)で公開する場合

サーバーBを向いた後でなくてはWPの設置、レストアは出来ません。

  • さくらサーバーの場合は初期ドメインにレストア後、初期ドメイン = 公開ディレクトリとすることでレストアをすますことが出来ます。
  • Xサーバーの場合、初期ドメインと公開ディレクトリは必ず異なるので、初期インストールは出来てもアクセスできず、レストアも出来ません。

他のサーバーでも、上記ルールに従って可能な処理が決まってきます。

SSL

SSLなしの状態からSSLありの状態にするには、下記の変更が必要です。

・WPの「設置アドレス」「サイトアドレス」をhttpsに変更する

・画像やスクリプトのソースパスをhttpからhttpsに変更する

記事内に挿入した画像は絶対パスで記述されるので「設置アドレス」「サイトアドレス」を変更しただけでは非SSLが残り、ブラウザによっては「安全でない接続」と警告が出ます。

 

サイトをSSL化したうえで、WPの「設置アドレス」「サイトアドレス」をhttpsに変更、この状態でレストアを行うと、これらもhttpsに変換されるので「安全な接続」を得ることが出来ます。

 

つまり、

  • サイトをSSL化した後⇒1回のレストア作業
  • あとからSSL化する場合⇒2回のレストア作業

となり、当然コストも反映されます。

どうしてもブランク無しで移転したい!

・移転前がHTML構造なら、ファイルをコピーしておき、サーバーが切り替わった後でWP化する

・移転前からWPならば、「引っ越し中」や簡易的なマイクロサイト等のHTMLを表示させておく

どちらかくらいしか選択肢はありません。

CSSHTML

表(table)は、全てCSSファイルでコントロールしています。

直接記述が必要なのは、

  • <table class=”table-block”>
  • <table class=”table-scroll”>
  • <table class=”table-plain”>

等、tableに付与するclassと、<td>、<th>の区別だけです。

width、style等のインラインスタイルは全て削除してください。

※何も足していなくても、勝手に入ってしまうことが多々あります。テキストモードにして何も入っていないか確認しましょう。

※表全体を選択し、編集ツールバーの消しゴムを選択するとだいたい消えます。

参考:表のスタイル

HTMLページ内遷移リンク

ブロック「id=”content”」に遷移させたい、とします。

同一ページ内遷移

「a href=”#content”」

読み込み動作は入りません。

ただし、違うページのページ内に遷移したい場合は使用できません。

他ページのページ内遷移

「a href=”ページURL?id=content”」

読み込み動作が入ります。

常に読み込み動作が入っても良いならば、こちらで統一するのもアリです。

ショートコードエラーメッセージ

サイト内に存在しない投稿タイプやタクソノミー(分類方法)を指定するとエラーメッセージを出します。

エラーを出さず、サブループも出ない、となると間違いを探すのが難しくなるからです。

公開済みのサイトでショートコードを使う場合は、テスト用の非公開ページなどで試してから公開用ページに記述すると良いでしょう。


管理者、編集者向けショートコードは、あえてエラー処理をしていないことが多いです。指定したパラメーターが「そもそも存在するか?」を見直すと解決の糸口になりやすいです。

スクリプト

表示枠数と表示コマ数を見直してください。

例:表示枠数:3、表示コマ数:3

この場合、オーバーフローする投稿が無いのでカルーセル動作は起きません。

記事の総数が表示枠数以下の場合も同様です。