1. システム概要
Circle Portalは、全国の学生サークル・社会人サークル・地域団体を横断的に検索・管理できるポータルサイトです。
主な特徴
- サークル横断検索機能
- ブログ投稿・イベント管理
- ECショップ機能(グッズ販売)
- 会計管理システム
- 施設予約機能
- 広告管理機能
- 多段階の権限管理
技術スタック
- バックエンド: PHP 8.0+
- データベース: SQLite3
- フロントエンド: HTML5, CSS3, JavaScript (Vanilla JS)
- 外部ライブラリ: FullCalendar v6 (イベントカレンダー)
注意: 本システムはフレームワークを使用せず、Pure PHPで構築されています。シンプルな構成で理解しやすく、カスタマイズも容易です。
2. ユーザー権限体系
Circle Portalは6段階の権限レベルを持ちます:
権限レベル一覧
| 権限レベル |
説明 |
主な権限 |
| ゲスト |
未ログインユーザー |
サークル検索・閲覧のみ |
| 一般ユーザー |
登録済みユーザー |
サークル参加申請、お気に入り登録 |
| メンバー |
サークルに所属 |
ブログ投稿、イベント閲覧 |
| マネージャー |
サークル運営補助 |
会計管理、ショップ管理、広告管理 |
| オーナー |
サークル作成者 |
全ての管理権限、メンバー権限変更 |
| サイト管理者 |
システム全体の管理者 |
全サークル管理、ユーザー管理、ランキング調整 |
ACLパターン: 本システムのアクセス制御関数は全て function_name($user_id, $circle_id) の形式で統一されています。
3. 未ログインユーザー(ゲスト)
できること
- サークルの検索・閲覧
- ブログ記事の閲覧
- イベントカレンダーの閲覧
- ショップ商品の閲覧
- 新規ユーザー登録
できないこと
- サークルへの参加申請
- お気に入り登録
- ブログ投稿
- 商品購入(外部決済URLは閲覧可能)
スクリーンショット
図1: トップページ(未ログイン状態) - サークル一覧、新着ブログ、人気商品が表示されます
図2: ブログ一覧ページ - カテゴリ別フィルタリング、ピン留め記事の表示が可能
図3: ショップページ - 各サークルの商品を横断検索・閲覧できます
4. 一般ユーザー
ゲストから追加でできること
- マイページの利用
- サークルへの参加申請
- お気に入りサークルの登録
- プロフィール編集
- 施設予約(ログイン必須機能)
スクリーンショット
図4: 一般ユーザーのマイページ - 参加サークル一覧、お気に入り、クイックリンクが表示されます
参加サークルの表示: マイページには参加しているサークルが一覧表示され、それぞれの役割(メンバー/マネージャー/オーナー)がバッジで表示されます。
5. サークルメンバー
一般ユーザーから追加でできること
- 所属サークルのブログ投稿
- ブログ記事の編集・削除(自分の投稿のみ)
- サークル内イベントへの参加
- メンバー限定情報の閲覧
ブログ投稿機能
- カテゴリ選択(お知らせ、イベント、活動報告、募集、その他)
- ステータス管理(公開、下書き、予約投稿)
- トップピン留め機能
- 投稿一覧での絞り込み検索
注意: メンバーは自分が投稿したブログ記事のみ編集・削除できます。他のメンバーの投稿は閲覧のみ可能です。
6. サークルマネージャー
メンバーから追加でできること
- サークル情報の編集
- 会計台帳の管理
- ショップ商品の登録・管理
- 注文管理
- 広告の作成・管理
- 全ブログ記事の編集・削除
スクリーンショット
図5: 会計台帳 - 収入・支出の記録、月別フィルタリング、精算状態管理が可能
図6: 商品管理 - 商品の登録、在庫管理、販売数の確認ができます
図7: 注文管理 - 注文の確認、入金確認、発送処理が可能
図8: 広告管理 - 広告の作成、掲載期間設定、効果測定(表示回数・クリック数)
図9: ブログ管理 - 全記事の管理、ピン留め、ステータス変更が可能
7. サークルオーナー
マネージャーから追加でできること
- サークルの削除
- メンバーの権限変更(メンバー ⇔ マネージャー)
- メンバーの強制退会
- サークルステータスの変更(下書き、承認待ち、etc.)
- オーナー権限の譲渡
スクリーンショット
図10: オーナーのマイページ - 複数サークルの管理、役割ごとの機能ボタンが表示されます
オーナーの責任: サークルオーナーはサークルの最高責任者として、メンバー管理やサークル全体の運営に責任を持ちます。
8. サイト管理者
管理者ができること
- 全サークルの管理(承認、差戻し、凍結、削除)
- 全ユーザーの管理(凍結、削除)
- ランキングブースト値の調整
- サイト全体の統計情報の閲覧
- 承認待ちサークルの審査
スクリーンショット
図11: 管理ダッシュボード - サイト全体の統計、最近の登録、新規ユーザーなどが一覧表示
図12: サークル管理 - 全サークルの一覧、ステータスフィルタリング、凍結・削除操作
図13: ユーザー管理 - 全ユーザーの一覧、検索、凍結・削除操作
図14: ランキング調整 - サークルごとのブースト値設定、期間指定
重要: サイト管理者の権限は非常に強力です。誤って操作すると取り返しのつかない結果になる可能性があるため、慎重に操作してください。
9. イベントカレンダー
Circle Portalでは、全サークルのイベントを横断的に閲覧できるカレンダー機能を提供しています。FullCalendar v6を使用した高機能なカレンダーで、月表示・週表示・リスト表示を切り替えることができます。
カレンダーの主な機能
- 月間カレンダー表示: 全サークルのイベントを月単位で一覧表示
- サークル別フィルタリング: 特定のサークルのイベントのみを表示
- 表示切替: 月・週・リスト表示の3つのビューを切り替え可能
- イベント詳細: イベントをクリックすると詳細情報を表示
- 公開範囲: 公開イベント、メンバー限定イベントの表示制御
- 参加者管理: ログインユーザーはイベントへの参加登録が可能
スクリーンショット
図15: イベントカレンダー(全サークル表示) - 全サークルのイベントを月間カレンダーで一覧表示。多数のイベントが視覚的に配置されています。
図16: イベントカレンダー(サークル別フィルタ) - 「札幌写真サークル Photo Hokkaido」のイベントのみを表示。特定サークルの活動スケジュールを確認できます。
イベント作成権限
| 権限レベル |
イベント作成 |
公開範囲設定 |
| 未ログインユーザー |
❌ 不可 |
- |
| 一般ユーザー |
❌ 不可 |
- |
| サークルメンバー |
❌ 不可 |
- |
| サークルマネージャー |
✅ 可能 |
全ての公開範囲を設定可能 |
| サークルオーナー |
✅ 可能 |
全ての公開範囲を設定可能 |
| サイト管理者 |
✅ 可能(全サークル) |
全ての公開範囲を設定可能 |
💡 Tips: サークル別フィルタを使用すると、特定のサークルのイベントスケジュールを集中的に確認できます。参加しているサークルのイベントをチェックして、参加登録をお忘れなく!
10. 主要機能一覧
🔍 検索・閲覧機能
- キーワード検索
- カテゴリフィルタリング(8カテゴリ)
- 活動タイプフィルタリング(6タイプ)
- 都道府県フィルタリング(47都道府県)
- ランキング表示
📝 ブログ機能
- ブログ投稿(カテゴリ別)
- ステータス管理(公開/下書き/予約投稿)
- ピン留め機能
- 画像アップロード対応
- カテゴリ別フィルタリング
- 全サークル横断でのブログ一覧
📅 イベント機能
- FullCalendar v6によるカレンダー表示
- 月/週/リスト表示の切り替え
- サークル別フィルタリング
- イベント詳細モーダル
- 参加者管理
- 公開範囲設定(公開/メンバー限定/限定公開)
🛍️ ECショップ機能
- 商品登録・管理
- 在庫管理
- 注文管理(未入金/入金済み/発送済み)
- 外部決済URL連携(BOOTH等)
- 人気順/新着順/価格順ソート
- サークル横断での商品検索
💰 会計管理機能
- 収入・支出の記録
- カテゴリ別集計
- 月別フィルタリング
- 精算状態管理
- 総収入・総支出・残高の自動計算
📢 広告管理機能
- 画像広告/HTML広告の作成
- 広告枠選択(サイドバー、トップページ等)
- 掲載期間設定
- 効果測定(表示回数、クリック数)
- 管理者承認フロー
🏢 施設予約機能
- 施設の登録・管理
- 時間枠での予約
- 予約状況の確認
- 予約の承認・拒否
👥 メンバー管理機能
- 参加申請の承認・拒否
- 権限変更(メンバー/マネージャー)
- メンバーの強制退会
- オーナー権限の譲渡
⭐ お気に入り機能
- サークルのお気に入り登録
- お気に入り一覧の表示
- マイページでの確認
🔐 アクセス制御
- 6段階の権限レベル
- 機能ごとの細かいアクセス制御
- ACLライブラリによる統一的な権限チェック
- CSRF対策
- XSS対策(h()関数による自動エスケープ)
📋 まとめ
Circle Portalは、サークル活動に必要な機能を包括的に提供するポータルサイトです。
システムの強み
- シンプルな技術スタック(Pure PHP + SQLite)で学習・保守が容易
- 6段階の細かい権限管理で柔軟な運用が可能
- ブログ、イベント、ショップ、会計など多彩な機能
- サークル横断での検索・閲覧に対応
- レスポンシブデザインでモバイル対応
推奨される使い方
- 大学・企業内でのサークル管理システムとして
- 地域コミュニティの活動管理プラットフォームとして
- 複数団体を横断するポータルサイトとして
スクリーンショット数: 本ガイドには合計14枚のスクリーンショットが含まれており、各権限レベルでの画面表示を確認できます。