Kurallar modülünü kullanarak aşağıdakine benzer bir kural uygulayabilirsiniz:
{ "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" } }
]
}
}
Göreli yola erişmeye çalışan herkes yol content/video-1
içeren bir sayfaya yönlendirilir no_access
ve ilgili bir hata mesajı gösterilir (bu yolu kendi kurallarınıza uyacak şekilde uyarlayın ve gösterilecek mesajı inceleyin).
Yukarıdaki kural yalnızca göreli yola content/video-1
(sorunuzdaki gibi) erişimi kısıtlar . Kuralı benzer URL'lere genişletmek istiyorsanız, benzer bir content\/video-1
şeye content\/video-\\d+$
veya yollarınızın adlandırma kuralına uyan herhangi bir varyasyona geçin .
Yukarıdaki kural, yalnızca seçilen rollere sahip kullanıcılar için Kural Eylemini uygulamak için (henüz) dikkate almaz. Ancak Kurallar modülüne biraz aşina olan herkes için, bu basit bir ileri "Koşul" eklemek için ... örneğin: editör, yönetici vb. Rolü olan kullanıcılar için kural eylemini atlayın. "Kullanıcının rol yöneticisi (ve / veya düzenleyicisi) YOK" durumu. Bu şekilde, bu tür özel kullanıcılar yine de bu tür düğümleri yine de görüntüleyebilir (bu tür ekstra koşullar olmadan artık bu düğümleri görüntüleyemezler ...).
Bu kuralı kendi sitenizde denemek için yukarıdaki Kurallar kodunun tamamını kopyalamanız ve "İçe Aktar" işleviyle oluşturulmuş yeni bir Kural'a yapıştırmanız yeterlidir (Kurallar Kullanıcı Arayüzü etkinse kullanılabilir). Daha sonra kendi ortamınıza uyması için daha fazla düzenleme / rafine edin (örn. "Üzgünüz, ..." mesajı gösterilecektir).
Ek ayrıntılandırma
Diğer cevaplardan birine şunları içeren bir yorum eklediniz:
... bazı durumlarda ana sayfaya, bazılarında 404 vb. Yönlendirmek istedim, bu yüzden daha iyi bir kontrole sahiptim ...
Yapmak istediğiniz şey buysa, Koşullu Kurallar modülünü de ekleyerek yukarıdaki Kural Eylemini daha da hassaslaştırabilirsiniz . Bununla, "bazı durumlar" ın her biri için yönlendirilecek uygun URL'yi belirtebilirsiniz. Cevabım bakın " Bir liste kutusunun değerine? Bağlı bazı alanların değerlerini nasıl ayarlanır Bir Kurallar Eylem içinde bu modülü nasıl kullanılacağına ilişkin bir uygulama için".