วิธีจัดรูปแบบมุมมองอย่างรวดเร็ว?


85

ฉันได้กำหนดมุมมองด้วยโมดูล CCK และ View 2 ฉันต้องการกำหนดเทมเพลตเฉพาะสำหรับมุมมองนี้อย่างรวดเร็ว มีบทแนะนำหรือข้อมูลเกี่ยวกับเรื่องนี้หรือไม่? ฉันต้องแก้ไขไฟล์อะไรบ้าง?


นี่คือสิ่งที่ฉันค้นพบ: (แก้ไขแล้ว)

ในความเป็นจริงมีสองวิธีในการจัดรูปแบบมุมมอง: วิธี " ฟิลด์ " และวิธี " โหนด " ใน "แก้ไขมุมมอง" คุณสามารถเลือก " Row style: Node" หรือ " Row style: Fields" ได้

  • ด้วยวิธี " Node " คุณสามารถสร้างnode-contentname.tpl.phpซึ่งจะถูกเรียกสำหรับแต่ละโหนดในมุมมอง คุณจะสามารถเข้าถึงค่าฟิลด์ cck ของคุณด้วย $ field_name [0] ['value'] (แก้ไข 2) คุณสามารถใช้node-view-viewname.tpl.phpซึ่งจะเรียกเฉพาะสำหรับแต่ละโหนดที่แสดงจากมุมมองนี้
  • ด้วยวิธี " ฟิลด์ " คุณจะเพิ่ม views-view-field - viewname - field-name-value.tpl.php สำหรับแต่ละฟิลด์ที่คุณต้องการกำหนดธีมทีละรายการ

ขอบคุณคำตอบก่อนหน้านี้ฉันได้ใช้เครื่องมือต่อไปนี้:

  • ในบล็อก "การตั้งค่าพื้นฐาน" "ธีม: ข้อมูล" เพื่อดูเทมเพลตต่างๆทั้งหมดที่คุณสามารถแก้ไขได้
  • Devel โมดูลของ 'นักพัฒนาธีม' ได้อย่างรวดเร็วพบชื่อตัวแปรสนาม
  • ดู 2 เอกสารโดยเฉพาะอย่างยิ่ง"การใช้รูปแบบ"หน้า

1
เป็น views-view-fields - viewname - field-name-value.tpl.php ไม่ใช่ views-view-field - viewname - field-name-value.tpl.php คุณไม่มี "s" บน สนามแรก
Alex Borsody

คุณเพิ่มสิ่งนี้ในโฟลเดอร์ใด
Talon

หากคุณทำการค้นหาในหน้าเอกสารประกอบการดูคุณจะพบข้อมูลทั้งหมดนี้!
Bhavin Joshi

คำตอบ:


52

ในความเป็นจริงมีสองวิธีในการจัดรูปแบบมุมมอง: วิธี " ฟิลด์ " และวิธี " โหนด " ใน "แก้ไขมุมมอง" คุณสามารถเลือก " Row style: Node" หรือ " Row style: Fields" ได้

  • ด้วย " โหนด " คุณสามารถสร้าง node-contentname.tpl.php ซึ่งจะถูกเรียกสำหรับแต่ละโหนดในมุมมอง คุณจะสามารถเข้าถึงค่าฟิลด์ cck ของคุณด้วย $ field_name [0] ['value']
  • ด้วยวิธี " ฟิลด์ " คุณจะเพิ่ม views-view-field - viewname - field-name-value.tpl.php สำหรับแต่ละฟิลด์ที่คุณต้องการกำหนดธีมทีละรายการ

ขอบคุณคำตอบก่อนหน้านี้ฉันได้ใช้เครื่องมือต่อไปนี้:

  • ในบล็อก "การตั้งค่าพื้นฐาน" "ธีม: ข้อมูล" เพื่อดูเทมเพลตต่างๆทั้งหมดที่คุณสามารถแก้ไขได้
  • Devel โมดูลของ 'นักพัฒนาธีม' ได้อย่างรวดเร็วพบชื่อตัวแปรสนาม
  • ดู 2 เอกสารโดยเฉพาะอย่างยิ่ง"การใช้รูปแบบ"หน้า

โปรดทราบว่าในวิธีแรกวิธี "โหนด" เทมเพลตที่คุณสร้างอาจ (ขึ้นอยู่กับการตั้งค่าธีม) ที่ใช้สำหรับโหนดของมัน (แสดงแม้จะอยู่นอกโหนด)
Strae

โปรดทราบว่าลิงก์ในคำตอบนี้ตอนนี้คือ 404
Dewayne

22

วิธีที่รวดเร็วในการค้นหาไฟล์เทมเพลตที่คุณสามารถสร้างและแก้ไขสำหรับมุมมองใน Views 2.0 คือ:

  1. แก้ไขมุมมอง
  2. เลือกสไตล์ (เช่นหน้าบล็อกค่าเริ่มต้น)
  3. ในบล็อก 'การตั้งค่าพื้นฐาน' คลิกที่ 'ธีม: ข้อมูล' เพื่อดูเทมเพลตต่างๆทั้งหมดที่คุณสามารถแก้ไขได้

16

