baserCMS 5 用のサイト構造解析・サイトマップ作成プラグインです。 サイトをクロールして URL・ページタイトル・リダイレクトの一覧を作成し、CSV / Excel に書き出せます。
- HTTP クロール — 開始 URL からリンクを辿って BFS で探査し、URL / タイトル / HTTP ステータス /
Content-Type / meta robots / リダイレクトチェーン(
A → B → C)を記録。最大ページ数・最大深度・ リクエスト間隔で負荷を制御でき、外部サイトは記録のみ/完全除外を選択可能 - コンテンツ管理 DB との突き合わせ — 固定ページ・ブログ記事・カスタムエントリー等の公開 URL を DB から列挙してクロール結果と突合し、コンテンツ種別・公開状態を付加。どこからもリンクされていない 孤立ページや、逆にクロールでしか見つからない URL(ハードコードリンク・リンク切れ)を検出
- エクスポート — CSV(UTF-8 BOM 付き / Shift-JIS)、Excel (xlsx)。列と順序はカスタマイズ可能
- 実行方式 — 管理画面からバックグラウンド実行(進捗をリアルタイム表示)、または CLI
plugins/BcSiteExplorerに配置- 管理画面 > プラグイン管理 から有効化
Excel 出力に必要なライブラリはインストール時に自動で導入されます。
コマンド実行が許可されていない環境では導入をスキップし、CSV 出力のみ利用できます
(後から使いたい場合は cd plugins/BcSiteExplorer && composer install を手動で実行)。
管理画面 > サイトエクスプローラー から開始 URL とオプションを指定して「探査開始」。 進捗は「走査履歴」に表示され、完了後に「結果を見る」から閲覧・絞り込み・ダウンロードができます。
実行オプションは次回フォームの初期値として保存されます(Basic 認証のパスワードのみ、 平文で DB に残さないため保存されません)。
bin/cake bc_site_explorer crawl --url https://example.com/
# オプション指定
bin/cake bc_site_explorer crawl --url https://example.com/ --mode hybrid --max-pages 2000 --interval-ms 300
# Docker 等でサーバ内から公開 URL に接続できない場合
bin/cake bc_site_explorer crawl --url https://example.com/ --internal-base-url http://localhost
- 最大ページ数・最大深度の上限に達すると、発見済みだが未取得の URL が結果に残ります (クロール状態「未取得」。絞り込み検索で除外できます)
- robots.txt には対応していません(自サイトの解析を想定)。他社サイトへの実行は行わないでください
meta robotsのnofollowはリンク抽出をスキップします。noindexは記録のみ- フロントのページキャッシュが有効な場合、キャッシュされた内容を収集します
MIT License