つまづき体験記:スラッグが日本語だとページの表示がおかしい?

スポンサーリンク


 

ローカル環境で動かしていたWordPressをサーバーにアップロードすると、予期せぬ問題が次々と発生します。初心者の私にはチンプンカンプンですが、粘り強くクリアして、原因を報告してゆきたいとおもっています。

投稿直後のスラッグはタイトルそのまま

さて、ありがちなミスなのかもしれませんが、記事を投稿する際にタイトルを入力をすると、パーマリンクの最後の文字列がタイトルそのままになります。この部分は「スラッグ」と呼ばれていて、投稿ページや固定ページ、カテゴリーなどの分類に役立っています。

わかりやすい解説はエス技研さんのブログにありました。感謝です。

私は日本人で、日本人向けにブログを書いているので、タイトルも当然日本語が中心です。しかし、スラッグを日本語のままにしておくと、とんでもない事態になってしまうことが、WordPress2投稿目で判明しました。

画面が左端に寄ってしまっている!?

下記の画像をご覧ください。(画像が小さくてすみません)

error-slug

レスポンシブサイト対応を実験中だったので、iPadからも投稿を確認したのですが、画面が左端に小さく寄っているではありませんか。焦って他の投稿も確認したのですが、このような事態が起こっているのはこの投稿だけでした。

スポンサーリンク

エラーページだけスラッグが日本語になっていた

他の投稿と比較しながら数時間。この投稿だけ、なぜこのようなことが起きたのかを突き詰めた結果、一つの結論に達しました。それが、スラッグだったのです。この投稿だけスラッグが日本語だったことから、スラッグを適当な英語に変換して、ページを表示させると今までの惨事がうそのように元どおりになっていました。

日本語表記ではURLエンコードが長くなる

エス技研さんのブログには、以下のようなことが書かれていました。

スラッグは投稿記事やカテゴリを表す単語を編集するものですが、好みで好きなものを編集して問題ありません。
また、投稿ページのスラッグは日本語を使っている方も少なくありませんが、個人的には英数字によるスラッグを作成する方がいいと思います。
なぜなら、日本語のスラッグは URLエンコードされるために長くなりがちで、エラーの原因になったり、リンクを貼ってもらえない原因になったりするためです。

日本語のスラッグはエンコードによる文字列への変換に伴い、時に長くなりすぎてエラーを引き起こしてしまうんですね。
確かに、私のスラッグもタイトル通り適用すると29文字なので、エンコードでは膨大な量の文字列になってしまうはずです(汗)

error-slug2
というわけで、スラッグはできるだけ英数字にかえましょう。

スポンサーリンク


server

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください

ABOUTこの記事をかいた人

新聞社の記者をしています。仲間との起業を夢見て、これまでに学んできたノウハウを記しておきます。現在、主に結婚新聞や企業・団体向けの広報紙を制作していますが「こんな紙面をつくってほしい」とのご要望にも随時お応えしています。