กำหนดค่าหน้าปฏิเสธการเข้าถึง


11

ฉันมีหน้าพื้นฐานมากมายที่ฉันต้องการให้ผู้ใช้ลงชื่อเข้าใช้เพื่อดูพวกเขา ฉันจะกำหนดหน้าปฏิเสธการเข้าถึงเว็บไซต์เองได้อย่างไร

คำตอบ:


7

หน้าปฏิเสธการเข้าถึงที่กำหนดเองสามารถกำหนดได้ภายใต้ / admin / config / system / site-information ตัวอย่างเช่นหน้า 404 ข้อผิดพลาดทั่วไปหนึ่งโมดูลมีให้โดยSearch404

สิ่งที่คุณต้องทำคือกำหนดหน้าของคุณเองอาจมีทีเซอร์จากเพจที่ร้องขอและแจ้งให้ผู้ใช้ทราบว่าการเข้าถึงเนื้อหาแบบเต็มต้องการให้พวกเขาเข้าสู่ระบบ

นี่อาจจะเป็นสิ่งที่คุณต้องใส่รหัส php ลงในส่วนของหน้าหรือคุณอาจใช้โมดูล Search404 เป็นพื้นฐานในการพัฒนาโมดูลของคุณเองเพื่อจัดการกับสิ่งนี้

แก้ไข: ยิ่งฉันคิดเกี่ยวกับสิ่งนี้มากเท่าไหร่คำถามก็ยิ่งน่าสนใจมากขึ้นเท่านั้น ฉันคิดว่าอาจมีการทำกรณีเพื่อขออนุญาต 'ดูทีเซอร์' เพิ่มเติมจาก 'ดูเนื้อหาที่เผยแพร่' กล่าวอีกนัยหนึ่งหน้านี้สามารถใช้งานได้สำหรับผู้ใช้ทั้งหมด แต่ทีเซอร์จะแสดงแทนเนื้อหาแบบเต็มและข้อความจะปรากฏขึ้นเพื่อระบุว่าผู้ใช้จะต้องเข้าสู่ระบบเพื่อดูเนื้อหาแบบเต็มเหมือนกับทำเพื่อ ความคิดเห็นตอนนี้ บางทีแนวคิดสำหรับโมเดลที่สนับสนุน (ไม่สามารถหาได้ใน DO)


7

ฉันคิดว่าคุณสามารถใช้หน้า - 403.tpl.php และหน้า - 404.tpl.php และรหัสใน template.php ผ่าน

function THEMENAME_preprocess_page(&$variables) {    
  $status = drupal_get_http_header("status");  
  if($status == '403 Forbidden') {
    $variables['theme_hook_suggestions'][] = 'page__403';
  }
  if($status == '404 Not Found') {
    $variables['theme_hook_suggestions'][] = 'page__404';
  }
}

ผ่านการทดสอบ มันได้ผล. แต่โปรดจำไว้ว่า hook นี้จะทำงานหลังจากล้างแคชเท่านั้น
Ignacio Segura Postigo

2

ฉันใช้โมดูลข้อผิดพลาดที่กำหนดเองสำหรับสิ่งนี้

หากต้องการเปลี่ยนเส้นทางไปยังหน้าที่ร้องขอมาหลังจากที่ 403 ทำงานฉันได้สร้างโปรแกรมแก้ไขนี้

นี่คือตัวอย่างการใช้งานโมดูลของฉัน:

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.