내 사이트의 다양한 섹션을 제한해야합니다. 다양한 하위 경로에 대한 액세스를 제한하여이 작업을 수행하고 싶습니다. Path Access 모듈은 실제로 이것을하지 않습니다.Drupal 7 : 경로로 액세스 제한
당신은 같은의 제한을 허용하는 어떤 메커니즘을 제안 할 수 있습니다 :
회원 영역/'편집자의 역할이있는 사용자 만 제한 편집자/* .
규칙을 사용하여이를 수행 할 수있는 방법이 있습니까? 나는 시도했지만 찾지 못했습니다.
감사
내 사이트의 다양한 섹션을 제한해야합니다. 다양한 하위 경로에 대한 액세스를 제한하여이 작업을 수행하고 싶습니다. Path Access 모듈은 실제로 이것을하지 않습니다.Drupal 7 : 경로로 액세스 제한
당신은 같은의 제한을 허용하는 어떤 메커니즘을 제안 할 수 있습니다 :
회원 영역/'편집자의 역할이있는 사용자 만 제한 편집자/* .
규칙을 사용하여이를 수행 할 수있는 방법이 있습니까? 나는 시도했지만 찾지 못했습니다.
감사
당신은 너무 어렵지 않다,이에 대한 사용자 정의 모듈을해야합니다.
// Implements hook_init()
function mymodule_init() {
$restrictions = mymodule_get_restrictions();
global $user;
foreach ($restrictions as $path => $roles) {
// See if the current path matches any of the patterns provided.
if (drupal_match_path($_GET['q'], $path)) {
// It matches, check the current user has any of the required roles
$valid = FALSE;
foreach ($roles as $role) {
if (in_array($role, $user->roles)) {
$valid = TRUE;
break;
}
}
if (!$valid) {
drupal_access_denied();
}
}
}
}
function mymodule_get_restrictions() {
// Obviously this data could come from anywhere (database, config file, etc.)
// This array will be keyed by path and contain an array of allowed roles for that path
return array(
'members-area/editors/*' => array('editor'),
'another-path/*' => array('editor', 'other_role'),
);
}
경로 액세스 모듈이 사이트는 드루팔 사이트의 모든 페이지에 대한 액세스 제어의 추가 계층 을 관리자 제공 : 이것의 핵심이 될 것입니다.
확인, 감사이, 나는 그것을 밖으로 시도 할 것이다. 유일한 문제는 현재 프로젝트에 대한 사용자 지정 코드를 사용하지 않아야한다는 것입니다. –
[콘텐츠 액세스 모듈] (http://drupal.org/project/content_access)을 살펴 보셨습니까? 당신은 당신이 그것을하려고 노력하고있는 것을 짜낼 수 있습니다 :-) – Clive