Devel โมดูล 's คุณสมบัติ 'ธีมพัฒนา' เป็นประโยชน์สำหรับการมองเห็นสิ่งที่แม่แบบไฟล์ Drupal ที่กำลังมองหาเมื่อมันจะไปเพื่อสิ่งที่ธีม ดูภาพหน้าจอในหน้านั้นสำหรับตัวอย่าง


10

นอกจากนี้คุณยังควรตรวจสอบความหมายของผู้ชม สำหรับผู้ชมชุดรูปแบบง่ายๆก็คือมันมีประโยชน์


7

เคล็ดลับประการหนึ่ง:

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

แทนที่จะใช้อินเทอร์เฟซมุมมองเพื่อเลือกเทมเพลตใหม่สำหรับมุมมองบางครั้งฉันก็แค่แทรกโค้ดบางส่วนที่แตกแขนงลงในไฟล์มุมมองเดียว เช่นสำหรับหนึ่งไซต์ในviews-view-fields.tpl.phpฉันมี:

if($view->name == 'articleList' || $view->name == 'frontList' 
|| $view->name == 'archiveList') {
/* field formatting code */
} else {
/* the default code running here */
}

จากนั้นแก้ไขฟิลด์ในแบบที่ฉันต้องการสำหรับกลุ่ม Views = articleList, frontList และ archiveList เท่านั้น - และสำหรับมุมมองอื่น ๆ ที่ใช้เทมเพลตนี้จะรันโค้ดที่ปกติจะพบในเทมเพลตนี้ หากลูกค้าถามว่า "เฮ้คุณช่วยทำให้หน้าเหล่านั้นแสดงที่เก็บถาวรและรายการนั้นในหน้าแรกให้ดูเหมือน (... ) มากขึ้นได้ไหมมันเป็นเพียงเรื่องของการเปิดและแก้ไขไฟล์เดียวแทนที่จะเป็นสามไฟล์ ไฟล์ที่แตกต่างกัน การบำรุงรักษาทำได้รวดเร็วและเป็นมิตรมากขึ้น



4

ตัวเลือกทางลัดของฉัน

  1. ไปที่ไฟล์theme.incในYOUR_MODULE_DIR/ views / theme / folder

  2. ใน_views_theme_functionsฟังก์ชันให้พิมพ์ตัวแปร$ themesหรือวางเบรกพอยต์ที่บรรทัดสุดท้ายของฟังก์ชันเพื่อดูเนื้อหาของตัวแปร

เพียงแค่แปลงviews_viewเป็นviews-viewและ __ to - แล้วเพิ่มนามสกุล template ของคุณเพื่อรับชื่อไฟล์ที่ต้องการ

ตัวอย่างเช่นถ้าองค์ประกอบของที่$ รูปแบบอาร์เรย์views_view__test_view__block (ซึ่งtest_viewเป็นชื่อของมุมมองของคุณ) จากนั้นชื่อของแฟ้มแม่แบบจะเป็นมุมมองมุมมอง - test_view - block.tpl.php


2

ในความคิดของฉันวิธีที่ง่ายที่สุดในการตัดสินใจว่าจะใช้ไฟล์เทมเพลตใดสำหรับการกำหนดธีมมุมมองคือ 1) คลิกที่ admin / build / views / edit / ViewName -> Basic Settings -> Theme

การคลิกสิ่งนี้จะแสดงไฟล์เทมเพลตที่เป็นไปได้ทั้งหมด ไฟล์ที่ไฮไลต์ (ชื่อไฟล์ในตัวหนา) ระบุไฟล์เทมเพลตที่ใช้ทำธีมส่วนใดของมุมมอง หลังจากรวมการเปลี่ยนแปลงที่จำเป็นในไฟล์เทมเพลตมุมมองที่เกี่ยวข้อง RESCAN แล้วตอนนี้คุณควรจะเห็นไฟล์เทมเพลตที่เปลี่ยนแปลงที่ไฮไลต์



0

ตามฉันมีสองวิธีที่จะทำ:

วิธีแบบเป็นโปรแกรม:

  1. ไปที่มุมมองแก้ไข
  2. เลือกสไตล์หน้า / บล็อก
  3. ไปที่ 'การตั้งค่าพื้นฐาน' และคลิกที่ 'ธีม: ข้อมูล' เพื่อดูเทมเพลตต่างๆทั้งหมดที่คุณสามารถแก้ไขได้
  4. เพิ่ม html ที่คุณต้องการกำหนดธีมและพิมพ์ตัวแปรของมุมมองทุกที่ที่ต้องการ

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

  • สิ่งที่ส่งออกได้
  • เพิ่มฟิลด์ที่คุณกำหนดเองในแบ็กเอนด์หรือในโค้ดของคุณ
  • เพิ่มเค้าโครงที่กำหนดเองในธีมของคุณ (D7 เท่านั้น)
  • เปลี่ยนป้ายกำกับเพิ่มสไตล์หรือลบล้างการตั้งค่าฟิลด์ (ฟิลด์ความหมาย)
  • บูรณาการกับมุมมองและแผง
  • ขยายพลังของเลย์เอาต์ของคุณด้วยการติดตั้ง Field Group
  • ประสิทธิภาพสูงสุดด้วยการรวม Object cache (D6) หรือ Entity cache (D7)
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.