Pico シンプルで高速なCMSのインストールと設定メモ

Linux
Linux
スポンサーリンク

Pico は、とてもシンプルで高速な CMS(コンテンツ・マネジメント・システム)です。一般的な CMS はデータベースを使いますが、Pico はデータベースを必要としないため、インストールやサーバーの移行が簡単にできるのが特徴です。また、外部からアクセスできるような管理画面が無いためセキュリティ的にも安心して使えます。そこで今回は、Pico のインストールと初期設定、テーマのカスタマイズ方法までの手順をまとめてみました。

Pico の魅力

冒頭にも書きましたが Pico はブログ記事などのコンテンツをデータベースではなく、すべて普通のファイルに保存するため、コンテンツフォルダにマークダウンと呼ばれる記法で書かれたファイルをアップロードするだけで、Webページを作成できます。

すなわち、Pico はすべて普通のファイルで構成されるため、Pico で作成された Webサイトは GitHub などの Git リポジトリで管理することができます。これは普段から Git リポジトリを使っているエンジニアの方などにとって大きな魅力ではないでしょうか。

また、Pico には外部からコンテンツの作成や編集ができるような管理画面が無いため、一般的な CMS のようなセキュリティ対策(パスワード管理、2段階認証、IPアドレス制限など)が必要ありません。(当然ですがサーバーのセキュリティ対策は必要です)

Pico の魅力はとにかくシンプルであることです。そのため、検索機能やエディタ機能なども無く、カテゴリやタグすらありません。もし、Pico では機能不足と感じたら WordPress など高機能な CMS を利用することをオススメします。

Pico は超高速

インストール直後の Pico サイト を、Webサイトのパフォーマンスを測定できる PageSpeed Insights で測定してみました。

一般的な CMS の場合、データーベースへのアクセスや JavaScript や CSS ファイルを多数読み込むため、なかなかスコア100は出ませんが、Pico はモバイルのスコアは98、パソコンは100満点が出ています。

PageSpeed Insights モバイルの測定結果

PageSpeed Insights パソコンの測定結果

Pico のインストール

Pico のインストール要件

Pico は、PHP バージョン 5.3.6 以上、および PHP エクステンションの dom と mbstring が必要になります。サーバーOSが CentOS の場合は、以下のコマンドで PHP エクステンションの dom と mbstring をインストールできます。

sudo yum install php-xml
sudo yum install php-mbstring

Pico のダウンロード

Pico は GitHub のリリースページからダウンロードできます。

Releases · picocms/Pico · GitHub

PHP 8.0 の場合は、Pico バージョン3(現在はアルファ版)をインストールする必要があります。Pico がサポートしている PHP バージョンは次の通りです。

  • Pico バージョン2(PHP 5.3.6 〜 PHP 7.x.x)
  • Pico バージョン3(PHP 7.0.8 〜 PHP 8.0.x)

現時点(2021年7月21日)で、Pico バージョン3 はアルファ版ですが、Pico バージョン2と同じくらい安定しているため本番環境でも利用できます。

参考資料:https://github.com/picocms/Pico/issues/575

Pico のインストール

冒頭にも書きましたが Pico のインストールは簡単です。ダウンロードした Pico を Webサーバーのドキュメントルートにアップロードするのみです。

ブラウザでアップロードした Pico にアクセスして、下のような「Welcome to Pico」のページが表示されていればインストール完了です。

Welcome to Pico のページ

Pico の初期設定

Pico のインストールが終わったら、サイト名などの初期設定を進めていきましょう。

例として Pico を以下の環境にインストールしたとして説明します。ご自分の環境に読み替えてください。

  • Webサーバーのドキュメントルート:/var/www/html/
  • Pico のインストール先      :/var/www/html/pico/

設定ファイルの作成

Pico をインストールしたディレクトリに移動します。

cd /var/www/html/pico/

config ディレクトリの下に、設定ファイルのテンプレート「config.yml.template」がありますので、これを「config.yml」にリネームすることで設定ファイルを作成できます。

mv -i config/config.yml.template config/config.yml

