ฉันได้รับข้อผิดพลาดเกี่ยวกับ $ node เป็นระยะ ๆ โดยที่ไม่ได้กำหนดไว้ในไฟล์เทมเพลตของฉันฉันมีเงื่อนไขง่ายๆที่ตรวจสอบว่ามีการแสดงประเภทโหนดหรือไม่ ฉันคิดว่า $ node ใช้ได้เสมอหรือฉันผิด
ฉันได้รับข้อผิดพลาดเกี่ยวกับ $ node เป็นระยะ ๆ โดยที่ไม่ได้กำหนดไว้ในไฟล์เทมเพลตของฉันฉันมีเงื่อนไขง่ายๆที่ตรวจสอบว่ามีการแสดงประเภทโหนดหรือไม่ ฉันคิดว่า $ node ใช้ได้เสมอหรือฉันผิด
คำตอบ:
$ node ไม่จำเป็นต้องกำหนดจากpage.tpl.php Drupal 7 API :
$ node: วัตถุโหนดหากมีโหนดที่โหลดโดยอัตโนมัติที่เกี่ยวข้องกับหน้าและ ID โหนดเป็นอาร์กิวเมนต์ที่สองในเส้นทางของหน้า (เช่นโหนด / 12345 และโหนด / 12345 / แก้ไข แต่ไม่แสดงความคิดเห็น / ตอบ / / 12345)
โดยค่าเริ่มต้นเฉพาะในโหนดหน้าเท่านั้นที่กำหนดตัวแปร $ node สำหรับหน้าแรก (ฟีด) ให้ดูหน้าความคิดเห็นและอื่น ๆ พวกเขาไม่ได้
หากคุณต้องการกำหนดตัวแปร $ node บนหน้าเว็บที่ไม่ใช่โหนดคุณจะต้องแก้ไข / สร้างฟังก์ชัน MYTHEME_preprocess_page (& $ ตัวแปร) ในไฟล์เทมเพลตธีมของคุณ
เพื่อหลีกเลี่ยงข้อผิดพลาดในไฟล์เทมเพลตของคุณจะห่อตัวแปร $ node ไว้ใน
if (isset($node)) {
// do something with $node
}
หรือลบออกอย่างสมบูรณ์