WordPressはブログや情報サイトには最適なツールです。便利なテーマやプラグインもたくさんあり、簡単にいろんな事ができるので人気の高いCMSです。ただ、WordPressのテンプレートやプラグインにない機能を追加したり、カスタマイズしようとすると、WordPress自体の複雑さにぶち当たり、困惑してしまうことが多いのではないでしょうか?一部のサイトではWordPressが有用ですが、もっと汎用性の高くて、 シンプルで手軽に使えるCMS がないかと長年探していたところ、GravというフラットファイルのCMS にたどり着きました。

Grav

Gravは、WordPressと全く異なるCMSで、様々な点において WordPress のデメリットが解消されていて、「簡単」、「速い」、「シンプル」をコンセプトとして作成された次世代型のCMSです。サイトの構築はもちろんですが、サイトの効率的な運営が可能です。

Gravは日本ではあまり有名ではありませんが、CMS Criticが主催する『Best Open Source CMS』(2016年)、『Best Flat File CMS』(2017年)に選出されています。また2019年も『Best Flat File CMS』に再度選出されているので、CMSの中では評価の高いCMSと言えます。また、GitHubで人気の高いCMSランキング (2019年10月)でも、wordpressの次に人気があるので、エンジニアにも支持されているCMSです。日本では、はてなブックマークのエントリー数が増えて徐々に増えて49になっているので、関心のある方が結構増えてきているのではないでしょうか。では実際にGravがどのようなCMSであるのか、Gravの特徴や機能について紹介していきます。

index


Gravの7つの特徴

Gravの特徴は数多くありますが、主な7つの特徴について紹介します。

1.フラットファイルCMS

Gravはデータベースを利用しないフラットファイルのCMSです。
サイトのコンテンツは全てファイルで管理するので構造がとてもシンプルです。 データベースを使うと、データがどこにあるか分からないので、いざと言う時に困ったりしますが、Gravは静的ファイルと同じです。どこに何があるのか分かりやすいのとても安心です。

サイトの更新はブラウザから行うこともできますが、ローカルでファイルを作成し、サーバーにアップロードすることでページの更新ができます。WEB制作に携わる人なら、この方法の方がやりやすいかもしれません。

実際Gravで利用するuser以下のファイルを見てみると、下記のようになっています。
ページ、プラグイン、テーマ、アカウント、設定などに分かれていて、この中だけでサイトの制御が完結します。

フラットファイルCMS

またレンタルサーバーを利用する際、データベースの上限があるものが多く、CMSを複数利用する場合に困ることがあります。 フラットファイルのCMSならこのような心配はありません。

2.markdown入力

markdownって何?なんだか難しそうと思う方もいるかもしれませんが、記事を作成するにはmarkdownがとても便利です。markdownの使い方さえ覚えれば、入力が楽になり、記述がシンプルになって、後での変更もやりやすいです。もちろんhtmlでの入力も可能ですが、なるべくmarkdownでの入力をおすすめします。

また、GravにはGrav特有のMarkdown記法があり、それを覚えるとより表現の幅が広がり使い勝手も向上します。

3.高速

GravはベースにSymfonyなどモダンな技術を使っているので、表示は高速です。しかもキャッシュや複数のCSS、JSを1つにまとめて圧縮したりできるので、特別な設定やプラグインは必要ありません。

4.柔軟な構造

Gravのページは、通常ページ、カテゴリーページ、投稿ページなどがありますが、簡単にページの種類を変えることができます。 またカスタムフィールドも自由に使えたり、特定のデータからページを生成できたりと様々な使い方があります。

Gravは柔軟な構造なので、サイトを作ってからの仕様変更にも強いのも大きな特徴です。
たとえば最近の事例で、WordPressで構築したサイトのコンテンツの一部分を会員だけに見られるようにし、その中の何ページかは定形のフォーマットで投稿したいという要望がありました。この変更をWordPressで変更しようとすると、れほど簡単ではありません。私も実際にいろいろ試行錯誤して結構手間がかかりました。