以前 Pico の設定ファイルは PHP でしたが、現在は YMAL(「ヤムル」と読むことが多いようです)というフォーマットで書くようになっています。コンテンツファイルのヘッダ部分も YMAL フォーマットで書きますので、YMAL の作法になれておくと良いでしょう。

YMAL の作法

  • インデントの縦を合わせる
  • キーと値の区切り文字「:」の後ろは必ず空ける(× name:foo、○ name: foo)
  • 構文エラーになる場合は、クォートしてみる

参考資料:YAML Ain’t Markup Language

サイト名の設定

作成した設定ファイルを編集して、サイト名を適当な名前に変更します。

vi config/config.yml

site_title: Pico
 ↓
site_title: サンプルサイト

ブラウザをリロードしてサイト名が変更されたことを確認しましょう。

サイト名が変更された Welcome to Pico のページ

URLの設定

初期状態では「https://***/pico/?sub/page」というURLになりますが、これを一般的なURL「https://***/pico/sub/page」に変更します。

Webサーバーが Apache httpd の場合は、mod_rewrite モジュールが有効なこと、および「AllowOverride All」が設定され「.htaccess」が使えることを確認してください。

URLの設定を変更します。

vi config/config.yml

rewrite_url: ~
 ↓
rewrite_url: true

ブラウザで「https://***/pico/sub/page」にアクセスできることを確認してください。「Not Found」が表示される場合は、Apache httpd の設定を見直しましょう。

ロゴとキャッチコピーの設定

ロゴとキャッチコピーの設定は、設定ファイルではなく「_meta.md」という名前のファイルを「content」ディレクトリ下に置くことで設定できます。(初期状態で「content」ディレクトリは空になっています)

「content」ディレクトリの下に「index.md」が無い場合は、「vendor/picocms/pico/content-sample/」下のファイルを読み込んでしまいますので、適当な「index.md」を作成します。

vi content/index.md

---
Title: トップページ
Description: 仮のトップページです。
---
## ようこそサンプルサイトへ

ブラウザで作成したページが表示できることが確認できたら、「assets」ディレクトリにロゴをアップロードしておきます。(仮にアップロードしたロゴは「logo.png」とします)

「content」ディレクトリ下に、ロゴとキャッチコピーを設定するための「_meta.md」ファイルを作成します。

vi content/_meta.md

---
Logo: %assets_url%/logo.png
Tagline: Picoのサンプルサイト
---

ブラウザをリロードすると、ロゴとキャッチコピーが変更されていることが確認できると思います。

ロゴとキャッチコピーが変更された Pico サイト

テーマのカスタマイズ

イメージカラーやフッダ部分を変更したい場合は、テーマのカスタマイズが必要になります。テーマのカスタマイズ方法は次の通りです。

デフォルトのテーマフォルダをコピーします。(デフォルトのテーマは編集せずに残しておくことが推奨されています)

cp -rip themes/default themes/my_theme

設定ファイルを編集して、テーマをコピーしたテーマ「my_theme」に変更します。

vi config/config.yml

theme: default
 ↓
theme: my_theme

試しにヘッダ部分の色を変更してみましょう。

vi themes/my_theme/css/style.css

#header { background: #2EAE9B; }
 ↓
#header { background: #00BFFF; }

ブラウザをリロードして、変更が反映されていることが確認できればOKです。

ヘッダ部分の色が変更された Pico のページ

Webページの作成

Pico の Webページは、「content」ディレクトリ下にマークダウンで書かれたファイルをアップロードするのみで作成できます。

ファイルのヘッダ部分やマークダウンの書き方は、公式ドキュメントおよび以下のサンプルファイルが参考になります。

公式ドキュメント:Docs text-file-markup | Pico
サンプルファイル:vendor/picocms/pico/content-sample/theme.md

例えば「content」ディレクトリ下に「about.md」を作成すると、、、

vi content/about.md

---
Title: このサイトについて
Description: このサイトの説明
---
# このサイトについて

URL「https://***/pico/about」の Webページとして表示できます。

Webページ このサイトについて

おわりに

Pico はシンプルがゆえに出来ることが限られているため、サイトを公開した後もあれこれ悩む必要がありません。Pico の一番の魅力は「良い記事を書くことに集中できること」なのかもしれませんね。

コメント

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