--- name: basercms5-development description: 'baserCMS 5系(CakePHP 5.0.5系)+ jQuery プロジェクトの共通ルール(環境・ディレクトリ構成・命名規則・ログ/エラーハンドリング・コアハック禁止・サーバ制約)を定めた基底スキル。「baserCMS 5 で開発」「5系プロジェクトの構成・規約を確認」「htdocs/plugins 配下の配置」「CakeLog でログ出力」「htdocs/vendor/baserproject・cakephp はコアハック禁止」等、5系プロジェクト共通の方針・制約を確認する際に参照する。プラグイン開発・改修の実装パターン(Table/Entity・コントローラ・管理画面フォーム・イベント・Vue/JS 等)は basercms5-plugin-development、テーマ開発・改修(layout/element・ウィジェット・メールフォームテンプレ・アセット)は basercms5-theme-development が正本。baserCMS 4系の開発は basercms4-development、4→5 へのアップグレードは basercms4-to-5-upgrade スキルを参照。' license: MIT --- # baserCMS5系(CakePHP 5.0.5 系)+ jQuery プロジェクトの開発ルール このプロジェクトでは、以下の技術スタックおよび設計方針に従って開発されています。 5系スキルは3層構造になっており、本スキルは**共通ベース(環境・ディレクトリ構成・命名・ログ・コアハック禁止・サーバ制約)**を扱う。実装パターンは分野別スキルが正本: **プラグイン開発・改修 → `basercms5-plugin-development`**、**テーマ開発・改修 → `basercms5-theme-development`**、**4→5 移行作業 → `basercms4-to-5-upgrade`**(配下の分野別移行スキル含む)。 > **推奨: 5系の開発に着手する前に一度 `basercms5-claude-workflow-setup`(環境セットアップ)を参照し、進め方の環境(設計=superpowers brainstorming/権限整理=permissions-audit/その上での Auto mode/spec・plan の Markdown プレビュー)を整える。提案ベースで、整っていればスキップ。** --- ## 使用技術 - **baserCMS 5系** を使用(内部的には **CakePHP 5.0.5** ベース) - バックエンド:PHP 8.1.5 〜 8.2 / CakePHP 5.0.5 - データベース:MySQL 5.7 〜 8.0 - フロントエンド:jQuery 1.x〜3.x(プロジェクト内で複数バージョンが混在している可能性あり) - HTTPサーバ:Apache(mod_rewrite 有効) --- ## ディレクトリ構成のルール - MVC構成は CakePHP 5.0.5 に準拠しつつ、**baserCMSでは主にプラグイン単位で構築されている** - `htdocs/plugins/{Plugin名}/Controller/`, `Model/`, `View/` にそれぞれ配置される - 共通パーツ(ヘッダー、フッターなど)は、**テーマ内の `Elements/` ディレクトリに配置** - 主に:`htdocs/{テーマ名}/templates/element/` - レイアウトもテーマ内に配置される - 主に:`htdocs/{テーマ名}/templates/layout/` - `$this->layout` により切り替えが可能 - 管理画面系は `/admin/` プレフィックスのURLルーティングで制御 - 使用ファイル:`htdocs/config/.env` - 定義内容:`export ADMIN_PREFIX="admin"` --- ## コーディング方針(baserCMS5固有) 共通ルールのコーディング方針も参照してください。 - クラスベースよりも関数ベース・手続き的なコードが多く採用されている - JavaScript は Viewファイル内の `