WPプラグイン「.html on PAGES」は全ての固定ページに拡張子(.html)を付けてくれます。しかし、ブログのトップが /blog.html/ になってしまうのはカッコワルイので対策しました。結論として「.html on PAGES」は使用を止めて「Custom Permalinks」を使いました。
HTMLで書かれたクライアント様のウェブサイトの引越しをしました。
今までなかったブログを開始するためにWordpressを使いました。
もとのサイトは、HTMLサイトなのでindex.html以外のページには「hogehogehoge.html」といった様に拡張子が付いてます。
諸々の都合により、既に長いこと運営しているサイトのURLを変更したくなかったので、URLに「.html」を付ける必要がありましたので、Wordpressプラグイン「.html on PAGES」を使いました。
このプラグインは、固定ページに「.html」の拡張子を付けてくれるものです。既存のサイトを移設するには100%期待に応えてくれて、無事サイトの移設は完了しました。
プラグイン「.html on PAGES」の注意点
WordPressの表示設定は下記のようにしています。
とりあえず、既存のページをWordpressに全部移して公開。
ブログ部分については、後日制作するということにしていました。
で、公開後ブログ部分の作成に取り掛かろうと /blog/ にアクセスしたら404エラーになりました。
もしやと思い /blog.html/でアクセスしたら、ブログのトップページが表示された。
つまり、ブログのトップが/blog.html/というディレクトリになってしまいました。
それもそのはず、このプラグインはすべての固定ページのURLに.htmlを付けてしまいます。前述のとおり既存のサイトを移設するだけなら目的を100%達成できるものでしたが、新たに設置するブログのトップがこれでは、カッコワルイです。
なんとかしなくては。
・特定スラッグのみプラグインを無効にする方法を検索。
Googleで「.html on PAGES 特定ページ 無効」で検索しても解決策が見つからなかったが、海外サイトにはあるかも知れないと思い、Googleで「.html on PAGES plugin disable specific page」と検索してみた。
そしたら、wordpressフォーラムに同じ問題で悩んでいる人がいました。
上記ページでも解決できないような事が書いてあったが、「Custom Permalinks」というプラグインを使う方法を教えてくれていた。
Custom Permalinks
このプラグイン、私が初めてwordpressを触った6〜7年前に使ったことがありました。当時は/%postname%/というパーマネント設定ができなかった(or 個人的にわからなかった)ので、このプラグインを使ってました。
このプラグインを使えば、デフォルトではできない「postname.html」といったURLも付けることができます。デフォだと「.(ドット)」が「-(ハイフン)」になってしまいます。
まとめ
したいこと
このようなURLになるようにしたい。
WordPressの設定
・管理画面の設定→表示設定
・パーマリンク設定
プラグイン「.html on PAGES」を使用
このようになってしまったので「.html on PAGES」を停止
プラグイン「Custom Permalinks」を使用
固定ページのパーマリンクの記入欄に「koteipage1.html」といったように.htmlも記述した。
その結果、
このようになりました。
パーマリンク設定で「/blog/%postname%/」と設定しても無視されますので、/blog/ディレクトリは自動的には付きません。なので上の図は間違ってます。個別記事のURLに/blog/を付ける場合は、記事毎に「/blog/〜〜」とパーマリンクを書いてください。個人的には/blog/は無くてもいいのではないかと思います。
全ての固定ページのファイル名を手動で修正する必要はありますが、今回の移設は数十ページだったのでこれでOKです。