【LaravelベースのCMS】PYRO CMSのローカルインストール方法や使用感など紹介

    5176文字

           

今回は、ネットで検索していて見つけたLaravel(phpフレームワーク)ベースのCMS・PYRO CMSを紹介します。フレームワークをベースにしているということで、WordPressや他ブログサービスなどに比べて敷居は高いといえますが、エンジニア系の方が実際に使うほか、『Laravelで動いているシステムはどんなものがあるか』というような、学習目的でも使えそうです。 インストールや使用感などサックリとですが、確認していってみましょう。

PYRO CMSとは?

2023年現在(ネットとかを検索して調べた感じだと)主流になっているphpフレームワーク・Laravelをベースに開発されたCMSです。開発者的には『Laravelで動いているシステムはどんなものがあるか』の事例として学習してもよさそう。管理人はLaravelについてあまり触っていなかった(コマンドでインストール・ルーティングいじってblade.phpエディットして表示書き換えとか、あたりまで)ので、具体的にどんなふうに動いているか見たい感じです。

公式サイトによると『ライセンスはMIT License』『シンプルでクリーン・レスポンシブなコントロールパネル』『Artisanコマンドで素早くコンポーネント生成』といった点がアナウンスされています。

公式のインストールページには『サーバー必要スペック』『コマンドインストール方法』『インストール後のコントロールパネル使い方』なども詳細に書いてあるので、こちらもご覧ください。(ただし、全部英語です。)

ローカル環境インストール時の推奨環境~XAMPPやライブラリ管理ツールComposerを導入しておく

今回は、PyroCMSをローカル環境にインストールしてみます。長くなりそうなので、サーバーデプロイは別の機会に。インストール前に導入しておきたいアプリケーションが2つあります。『XAMPP』『Composer』です。

まずはメジャーなPHP 開発環境である『XAMPP』。ApacheサーバーやMariaDB、PHPやPerl、phpMyAdminにいろいろモジュールが統合されたソフトでおなじみ。 PyroCMSでは、データベースなども使うので、ローカル開発時にはほぼ必須かも。

また、ライブラリ管理ツール・Composerもあると便利です。普段はあんまり使っていないんですけど、今回のケースではcomposer create-projectみたいに、composerコマンドでサクッと入ってくれました。

XAMPPについては、当サイトでも過去に取り上げているので、お時間がありましたら、こちらもお読みください。

PyroCMSをローカルインストールする方法

Composerコマンドを使ったインストール

管理人のPCには、以前他フレームワークで使ったComposerが入っていたので、Composerコマンドを使ってみます。とりあえず、xampp/htdocs内に『pyro』というフォルダを作っておきました。そして、オフィシャルサイトで使えるコマンドをしらべ、X&windowsキーでメニューを開いて、コマンドを入力。たしかこんな感じで入力しました。(一行目で場所参照。2行目でプロジェクト作成) なお、pyrocms/pyrocmsと2個並んでいる部分は、後半で『pyrocms/pyrocms:3.5』のようにバージョンが指定できるそうです。指定しないので最新が入ります。

cd \xampp\htdocs\pyro composer create-project pyrocms/pyrocms

上記のコマンドを打つと、『downloading 〇〇』とでてきて、インストールスタート。 とりあえず、お茶でも飲みながら待ちます。

だいたい終わった感じ。スターターテーマやモジュールとか、いろいろ入ってきましたね~。

PyroCMSインストール 初期設定

*urlはデフォルトの状態で進めます(xampp/htdocsに、pyroというフォルダを作っておいたので、そこの下に構築)。

よくあるCMSのように、データベースやユーザーの設定をする

インストールし終わったあと、http://localhost/pyro/pyrocms/public/index.phpにアクセスすると、インストーラが起動。 プロジェクト名/publicというのが、Laravelのドキュメントルートです。たぶん触ったことがある人はわかるけど、初見じゃ厳しい情報(笑) なおインストーラにリダイレクト。パスはhttp://localhost/pyro/pyrocms/public/index.php/installer となります。

XAMPPコントロールパネルでMySQLをオンにしておいて、データベース設定をします。一般的な『ホスト・ポート・データベース名・ユーザー名・パスワード』といった項目。なお、管理人はデータベースにこれ用ユーザーを追加したので、xampp\phpMyAdmin/config.inc.phpで、データベースパスワード追加の対応もしました。あとはCMSのユーザー情報も入力します。

設定中は、名前のとおり炎のようなロゴが赤に。由来もpyrokinesis(ヒーロー映画とかでよくある炎を発生させる超能力)のpyroからきていると思われます。

完了。このあとはフロントやログイン画面に入れるようになります。

ダッシュボードについて(もう入っている)

で、ドキュメントを読んでいて気になった部分。ダッシュボードを入れるコマンドが。 『ダッシュボードもモジュールになっていて、コマンドでいれるのか?』と思いましたが・・・

コマンドを打ってみたところ、既に入っていました

フロント/管理画面/ログインの表示例と初期アドレス

フロント表示例

