Views를 사용하여 비디오 갤러리를 만들었습니다 . 그러나 페이지를 공개하고 각 비디오에 개별적으로 액세스하지 못하게하고 싶습니다.
동영상은 일종의 콘텐츠로 만들어야했기 때문에 모든 동영상에 액세스 할 수있는 ULR /content/video-1
등이 있습니다.
답변
콘텐츠 액세스 모듈을 시도 하고 video
개별적 으로 콘텐츠에 대한 액세스를 방지하십시오 (또는 원하는대로 액세스 할 수 있습니다 roles
)
이 모듈을 사용하면 역할 및 작성자별로 컨텐츠 유형에 대한 권한을 관리 할 수 있습니다. 각 컨텐츠 유형에 대한 사용자 정의보기, 편집 및 삭제 권한을 지정할 수 있습니다. 선택적으로 컨텐츠 별 액세스 설정을 사용할 수 있으므로 각 컨텐츠 노드에 대한 액세스를 사용자 정의 할 수 있습니다.
또한 노드 뷰 권한 모듈을 사용할 수 있지만 use 사용하는 것이 좋습니다 Content access module
.
(앞으로 drupal 작업을 원한다면이 유용한 모듈에 더 잘 참여하는 것이 좋습니다)
답변
노드보기 권한 모듈을 설치하십시오 .
노드보기 권한 모듈을 사용하면 Drupal 6에서와 같이 권한 페이지에서 각 컨텐츠 유형에 대한 “자신의 컨텐츠보기”및 “모든 컨텐츠보기”권한을 사용할 수 있습니다.
이제 권한 페이지로 이동 하여 익명 사용자의 비디오 컨텐츠 유형에서 컨텐츠 권한 보기를 제거하십시오 .
비디오 갤러리의 비디오 중 일부만 익명 사용자가 액세스 할 수있게하려면 액세스 거부 모듈 을 설치 하십시오 .
답변
컨텐츠 유형을 업데이트하십시오.
-
display_order 등과 같은 숫자 필드를 추가하십시오 .
-
표시하려는 비디오에 대해서만이 필드의 값을 설정하십시오.
-
보기 설정으로 이동하여 설정하십시오.
호출기 사용 : 지정된 수의 항목 표시 | x 품목
여기서 x는 표시하려는 동영상 수입니다.
-
그런 다음 표시 순서에 따라 정렬을 적용하십시오.
그것이 효과가 있기를 바랍니다.
답변
나는 Rabbit Hole 모듈이 당신이 찾고있는 것을 정확하게 수행 한다고 생각합니다 . 다음은 모듈 설명 페이지에서 귀하의 요구에 대한 답변입니다. 행운을 빕니다.
Rabbit Hole은 엔티티가 자신의 페이지에서 볼 때 발생하는 일을 제어하는 기능을 추가하는 모듈입니다.
슬라이드 쇼에 표시되는 이미지 콘텐츠 유형과 같이 자체 페이지에 표시해서는 안되는 콘텐츠 유형이있을 수 있습니다. Rabbit Hole은 node / xxx를 통해 자체 페이지에서이 노드에 액세스 할 수 없도록합니다.
답변
토끼 구멍 모듈로 가십시오 . 정확히 동일합니다. 모든 컨텐츠는보기 / 코드를 통해 액세스 할 수 있지만 세부 사항 페이지 “content / ***”에 액세스하려고하면 액세스가 거부되었거나 경로 재 지정을 설정할 수 있습니다.
답변
1) 컨텐츠 유형에 부울 값 필드를 작성하십시오 .
2) 값을 true로 선택한 경우 해당 비디오 필드에 고유 한 클래스를 추가해야하며, 값을 false로 선택한 경우 해당 비디오 필드에 클래스를 추가해서는 안됩니다.
3) 클래스가없는 비디오를 숨기려면 CSS 를 작성 하십시오.
답변
규칙 모듈을 사용하면 다음과 유사한 규칙을 구현할 수 있습니다.
{ "rules_disallow_accesss_to_selected_urls" : {
"LABEL" : "Disallow access to selected URLs",
"PLUGIN" : "reaction rule",
"OWNER" : "rules",
"REQUIRES" : [ "rules" ],
"ON" : { "init" : [] },
"IF" : [
{ "text_matches" : {
"text" : [ "site:current-page:url" ],
"match" : "content\/video-1",
"operation" : "regex"
}
}
],
"DO" : [
{ "drupal_message" : {
"message" : "Sorry, access to URLs like [site:current-page:url] is not allowed ...",
"type" : "error"
}
},
{ "redirect" : { "url" : "no_access" } }
]
}
}
상대 경로에 액세스하려는 사람 content/video-1
은 path 가있는 페이지로 리디렉션되고 no_access
관련 오류 메시지가 표시됩니다 (이 경로는 사용자의 규칙에 맞게 조정하고 표시 할 메시지를 검토하십시오).
위의 규칙 content/video-1
은 질문에서와 같이 상대 경로에 대한 액세스 만 제한합니다 . 규칙을 유사한 URL로 확장하려면 content\/video-1
과 같이 변경 content\/video-\\d+$
하거나 경로의 이름 지정 규칙에 맞는 변형으로 변경하십시오.
위의 규칙은 선택한 역할을 가진 사용자에게만 규칙 작업을 적용하는 데 (아직) 고려되지는 않습니다. 그러나 규칙 모듈에 익숙한 사람이라면 누구나 추가 할 수있는 “조건”입니다. 예 : 편집자, 관리자 등의 역할을 가진 사용자의 규칙 작업을 건너 뜁니다. 규칙을 추가하여 수행 할 수 있습니다. “사용자에게는 역할 관리자 (및 / 또는 편집자)가 없습니다”와 같은 조건. 그렇게하면 그러한 종류의 특수 사용자는 여전히 그러한 노드를 볼 수 있습니다 (추가 조건이 없으면 더 이상 그러한 노드를 볼 수 없습니다 …).
자신의 사이트에서이 규칙을 실험하려면 위의 전체 규칙 코드를 복사하여 “가져 오기”기능 (규칙 UI가 활성화 된 경우)을 통해 생성 된 새 규칙에 자신의 사이트에 붙여 넣으십시오. 그런 다음 자신의 환경에 맞도록 추가 편집 / 정의하십시오 (예 : “죄송합니다 …”메시지가 표시됨).
추가 개선
다른 답변 중 하나에 다음을 포함하는 주석을 추가했습니다.
… 어떤 경우에는 홈 페이지로 리디렉션하고 404 등의 경우 다른 페이지로 리디렉션하고 싶었 기 때문에 더 나은 제어 기능을 제공했습니다 …
그것이 또한 당신이하고 싶은 일이라면 조건부 규칙 모듈 을 추가하여 위의 규칙 작업을 더 세분화 할 수 있습니다. 이를 통해 각 “일부 사례”에 대해 리디렉션 할 적절한 URL을 지정할 수 있습니다. 규칙 조치 내에서이 모듈을 사용하는 방법에 대한 그림은 ” 목록 상자의 값에 따라 일부 필드의 값을 설정하는 방법 “에 대한 나의 대답을 참조하십시오 .