wordpressで静的ページを作成および設置してみる方法

wordpressは基本的に動的にページを生成しています。そのため、wordpressの管理画面内から静的ページを作ったり設置したりすることは出来ません。しかしながら自分でhtmlファイルを作ってサーバへアップロードすれば、例えwordpressがインストールされているディレクトリ内でも普通に静的ページを表示させたりすることが出来たりします。

静的ページとは?

静的ページとは昔ながらの手作業で作成するhtmlファイルのことです。一般に、拡張子はhtmlやhtmが使われますが、phpでも実在するファイルであれば静的となります。作成するにはファイル内へ直接htmlタグを記述しなければなりません。ホームページビルダーなどのソフトを利用すればhtmlの知識が無くても作ることはできるのですが、基本的にある程度の知識は求められます。静的ページはディレクトリ構造も実在するためです。wordpressの場合はほとんどシステム化或いは自動化されていますので、こういった煩わしい作業は減ります。

また、ソフトなどを利用せずに自分で直接作成する場合は、タグの意味はもちろん、相対パスや絶対パスなどの知識も必要です。wordpressのようにシステム化されていないため、urlやディレクトリ構造の変更に伴ってhtmlだけでなく、css、ケースによってはjavascriptのファイルも変更しなければならないこともあります。

動的ページとは?

動的ページとはアクセスが発生するたびにプログラムによって自動的に作られるページのことを意味します。wordpressの場合、アクセスのたびにphpプログラムがテーマ内のパーツ(テンプレート)を組み立ててページを作り、その結果を表示しています。また、wordpressのプラグインが有効化されていれば、そのプラグイン所定の変更が加えられます。そのため、静的ページのようにファイルは存在していません。

出力の流れ

どういった手順で表示しているのかと言えば、まずウェブサーバ上にあるwordpressがデータベースからコンテンツを引っ張り出してきます。そしてそれをwordpressのテーマ内のパーツを使って組み合わせ、まるで実在するかのようにその結果を出力する、という流れでしょうか。

処理のスピードが遅くなる

ただ、動的である分、サーバに余計な負荷がかかりますので静的な記事よりブラウザでの読み込みが遅くなるのが欠点です。wordpressだとどうしても静的な記事を読込むよりモッサリ感があります。php7からは若干体感的に速くなりましたが、それでも静的な記事よりモッサリです。そのため、ユーザに特に注目してもらいたい記事の場合は、静的な記事にしたほうがかえって良いケースもあるかも知れません。

wordpressの中に静的ページを設置

ネット上の情報を見ていると、wordpressのディレクトリの中にそのまま静的ページを設置すると404エラーが表示されるというものをよく見かけます。しかし筆者の環境では、wordpressのディレクトリ内で404エラーなどが表示されたことはありません。

しかも昔からお問い合わせフォームやプライバシーポリシーなどは、ワードプレス内に別のディレクトリを作ってその中にそのままhtmlとperlを使って出力させています。更に本当にindex.phpなどを使わなければ表示できないのか、いくつかのディレクトリでも試してみました。結果は特に問題がないようで、普通にhtmlファイルのコンテンツは表示されます。

という訳でワードプレスで静的な記事を作ろうと思えばcmsでないサイトと同様に、普通にファイルをftpなどでアップロードすれば簡単にできます。

よくよく考えると筆者は別ドメインのワープレでもテーマ内で独自のファイルを使いまくっています。phpのfile_get_contents関数を用いて内容を自動で定期的に書き換えているものもあります。ajaxも動かしてます。でも404エラーに出くわしたことは一度もないですかね。ひょっとしたら何か環境が異なるのかも知れません。

ただ、テンプレートの編集最中に403エラーと出くわしたことはあります。こちらはサーバ管理会社が提供するセキュリティのアプリケーションであるWAFが原因でした。この機能をレンタルサーバの管理パネルから停止させたらそれ以降、エラーは出なくなった経緯があります。

まとめ

いかがでしたでしょうか、静的ページの作成。昔ながらの方法で記事を大量に管理するのはかなり面倒な話ですが、表示速度が速いという点ではまだまだ捨てたもんじゃありません。cmsの普及でこれを利用しているサイトも減りましたが、売り上げアップに結び付くランディングページなどでは役立つかも知れませんね。

とはいってもやはり実在するファイルで記事を管理するのはそれはそれで面倒なのは事実です。一人ならまだしも、複数人で管理するサイトでは逆に足かせとなってしまうかも。今後もcmsは普及すると考えらますが、どちらを選ぶかは自分次第です。