フロントはこんな感じ。パーツが、フッターとかモジュールとかいろいろあるようです(管理画面から操作可能)。デフォルトテーマはシンプルで良い感じです。

urlは、初期状態では以下のアドレスとなりました。さっきも出たLaravelのドキュメントルートです。 http://localhost/pyro/pyrocms/public/index.php

ログイン画面

ログイン画面はこんな感じに。初期状態urlは以下の通りです。 http://localhost/pyro/pyrocms/public/index.php/admin/login

拡張子で終わったあとに/admin/みたいなのが、デフォルトだと微妙な感じです。Laravelヘルパ関数でurlを操作するものがあるので、調整はできそうな気がします(長くなるので時間があったらこんどやります)。

管理画面

管理画面は http://localhost/pyro/pyrocms/public/index.php/admin/ となります。左サイドのメニューでは、基本的なことはある程度できそうとわかりますが、デフォだと項目が全部英語になっています。

管理画面『Settings/ ModuleSystem /Localization』の『Language』『Enabled Languages』は日本語にしてみましたが、管理画面メニューなどは反映しないようです。モジュールやアドオンで日本語表記もあるかもしれません。 (または作る?笑)

ファイルアップロードや記事執筆

CMSの基本的な機能である、ファイルアップロードや記事執筆についても、サクッとですが、確認してみました。

ファイルアップロード&保存ディレクトリ

管理画面左メニューFiles→uploadボタン→imagesで、画像アップロードができます。ここにアップしておくと、記事で使ったりできますね。試しに『pyro-test001.jpg』という名前で、管理人が以前つくった焼き鳥丼の画像をアップしてみます。

で、画像のパスを確認してみました。『public/index.php/files/images/』というパスでしたが、これは実際にここにあるわけではありません。 public内にあったのは『app(フォルダ)・vendor(フォルダ)・.htaccess・index.php』でした。

実際のパスはここでした。ずいぶん奥のほうに入っているものです。下に『表示パス・実際のパス』をまとめたのでご確認ください。

表示パス /pyrocms/public/index.php/files/images/pyro-test001.jpg
実際のパス /pyrocms/storage/streams/default/files-module/local/images/pyro-test001.jpg

Laravelデフォルトでは『storage/app/publicに入る』というのを以前どこかの専門サイトで読んだ気がしますが、このCMSでは少し設定が変わっているようです。

記事(posts)書いてみた

記事には『Pages・Posts』というタイプがあるようです。WordPressを使ったことのある方はイメージしやすいでしょう。

『General』のタブでは本文や基本情報を設定。使い心地は他のブログと、そんなに変わらない印象ですね。

『General』のほかに、『Organization・SEO・Options』のタブがあります。『Organization』ではカテゴリやタグ設定、『SEO』は、検索エンジン表示用のmeta情報、『Options』で公開/非公開や日付などでした。

あとがき・まとめ

  • LaravelフレームワークをベースにしたCMSにPyroCMSがあり、ローカル構築時はXAMPPやComposerがあるとよい
  • デフォルト状態では、各種urlはLaravelのドキュメントルートから表示する形に
  • ファイルパスは実際とことなる
  • CMSとしての基本的なところは網羅している

まとめるとこんなところでしょうか。管理人はLaravelをあまり使っていなかったのでこのくらいしか書けないけど、理解が進むといろいろカスタマイズや、エラーの対処もやりやすくなると思います。 Laravel学習にも、少し役に立つかもしれません。

WordPressサイト制作&リニューアル・機能開発サービス | アトリエSS


【カテゴリ】 - PHP・データベースetc
【タグ】 - ,

  関連記事

PHP・mb_substr関数を使って、タイトル文字数を揃える(WPレイアウト調整)
侍エンジニア塾ブログにあったPHPコードをシンプルに書いてみる(foreachで配列キーや値取得・continueで空要素スキップ)
【PHPライブラリでスクレイピング】PHP Simple HTML DOM Parserで、クラスやID指定で別サイトの内容を取得する方法
【WordPress別サーバー引っ越し】SQLエクスポート/インポート&Redirectionプラグインを使った方法
YouTube Data APIを使って、PHPで『タイトル・動画id・サムネイル画像』などを取得してみる(Search: listリソース)
WordPressユーザーが覚えると便利な条件分岐~投稿記事・固定ページ指定して表示/非表示
【WordPress条件分岐】is_singleとis_singularって違うの?→idやスラッグ指定、投稿タイプ指定の面で違いが
【LaravelベースのCMS】PYRO CMSのローカルインストール方法や使用感など紹介
【WPカスタマイズ】プラグイン不使用、テーマに関連記事表示機能を実装しPV・滞在時間を上げる
WordPress一覧表示で、特定のカテゴリ/投稿を表示しないようにするには?→category_not_in・post_not_inで
【WordPress】記事文字数のカウント方法(コア機能・プラグイン)チェックと、フロントへの出力について
テスト環境(ローカル含む)でPHPサイト開発に使えるツール&XAMPPでやってみた例(設定や表示ファイルetc)