Joomlaでログインユーザー毎に独立した「記事作成システム」(フロントエンド)を作る
Joomla 5.44 のフロントエンドで、「ログイン中の特定ユーザーに向けた記事を選択的に表示させる方法」は比較的容易だが、フロントエンドで「ユーザー毎に独立した記事(他のユーザーには見えない記事)を作成するシステム」はちょっと敷居が高い。AIができないと言うので、諦めていたが、 サブカテゴリを使うことで、Joomla の基本機能で実現できた。
セッションにログイン中の特定ユーザー向け記事を選択的に表示する
特定のユーザーにのみ表示される記事の作り方
(方法)ユーザーを Xとする
1)〔グループ作成〕ユーザーの属するグループ(例:Xグループ)を作る。(親グループは registeredとする)
2)〔アクセスレベル作成〕ユーザーの属するグループ(Xグループ)と super users からなるアクセスレベルを作る。例:Xonly
3)〔記事設定〕表示させたい記事のアクセスレベルを Xonly とすると、この記事は ユーザーX にのみ表示される。
4)全登録ユーザーについて、1)~3)を実施すれば、管理者から各ユーザーへの通知システムが実現できる。
5)
セッションにログイン中の特定ユーザー専用、プライベート記事作成システム
特定のユーザーにフロントエンドでの記事作成を許可/記事は他のユーザーには表示されない
(方法)ユーザーを Xとする
1)2)前記1)~2)と同じ
3)〔記事のカテゴリ〕サブカテゴリを作る。例:カテゴリA → カテゴリAA
4)〔専用メニュー〕サブカテゴリ(AA)の記事を表示するメニュー(AA)を作り、このメニューのアクセスレベルを xonly とすると、これはユーザーX専用のメニューとなる。
5)〔記事作成を許可〕サブカテゴリ(AA)の 設定「アクセス許可」で『Xグループに記事作成を許可(作成・自分で編集・状態の編集)』すると、 Xはメニュー(AA)内で記事が作成できるようになる。この記事は、上記4)の仕組みから、他のユーザーには表示されない。
(注意)①作成された記事の表示アクセスレベルは、サイトデフォルトとなる。このため、前もって、サイトデフォルトを registered などに変更しておく必要がある。②メニューとカテゴリのアクセスレベルが異なると、403エラーなどが発生することがあるので注意。
