WordPressより爆速、軽量のCMS、Grav!インストールから初期設定の手順まで!

Web運用(サイト構築)

Gravのインストールと使用開始手順

Gravのダウンロード

  1. 公式サイトにアクセス:https://getgrav.org/downloads
  2. パッケージをダウンロード(管理画面付き「Grav Core + Admin」)(管理画面なし「Grav Core」)
  3. ダウンロードしたZIPファイルを適当なフォルダに解凍

ローカル環境でのテスト(Windows)

GravはPHPのみで動作するため、ローカルで確認できます。

必要な環境を準備

  1. PHPのインストール
    • 公式サイト:https://windows.php.net/download/ から PHP 8.x をダウンロード
    • PHPがインストール済みで使用できる環境であれば問題ないです。
    • ZIPを解凍し、ローカルサーバーを起動する
  2. PHP モジュール
    • PHP GD (画像操作ライブラリ) を有効にする。
    • PHP Zip拡張機能を有効にする。

PHP GD (画像操作ライブラリ) を有効にする。
php.iniファイルの931行くらいにあります。

extension=gd
Bash

PHP Zip拡張機能を有効にする。
php.iniファイルの664行くらいにあります。

extension=zip
Bash

Gravの管理者アカウント設定

  1. 初回アクセス時に管理者アカウントの作成画面が表示される
  2. ユーザー名、パスワード、メールアドレス を設定
  3. 必要なプラグインやテーマを管理画面からインストール

レンタルサーバーの場合

Gravをレンタルサーバーで動作させるには、サーバーにアップロードする必要があります。

サーバーの設定

  1. PHPのバージョンを確認
    • レンタルサーバーの管理画面にログイン
    • 「サーバーの管理・設定」→「PHP設定」で PHP 8.0 以上 に設定する
  2. FTPクライアントの準備
    • 「FileZilla」などのFTPクライアントを使用
    • レンタルサーバーの「FTP情報」を使って接続

Gravのアップロード

  1. 解凍したGravのフォルダ内のファイルを 公開アップロードフォルダ にアップロード
  2. 公開アップロードフォルダ の直下に index.php や user/ などがあることを確認
  3. アップロード完了後、ブラウザで「https://ドメイン名/」にアクセスGravの管理者アカウント設定をします。

Gravの初回設定、確認

日本語化

  • 「Configuration(設定)」をクリック
  • 「Languages」→「Supported」の項目に ja を入力
    • e.g. en, fr と書かれている入力欄に ja を追加
    • 例:en, fr, ja(もし英語やフランス語も使いたいならそのまま追加)
  • 「Override Default Language(デフォルト言語を上書き)」の項目に ja を入力
    • これを有効にすると、サイトのデフォルト言語が ja になります。
  • 「Override Locale(ロケールを上書き)」を Yes にする
    • これでロケールも ja_JP.UTF-8 などに変更されます。
  • 「Save(保存)」をクリック
    • 画面右上のボタンを押す
  • 管理画面をリロード(Ctrl + F5)
    • すると、日本語の設定が反映されます。

キャッシュ

Grav は軽量で高速なフラットファイル CMS ですが、パフォーマンス向上のためにキャッシュを積極的に使用します。しかし、設定変更やページ編集後に変更が反映されない場合、キャッシュをクリアする必要があります。

管理画面からキャッシュをクリアする

使うべき状況
  • 記事を更新したのに反映されない
  • テーマやプラグインを変更したが、見た目が変わらない
  • フロントエンドの動作が不安定な場合
手順
  1. Grav 管理画面にログイン
  2. 右上の「キャッシュをクリア」ボタンをクリック
  3. キャッシュがクリアされ、最新の状態が反映される

ターミナル(CLI)でキャッシュをクリア

使うべき状況
  • テーマやプラグインを手動で編集したとき
  • キャッシュ全体を強制的に削除したいとき
  • 管理画面が動かなくなったとき

Grav のインストールフォルダに移動

cd /path/to/grav
Bash

以下のコマンドを実行

bin/grav clear-cache
Bash
  1. 「Cleared cache」 と表示されたら完了

📌 メリット: 確実にキャッシュを削除できる
📌 デメリット: コマンド操作が必要(初心者には少し難しい)

ファイルを手動で削除(最終手段)

使うべき状況
  • Grav のキャッシュが破損していて、クリアコマンドが動かないとき
  • 管理画面も CLI も使えないとき
手順

Grav のキャッシュフォルダに移動

cd /path/to/grav/cache
Bash

中のファイルをすべて削除

rm -rf *
Bash
  • Grav を再読み込み

