フォルダ構造
Gravは、データベースを使用しない フラットファイルベースのCMS であるため、フォルダ構造はとても重要です。Gravをインストールした トップレベル のフォルダは、次のようになっています:
/assets
/backup
/bin
/cache
/images
/logs
/system
/tmp
/vendor
/user
それでは、これらのトップレベルフォルダのそれぞれについて少し深く掘り下げ、それぞれの目的を説明します:
/assets
assets
フォルダは、Grav内の新アセット管理システムによって使われ、.css
と .js
ファイルを保存します。
[!Info]
このフォルダは、ユーザーデータを保存するのに使わないでください。定期的にすべてのデータは削除されます。
/backup
backup
フォルダは、Gravのバックアップのデフォルトの保存先です。
/bin
bin
フォルダは、Grav CLI アプリケーション が入っています。コマンドラインから便利なタスクを実行するために使われます。これは、比較的高度な機能で、主に開発者向けのものであるため、この章では説明を飛ばします。
/cache
cache
フォルダは、一時的なキャッシュファイルを保存します。キャッシュとは、gravが自動的に収集し、パフォーマンスを向上させるものです。デフォルトでは、Gravは、ホスティング環境で利用できる最も良い方法を選択し、できるだけサイトが速く表示されるように、キャッシュを自動的に操作します。
もしGravが、ファイルシステム が最も良いキャッシュ方法だと判断したら、集められたキャッシュファイルは、ここに保存されます。Twigテンプレートエンジンもまた、この場所にプレ・コンパイルのテンプレートファイルを保存します。これは、Gravが最適なスピードでパフォーマンスするためのものです。
[!Info]
このフォルダは、ユーザーデータを保存するのに使わないでください。定期的にすべてのデータは削除されます。
/images
Gravには、パワフルだがとてもかんたんに使える画像操作ライブラリが内蔵されています。つまり、コンテンツやプラグインから、その場でかんたんに画像のサイズを変更できるのです。これらの画像は、images
フォルダに保存され、同じサイズの同じ画像が要求されたときに再利用することができます。
このフォルダは、画像のキャッシュのように働き、自動的にファイルを生成します。ユーザから提供されたメディアは、user/pages/
や、user/themes/
、さらにはカスタムのuser/images/
フォルダに保存されるべきです。
[!Info]
このフォルダは、ユーザーデータを保存するのに使わないでください。定期的にすべてのデータは削除されます。
/logs
Gravがエラーを感知したとき、もしくは別のログやプロファイルを有効化した場合、関係するログファイルは、このlogs
フォルダに保存されます。
/system
system
フォルダには、Gravが正常に機能するための実質的なファイルが入っています。このフォルダ内を編集すべきではありません。なぜなら、Gravが更新されたときに、その変更が上書きされてしまうからです。Gravの働き方に関して何か変更を加える必要があるときは、後ほどの章で解説するプラグインを使ってください。
/tmp
tmp
フォルダは、Gravとプラグインによって、一時ファイル保存のために使われます。
[!Info]
このフォルダは、ユーザーデータを保存するのに使わないでください。定期的にすべてのデータは削除されます。
/vendor
vendor
フォルダは、Gravが依存する重要なライブラリが入っています。このフォルダは、system
フォルダに似ており、編集によって起こることが完全に確かでない限り、その中身を編集してはいけません。
もしGravをGitHubからインストールした場合、vendor
フォルダは、同時にはインストールされません。vendorフォルダを作成し、適用するために、bin/grav install
もしくはcomposer install
コマンドをGravのルートディレクトリで実行してください。より詳しい情報は、インストールの章を参照してください。
/user
多数のGravユーザにとっては、これが最も重要なフォルダです。このフォルダは、コンテンツを作成し、プラグインを使い、テーマを編集する際に、最もよく使う場所です。このフォルダについて、もう少し詳しく見ていきましょう:
/user/accounts
/user/blueprints
/user/config
/user/data
/user/images
/user/languages
/user/pages
/user/plugins
/user/themes
/user/accounts
accounts
フォルダは、サイトの特定の部分へのアクセス制限が必要な場合に、ユーザアカウントを定義する場所です。
/user/blueprints
blueprints
フォルダは、サイトをカスタムするブループリント(設計図)が含まれます。
/user/config
configディレクトリ内のファイルは、ウェブサイトを設定することに使われます。前の章で解説したものです。
/user/data
data
フォルダは、後ほど説明するプラグインでデータを保存するときに使われます。プラグインでこのフォルダを利用する良い例として、Forms プラグインがあります。webのフォームを受け取り、送信されたデータをテキストファイルに保存できるプラグインです。他にも、ユーザがアップロードしたものや、そのほか好きなものを保存することもできます。
[!Info]
このフォルダは、デフォルトではブラウザからはアクセスできないようになっています。
/user/images
images
フォルダは、画像を保存するために使われます。image://
ストリームを使ってアクセスできます。
/user/languages
languages
フォルダは、翻訳による上書きで使われます。
/user/pages
ここが、Gravの中心部分です。pages
フォルダは、コンテンツを作ったり、編集したりする場所です。次の章で、より詳しく説明します。
/user/plugins
プラグインとは、Gravの高速なコア部分を拡張し、あなたのウェブサイトに必要な特定の機能を追加することができます。プラグインは、GetGrav.org/downloads/pluginsからダウンロードすることもできますし、ご自身で開発することもできます。
/user/themes
テーマは、コンテンツをウェブサイトに表示させるためのものです。あなたが作成したコンテンツを、HTMLに変換することで、ブラウザが理解し、あなたのサイトの視聴者に表示できます。Gravが提供するベーステーマはありますが、他のものをGetGrav.org/downloads/themesからダウンロードすることもできます。また、ご自身で作成することさえできます。テーマの章で、より詳しい説明をします。