ฉันจะรับ URL ดิบเป็นฟิลด์ใน Views ได้อย่างไร


13

ในมุมมองฉันต้องส่งคืน url ดิบที่มีให้เป็นค่า href ไปยังฟิลด์ชื่อ (เมื่อเป็นลิงค์) หรือค่า Content: ลิงค์ ฉันคิดว่าเดิมฉันสามารถเลือกเนื้อหา: ลิงค์และตัด HTML ในการเขียนใหม่ แต่ไม่ต้องไป

ฉันต้องการ URL แบบเต็มเพื่อที่ฉันจะได้ผ่านเป็นพารามิเตอร์ในการเขียนฟิลด์ใหม่ คิดว่าจะทำอย่างนี้ได้อย่างไร?


2
เนื้อหาที่ใช้ url to node สามารถเข้าถึงได้เสมอเป็น node / NID ดังนั้นคุณควรจะสามารถมี Node: Nid เป็นฟิลด์และใช้ในการเขียนซ้ำในภายหลังเป็น node / [nid] หรือบางอย่างที่คล้ายกัน
Jimajamma

คำตอบ:


-3

มีหลายวิธีที่คุณสามารถทำได้ แต่สิ่งต่อไปนี้ค่อนข้างง่าย

ในมุมมองของคุณเพิ่ม NID เป็นเขตข้อมูล

สร้างเทมเพลต 'ลักษณะแบบแถว' ที่วนรอบวัตถุ $ ฟิลด์

ในไฟล์เทมเพลตของคุณก่อนที่ลูปจะกำหนดตัวแปรด้วยค่า NID จากฟิลด์

$nid = strip_tags($fields['nid']->content);

จากนั้นใช้ฟังก์ชัน node_load () เพื่อโหลดวัตถุโหนด

$node = node_load($nid);

คุณควรจะสามารถเข้าถึงสิ่งที่คุณต้องการรวมถึงเส้นทางจากวัตถุโหนดนี้

หากต้องการดูว่ามีอะไรอยู่ในนั้นให้ใช้ Devel หากคุณติดตั้งสิ่งนี้ไว้หรือใช้ฟังก์ชัน PHP var_dump ()

ตรวจสอบให้ดียิ่งขึ้นว่าคุณมีช่อง 'เส้นทาง' ที่คุณสามารถเพิ่มได้หรือไม่


โปรดอย่าทำเช่นนี้ ไม่มีเหตุผลสำหรับ node_load แบบเต็ม มันจะชะลอความคิดเห็นของคุณอย่างมาก
aaronbauman

30

ตามความคิดเห็นที่นี่http://drupal.org/node/458316#comment-6236984

ในมุมมอง 3.x คุณสามารถใช้ฟิลด์ "เส้นทาง" พร้อมตัวเลือก "ใช้ลิงค์สัมบูรณ์ (เริ่มต้นด้วย" http: // ")" ในส่วนผลการเขียนซ้ำ


ปัญหาที่ฉันพบกับโซลูชันนี้คือคุณได้รับ URL ที่ดูเหมือนexample.com
General Redneck

วิธีนี้ใช้ได้ผลดีกับฉัน
Lee Woodman

15

ใช่เราสามารถใช้pathสนาม นอกจากนี้ยังรองรับเนื้อหาหลายภาษา โปรดหาภาพหน้าจอที่แนบมาเพื่อดูว่ามันเป็นอย่างไร

ป้อนคำอธิบายรูปภาพที่นี่


2

การเพิ่มความคิดเห็น rakesh.flake เรามีตัวเลือกในการเพิ่ม URL แบบสัมบูรณ์เช่นกันในการตั้งค่าป้อนคำอธิบายรูปภาพที่นี่

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