📌 メリット: どんなトラブルでも確実にキャッシュを削除できる
📌 デメリット: 誤って他のフォルダを削除しないよう注意が必要

Grav のページ表示の仕組み

Grav は user/pages/ フォルダの構成に基づいてページを生成します。各フォルダは URL のパスに対応し、フォルダ内の .md ファイルがページのコンテンツを定義します。

🔹 管理画面(Admin Plugin) の「Pages」セクションでは、このフォルダ構造が視覚的に表示され、ページの編集や追加が可能です。

📌 対応関係

  • Root (<root>) → user/pages/(全ページの親フォルダ)
  • Home (/) → user/pages/01.home/(トップページ)
  • Typography (/typography) → user/pages/02.typography/(固定ページ)

管理画面で 「+ADD」ボタン を押すと、新しいフォルダ(ページ)を作成できます。

ページの構成と表示順

初期、user/pages/ 内には 01.home/(ホーム)02.typography/(別ページ) の2つのフォルダがあります。
フォルダ名の先頭に 番号(01, 02など)を付けることで、ページの順番を指定 できます。例えば:

  • 01. → 02. よりも前に表示
  • 00. → すべてのページより前に表示

また、番号付きフォルダは、URLには影響しません。(01.home//home

下記はuser/pages/ 内に、03.aboutを追加致しました。

ホームページの設定

Gravでは、トップページ(ルート /)を設定できます。この設定は、次のファイルで管理されます。

user/config/system.yaml
Bash

デフォルトでは /home に設定されていますが、変更可能です。

✍️ ページの編集方法

Gravのページは Markdown形式(.md) で記述されます。Markdownはシンプルな記法でHTMLに変換できるため、HTMLを知らなくても簡単にページを作成できます。

📂 ホームページを編集する

  1. ファイルの場所 user/pages/01.home/default.md
  2. Markdownを編集
    • 見出し: # タイトル
    • 太字: **太字**
    • リスト: - 箇条書き

Gravで扱う、マークダウン記法、YAMLについて。違いや役割

すべてのコンテンツは user/pages/ 内の .md ファイル に保存されます。

blogページ

Grav では、ブログ記事は blog ページの子ページとして作成されます。
ただし、blog.md に適切な設定をしないと、記事の一覧は自動で表示されません。
そして、記事一覧を表示するには、blog.md に content.items: ‘@self.children’ の設定が必要 です。

また、ブログ記事ごとに、親ページの設定をしないといけないので2点設定をします。

(親)blogページ作成

  • Grav の管理画面にログインし、左メニューの「ページ」をクリック。
  • 既存のページ一覧が表示される。
  • 「+追加」ボタンをクリックし、新しいページ作成画面を開く。

ページの基本情報を入力

  • ページタイトル:記事のタイトル(例:「blog」)。
  • フォルダー名:デフォルトでは手動で入力(例:「blog」)。
  • 親ページroot を選択(ルート直下に配置)。
  • ページテンプレート:「Blog」を選択(Blogページのテンプレート)。

管理画面で「ページ」を開く

  • Grav の管理画面にログインし、左メニューの「ページ」をクリック。
  • 既存のページ一覧が表示される。
  • ブログの親ページ(Blog)があることを確認

ページの基本情報を入力

  • ページタイトル:記事のタイトル(例:「あたらしい記事」)。
  • フォルダー名:デフォルトでは手動で入力(例:「new-post」)。
  • 親ページBlog を選択(ブログの記事として表示させるため)。
  • ページテンプレート:「Item」を選択(記事ページのテンプレート)。
  • 「続ける」をクリックし、記事の内容を編集。
  • 記事本文を Markdown で入力し、保存。

記事一覧を表示させる

  • 管理画面で「ページ」を開く
  • Grav の管理画面にログインし、左メニューの「ページ」をクリック。
  • ブログの親ページ(Blog)をクリック
title: "ブログ"
content: #このページのコンテンツ設定を定義する。
  items: #どのコンテンツ(記事)を取得するか指定する。
    - '@self.children'  # 自身の子ページ(記事)を取得
YAML

上記を記載するだけで記事一覧が表示されます。

@self.childrenの詳細については公式ページにも記載しております。

title: "ブログ"
content: #このページのコンテンツ設定を定義する。
  items: #どのコンテンツ(記事)を取得するか指定する。
    - '@self.children'  # 自身の子ページ(記事)を取得
  order: #
  by: date #記事を投稿日時順で並べる
  dir: desc #新しい記事を上に表示
  pagination: true #ページネーションを有効化
  limit: 10 #1ページに表示する記事数(10件)
YAML

条件を追加する事も出来ます。

コメント

タイトルとURLをコピーしました