Grav はPHP製のCMSです。Gravを使用したサイト構築に関する情報を掲載しています。

Grav について

July 6, 2022, 7:42 am grav programming

Grav はPHP製のCMSです。

  • 特徴としては
  • フラットファイル方式(ファイルベース、RDBMSを使わない)
  • コンテンツの記述がmarkdown形式
  • テンプレートはtwig

といったところです。
さらに詳しい情報は本家サイト

https://getgrav.org/
を覗いてみてください。

Continue Reading...

アーカイブプラグイン

July 6, 2022, 6:27 am diary grav

サイトにアーカイブプラグインを追加しました。 アーカイブプラグインは過去記事を日付グループでまとめてリンクを自動生成してくれるプラグインです。

https://github.com/getgrav/grav-plugin-archives

Grav にはもともとアーカイブプラグインが含まれていますが、年月での単純なリストが生成されるものとなっています。 もうすこし細かく設定できる Archives plus というプラグインが公開されているのでそちらを利用します。

https://github.com/sommerregen/grav-plugin-archive-plus

年...

Continue Reading...

Grav ページの表示順

November 22, 2018, 5:01 am grav

久々にサイトを確認していたら、なんとなく違和感があったので

なんだろなーと考えたところ、コンテンツ(ページ)の表示順序が古い順(つまり日付の古いほうが上に来る)になっていた。

マニュアルページやカテゴリー項目のインデックスと考えれば、それもいいのかなと思ったけれど

ブログなんかだと微妙なんじゃなかろうか。やっぱ最新の記事を最初に読みたいよね。

ということで表示順の設定を変更してみることに。

Continue Reading...

Grav バックアップのススメ

September 15, 2017, 9:07 am grav

前回紹介した、自作のプラグインをサーバー上でテスト中にいくつかのサイトで管理画面にアクセスできなくなる状況が発生しました。

自作プラグインが悪さをしているのか、マルチサイト構成に問題があるのか、現状、原因が特定できていないので対処療法としてバックアップから復元することで事なきを得ました。

Gravでのバックアップはとても簡単で管理画面のダッシュボードからバックアップボタンをぽちっとするだけです。

Continue Reading...

Gravではマルチサイト構成が可能です。

必要なファイル(setup.php)の設置と、ディレクトリの設定をおこなってしまえば後は単純なコピー作業でサイトを追加できます。

毎回コマンドラインから作業してもいいのですが、管理画面から追加、削除などできれば楽でいいですね( ゚∀゚)

ということで個人的に楽をするためにそれっぽいプラグインを作成してみます。

まずはプラグイン作成の下準備としてDevToolsプラグインをGravにインストールします。

DevToolsはコマンドラインからプラグインやテーマのひな型が作成できます。


サーバー上でgravのインストールディレクトリ...

Continue Reading...

Gravにはdefaultでシンプルかつ必要十分な管理画面(adminプラグイン)が用意されています。

そして管理画面のダッシュボードには統計(log)情報が用意されています。

機能としては単純にPVを日、週、月別にロギングしてくれるようです。

ただ、この機能はマルチサイトに対応していません。マルチサイト構成にしてもすべてのサイトのアクセスが記録されてしまい、どのサイトで確認しても同じ数値が表示されてしまいます。

このままではちょっと使えないので、サイト毎(ドメイン毎)に記録されるようにカスタマイズします。

アクセスログは [grav_root]\user\plugins\...

Continue Reading...

前回に続いてLearn2テンプレートのカスタマイズです。

今回はメニュー回り。

ページタイプとしてchapter、blogの二つがありどちらもナビゲーションメニューに表示させてるのですが、理想としては、chapterの場合は配下のdocsページが階層表示され、blogの場合は配下を表示させないという風にしたいわけです。

blogの場合はメニューで選択すると日付順に概要表示でitemが並ぶのでメニューに階層表示は必要ないという判断です。

ということで、sidebar.html.twigを修正していきます。

File:sidebar.html.twig
~~~...

Continue Reading...

当サイトでは”TwentyFifteen”というテーマを利用させてもらってますが、ほしい機能などを考えて”Learn2”というテーマに変更しました。

”Learn2”はdocumentを章ごとに分類してメニューに階層表示できるところが当サイト的にHitなので選択しました。

”Learn2”は公式サイトのdocumentページで利用されているテーマです。

ただ、”Learn2”はdocumentの分類に特化した感じなので”TwentyFifteen”などに含まれているblogなどのページタイプがありません。

そのあたりはカスタマイズで対応していきます。

カスタマイズといっても...

Continue Reading...

前回に続いてテーマのカスタマイズです。

default状態ではナビゲーションのメニュー表示がフラットの状態です。

私としては配下にコンテンツを持っている場合はメニューに階層表示されてほしいのでそのあたりを追加してみます。

Continue Reading...

Grav テーマのカスタマイズ

August 24, 2017, 6:03 am grav

当サイトではGravのテーマ(テンプレート)として” TwentyFifteen ”というテーマを利用させてもらってるのですが、如何せん、どのテーマももともと英語圏向けのデザインとなっているので日本語のサイトには今一つなじみません(。・ω・)

使用上致命的な問題はないのですが、かゆいところに手が届かないというか、なんとも言えない不満感が湧いてきてしまいます。

Continue Reading...

Grav にはいろいろなプラグインが用意されています。

テーマインストールの記事でも触れましたが、プラグインによるパーツの生成がないとコンテンツがスカスカになるので必要なプラグインはどんどん入れてしまいましょう。

「プラグイン」メニューを選択すればインストール済みのプラグイン一覧が表示されます。テーマの時と同じで右上の追加ボタンを押せば利用可能なプラグイン一覧が表示されるので、そこからインストールがおこなえます。

permission関連のエラーでインストールに失敗する場合は、プラグイン詳細のホームページ(たぶんgithub)からzipファイルを落として、「Tools」メニューから...

Continue Reading...

Grav テーマのインストール

August 22, 2017, 6:49 am grav

無事インストールが完了しサイトが閲覧できたら、次は見た目を変更したいですよね。

defaultでは「 Antimatter 」(アンチマター)というテーマがインストールされています。

Gravにはテーマ機能がありますので、自分好みのテーマ(テンプレート)に変更してみましょう。

Continue Reading...

Grav インストール後の設定

August 21, 2017, 9:06 am grav

インストール直後は言語がdefault(英語)状態です。

インストール直後の管理画面

完全な日本語化は難しいですが、システム周りだけでも日本語になっているとなんとなくですが安心感がありますよね。

ということで日本語にしましょう。

Continue Reading...

要件としてPHPのversion 5.5.9以降が必要です。

最近のレンタルサーバーであればまあ大丈夫でしょう。

ローカルサーバーやVPSの場合は適宜対応させてください。

githubからインストールする方法もありますが、マルチサイト構成にしたいのでダウンロードページからzipファイルを落としてきます。

Continue Reading...