Gravならこのような変更も可能で、標準機能で簡単に出来てしまいます。

5.インストール、バックアップが簡単

データベースがないので、インストールとバックアップがとても簡単です。インストールは、ZIPファイルを解凍しアップロードするだけなので、3分ぐらいで設定が完了します。バックアップはサーバー上のデータをダウンロードするだけで、一括ダウンロード機能もあります。 データの移行、サーバーの移動も簡単で、バックアップしたデータをサーバーへアップロードするだけで移行が完了します。

6.マニュアルが親切

マニュアルがとても親切で、具体的なサンプルも充実していて、エンジニア以外の人にもわかりやすくなっています。どうやら専門のライターさんがいるみたいです。マニュアルは英語のページだけですが、google翻訳を使えば十分理解できる内容です。

Grav Documentation

7.学習コストが低い

WordPressはカスタマイズしようとすると急に難しくなるので、インターネットで検索し、その情報を元にコードをコピペしてるのが現状ではないでしょうか。これではwordpressの理解が進みません。

Gravは基本的な構造がシンプルなので、マニュアル読んで、基本的なことを理解するだけで、幅広く活用できます。

参考にするのはマニュアルだけで充分で、困った時はGrav Community Forumで質問してみるか、Grav Community Forumのアーカイブを調べることで解決できることが多いです。

Gravの主な機能

GravはシンプルなCMSですが、CMSとして必要な機能をひととおり備えています。
また便利なプラグインもたくさんあるので、ある程度のことは簡単に実装できてしまいます。

  • 日時指定投稿
  • 記事の並べかえ
  • サイト内検索
  • ブログ機能
  • 問い合わせフォーム
  • 新着情報の表示
  • カスタムフィールド

Gravについてよくある質問

Gravについてよく聞かれる質問をまとめてみました。

Q. Gravはどんなサイトに向いてますか?
A. 小規模な企業サイト、趣味のサイト、店舗のサイト、ブログなどに最適です。
1000ページ以上の大規模サイトや複雑なデータベース構造、高度な検索機能を必要とするサイトには向いていません。

Q. サーバーにGravをインストールするにはどのような要件が必要ですか?
A. PHP 7.1.3以上です。ほとんどのレンタルサーバーで動作するでしょう。

Q. メンバーページは作成出来ますか?
A. もちろん出来ます。サイト全体、もしくは特定のディレクトリをメンバーページにすることが出来ます。

Q.公開前の確認は出来ますか?
A.管理画面のプレビュー機能を使えば可能です。

Q.メールフォームは使えますか?
A.もちろん使えます。高度なカスタマイズは難しそうですが、標準的なメールフォームなら問題ないでしょう。 今のところ確認画面はありません。

Q.カスタムフィールドは使えるの?
A.少し設定が必要ですが、標準機能で使えます。カスタムフィールドのデータは、同一ファイルの上部に生成されます。

Q.多言語対応はできるの?
A.もちろん対応しています。定形のメッセージなども簡単に多言語対応できます。

Q.マークダウン以外に入力方法は無いの?
A.プラグインを利用すれば、WYSIWYGのTinyMCEが使えます。

Q.wordpressみたいに高機能なテンプレートはありますか?
A.あります。Gravの開発元のRocketThemeがGravのテンプレートを販売しています。

Q.セキュリティは大丈夫ですか?
A.Gravはデータベースがないので、ハッキングされるデータがありません。また堅牢なSymfonyをベース部分に使っているので、セキュリティ面での不安は少ないです。

Gravに関する情報

Gravに関する主な情報は、Gravの公式サイトが充実しています。日本語のサイトは少なく、Gravについて言及している個人サイトがいくつかあります。

最後に

このようにGravには、WordPressにないメリットが数多くあります。最初にマニュアルを読むなどして基本的なことが理解できるようにならなければなりませんが、WordPressほど複雑ではないのでご安心ください。ただ、日本語でGravに関するサイトが少なく、導入部分でつまずくかもしれないので、次回から何回かに分けてGravの使い方について紹介していきたいと思います 。

前の記事