ディレクトリマップの作り方【webサイト設計】【ルールを決める】
たぐ(https://twitter.com/tagtaz74)と申します。東京のWeb制作会社でプロデューサーをしています。
ディレクトリマップはルールを決めて機械的に作るべき。
今回の結論ですが、ディレクトリマップはルールを決めて機械的に作るべき。というお話です。
ルールを決めておけば、保守性、更新性が上がる。
ルールを作っておくことで、webサイトごとでサイト構造がバラバラになりません。 また、運用・更新時に齟齬が生まれづらく、スピードが上がります。 webサイト制作会社など、複数のサイトに関わる場合、サイトごとでディレクトリの構造が違うのは面倒以外の何物でもありません。
よくあるコーポレートサイトなどは、フォルダ名なども含め標準化しておくことをお勧めします。
ディレクトリマップ定義時のポイント
URLはディレクターが決める。
最初に、ディレクトリマップは誰が作るべきか?という話からします。 これは、ルールを守れるならディレクターがやってもエンジニアがやっても良いと思います。 ただ、そのルールのメンテナンス等もあるかもしれないですし、サイト構造全体の設計をしているのがディレクターなのであれば、個人的にはディレクターがやったほうが早そうと思います。
サイトマップを作る。ツリー状にするのが最初。
ディレクトリマップを作るにあたっては、まずサイトマップが必要です。 サイトを構成するページ一覧がないと話になりません。まずはサイトマップを準備しましょう。 サイトマップの作り方、定義するものは以前記事にしていますのでこちらも参考ください。
分岐するポイントが目次ページ。つまりindex.html
その分岐に当たる部分ディレクトリの階層が1段階深くなります。 その中にindex.htmlは、その階層のトップページになります。
カテゴリトップは階層を掘ってindex.htmlにする。
カテゴリトップに当たるページでまれに、1ページだけで成り立つページもあります。 例えば、強み、特長といったページです。 先のルールに沿うならば、トップページがindex.htmlだとすると、その特長ページはfeature.htmlといったファイル名で、トップページのindex.htmlと並列に並ぶはずですが、カテゴリトップに当たるコンテンツについては、階層を掘ってindex.htmlとしてあげたほうが分かりやすいです。
サイトマップページや免責事項や個人情報の取り扱いは汎用的階層を作ってそこにまとめておく。
サイトを構成するページの中には、トップページ配下にぶら下がっていながら1ページだけで構成されるページが他にもあります。
- このサイトについて
- 免責事項
- 個人情報保護方針
といったページです。 これらは、ルート直下のディレクトリに散在しているとごちゃごちゃして見えるので、1つのディレクトリにまとめてしまって良いと思います。例えばpolicyとか。
/policy/about-this-site.html
/policy/disclaimer.html
/policy/privacy.html
このpolicyの階層にはトップページにあたるindex.htmlは存在しませんが、そのようなケースもあるということです。
多言語サイトの場合は、言語単位の階層を作る?
多言語サイトの場合は、大きく2つのケースがあると思います。
- 英語サイトを/enディレクトリ配下でまとめる方法
- 日本語サイトと英語サイトを/jp、/enのように言語別のディレクトリで分ける方法
以上2つです。 一般的なのは1.の方でしょうね。 ただ、個人的にはjpとかenとか言語別フォルダに格納する方が美しいとは思います。 その場合、総合トップは主言語にあたるページにリダイレクトさせる感じです。
全ページindex.htmlにするという考えもあるが・・・
全ページindex.htmlにするという考えもあります。 そうすることで、サイトの階層とディレクトリの階層がマッチするのですがあまりメリットがありません。
全ページindex.htmlにするのは、多分SEO的には良くないと思います。indexはそもそも目次という意味で、googleもそれを目次ページとみなす可能性が高いからです。
その配下にコンテンツが無いことをマイナスに取る可能性もあるのではと思うのですよね。エビデンスはないけど・・・こちらについては以前別の記事で紹介しているのでご参考ください。
ディレクトリマップはルールを決めて機械的に作るべきです。
今回は、ディレクトリマップはルールを決めて機械的に作るべき、というお話でした。
そうすることで、webサイトごとでサイト構造がバラバラになりません。 ルールが統一されるので、運用・更新時に齟齬が生まれづらく、作業スピードがあがります。 SEO的な評価も上がる可能性があります。