• 虹色ミツバチ
  • freoカスタマイズメモ、テンプレート・プラグイン配布/officeTIPS
検索プラグイン
虹色ミツバチ

> Entry >freo>freoTips>テンプレート系TIPS> エントリーやページでプラグイン利用部分に閲覧制限をかける方法

【freo】【freoTips】【テンプレート系TIPS】エントリーやページでプラグイン利用部分に閲覧制限をかける方法

freoでは、閲覧制限をかけることができます。
閲覧制限をかけると、タイトル、本文、ファイルなどを見えなくすることができますが、プラグイン利用部分(子ページ表示プラグインを利用して表示している子ページ一覧や、関連エントリー表示プラグインを利用して表示している関連エントリー一覧など)は表示されてしまいます。これを隠すようにするには、以下のとおりの編集が必要です。

ページのプラグイン利用部分に閲覧制限をかける方法

freoの仕様として、子ページ表示プラグイン等を使って表示している部分は、そのページ自体に閲覧制限をかけても、表示されてしまいます。
これは、ページに閲覧制限がかかった場合、タイトルや添付ファイルなど、データベースのページテーブルに登録された情報(freo/本体のテーブル構成「ページ格納テーブル」)は保護されますが、プラグイン側でページ画面(freo/page)での読み込みが許可されており、テンプレートに直接記述する方法によって表示させているもの(たとえばテンプレートに記述している子ページプラグイン利用部分等)は制限されないからです。

これを隠す方法は以下のとおりです。

[freo/templates/pages/default.html]の隠したい部分に下記の通り条件式を加入する。

<!--{if !$page.restriction or ($page.restriction == 'user' and !$page_security) or ($page.restriction == 'group' and !$page_security) or ($page.restriction == 'password' and !$page_security) or $freo.user.authority == 'root' or $freo.user.authority == 'guest'}-->
     隠したい部分
<!--{/if}-->

解説

<!--{もし 閲覧制限がかかっていない または 登録ユーザーのみ閲覧可能状態でユーザー登録有の場合 または ユーザーグループのみ閲覧可能状態で該当グループだった場合 または パスワード制限でパスワード認証後の場合 または ログインユーザー権限が投稿者だった場合 または ログインユーザー権限が管理者だった場合 ここから}-->
     隠したい部分
<!--{もし~ここまで}-->

エントリーのプラグイン利用部分に閲覧制限をかける方法

freoの仕様として、関連エントリー表示プラグイン等を使って表示している部分は、そのエントリー記事自体に閲覧制限をかけても、表示されてしまいます。
これは、エントリー記事に閲覧制限がかかった場合、タイトルや添付ファイルなど、データベースのエントリーテーブルに登録された情報(freo/本体のテーブル構成「エントリー格納テーブル」)は保護されますが、プラグイン側でエントリー記事画面(freo/view)での読み込みが許可されており、テンプレートに直接記述する方法によって表示させているもの(たとえばテンプレートに記述している関連エントリー表示プラグイン利用部分等)は制限されないからです。

これを隠す方法は以下のとおりです。

[freo/templates/view/default.html]の隠したい部分に下記の通り条件式を加入する。

<!--{if !$entry.restriction or ($entry.restriction == 'user' and !$entry_security) or ($entry.restriction == 'group' and !$entry_security) or ($entry.restriction == 'password' and !$entry_security) or $freo.user.authority == 'root' or $freo.user.authority == 'guest'}-->
     隠したい部分
<!--{/if}-->

解説

<!--{もし 閲覧制限がかかっていない または 登録ユーザーのみ閲覧可能状態でユーザー登録有の場合 または ユーザーグループのみ閲覧可能状態で該当グループだった場合 または パスワード制限でパスワード認証後の場合 または ログインユーザー権限が投稿者だった場合 または ログインユーザー権限が管理者だった場合 ここから}-->
     隠したい部分
<!--{もし~ここまで}-->

ページ移動

関連記事

ユーティリティ

Twitter

ページ上部へ