WordPressからGravに変更しました

公開日:2021/02/09

イルカシステム(株)のホームページはずっと WordPress を使っておりましたが、Grav というオープンソースを使ってリニューアルいたました。

Grav - A Modern Flat-File CMS | Grav CMS

WordPress のバックアップ、どうしていますか?

WordPress を使うためには、サーバーを用意して、プログラム言語 php を使えるようにして、さらに Mysql というデータベースも使えるように用意する必要があります。

記事はWordPress の管理画面から執筆することができるのですが、このとき

  • 記事(文字)は Mysql データベースに格納されます
  • 記事中の画像は、サーバーの中の WordPress がインストールされているディレクトリに保存されます

記事以外にも、たとえばデザイン(テーマ)について言えば

  • どのデザイン(テーマ)を採用しているかは、Mysql データベースに格納されます
  • WordPress のデザイン(テーマ)は php で記述され、WordPress がインストールされているディレクトリに保存されます

つまり、記事をひとたび書けば、あるいは設定をひとたび変更すれば、WordPressのインストールディレクトリと Mysql データベース両方をバックアップする必要があります。

Mysql データベースだけをバックアップしておいたとすると、記事の文章情報は復旧できるかもしれませんが、画像は復旧できないし、テーマも失われてしまう、ということになります。

仮に、WordPress のインストールディレクトリにあるファイルをすべて保存し、Mysql データベースもバックアップしておいたとしても
バックアップのタイミングがほとんど同時くらいでないと復旧時に不整合を起こしてしまう可能性もあります。

データベースを使わないCMS、という考え方

便利な WordPress ですが、上記の理由から、障害が発生したときの復旧について考えると少し面倒だなぁ...とずっと感じていました。
そして、そう考えるのは一人だけではないようで、「データベースを使わない」というコンセプトのオープンソースCMS(※CMS=コンテンツマネージメントシステム。WordPress や Grav のように記事(コンテンツ)を管理するシステム全般を指します)があることをしりました。

Grav もその中のひとつです。

データベースを使わず、すべての設定、すべての記事、すべての画像がファイルとして保存されていれば、その保存ディレクトリさえバックアップしておけば不整合も気にせず復旧することができるでしょう。

Grav で特に気に入っているのが、記事と、記事が使っている画像の関係がとてもわかりやすいことです。
以下は Grav で記事のファイルと画像ファイルがどのように管理されているかのイメージです。

    some-blog-title-etc/
        blog.md
        thumbnail.jpg
        section1.jpg

"some-blog-title-etc" というディレクトリの下にある blog.md、これが記事のファイル(Markdownファイル)で、このケースですと、http://some-domain.co.jp/some-blog-title-etc にアクセスすることで記事にアクセスすることが可能です。

そしてこの blog.md で使う画像が thumbnail.jpgとsection1.jpg です。つまり、記事とその画像がすべて同じディレクトリにあってわかりやすいのです。

CMS をまるごとソース管理する

弊社では、Grav を使うことで、記事や設定、テーマをすべてプログラムソースとして Git でソース管理することにしました。

これにより、記事の更新やテーマの更新、設定の変更など、ホームページに対するすべての更新は以下の手順で行えるようになりました。

  1. 自分のパソコンで Git から最新のファイルを取得します
  2. 自分のパソコンで記事の追加、修正、画像の追加、設定の変更、テーマの修正を行います。
  3. 修正を自分のパソコンで確認した上で Git に commit, push します。
  4. 本番環境で Git から Pull します。(これで本番環境に修正が反映されます)

以下のようなメリットを感じています。

  • すべての修正を自分のパソコンで行うことができます。
  • 自分のパソコンで修正内容の動作確認を行った上で、本番環境に反映することができます
  • 動作確認を行ったファイルのみが Git に管理されています
  • 修正履歴は Git で確認することができ、任意の時点に戻すことも可能です
  • Git の機能を使って、上述の手順3.を行えば自動的に 4.がなされるようにすることもできます(つまり本番環境に最新ファイルを"ファイル転送する"とか"リモートアクセスする"といった作業が不要、ということです)

デメリットとしては、WordPress に比べると、圧倒的に日本語の参考記事が少なく、不明点を Google で検索してもみつからないことが多いです。

Grav を使おうと考えている方で、本ホームページをご覧になって「この部分はどうやって作ったのか」と知りたい方がもしおられましたら、お問合せよりご連絡くださればと思います。

このページの著者

イルカシステム(株)は、以下のような業務用ウェブシステムのご提案、受託開発、運用を行っております。

  1. 中小企業さま向けの社内向け営業支援、顧客管理、経営数値管理システム

    経営数値をリアルタイムで見える化し、目標達成度を常に把握することができ、顧客へのフォローもスムースになります

  2. 中小企業さま向けの受発注管理、請求入金管理、在庫管理

    御社特有の受発注業務、出荷処理をシステム化することで業容拡大への大きなお手伝いとなります

  3. 医療業界向けの業務改善システム

    ※医療業界向けに、臨床研究の無作為割付自動化のための自社サービス「 ムジンワリ 」をご提供しております。

  4. IoTシステムの開発

詳しくは ご提供サービス を参照してください。

お読みいただきありがとうございました

社外から社内LANにアクセスできる環境を無料で構築する

こちらもおすすめ

システム化の相談はしてみたけれど...

中小企業のシステム導入に心強い補助金

お客様とのつながりを点数化し分析する

お客様との接点を記録することのメリット

顧客管理システムの目的は名簿作成ではない

顧客との接点を増やし売上をあげるシステム

お客様とのやりとりの記録のススメ

遠くのシステム会社が安い金額の提案をしてきたら?

システム会社に社内システムの保守を依頼するには

社内システムはできたあと、利用期間のほうが長い