กำลังสงสัยเกี่ยวกับ Content types ของ Drupal ครับ
ซึ่งเท่าที่ทราบก็มีหลายอย่างมาก page, poll, story, forum text, และ blog entry
อ่านภาษาอังกฤษก็แล้ว แต่ไม่แน่ใจว่าอ่านได้แตกไหม...
แต่พอสรุปเอาเองได้ว่า
1. มี page มี story ไว้สองอันจะได้ไว้แยกกำหนดสิทธิว่า story ให้เฉพาะสมาชิกหรือคนดูมาโพสอะไรๆได้
แต่ page ก็อาจเก็บไว้โพสอะไรพวก ประกาศจากแอดมิน อะไรทำนองนั้น (Difference between page and story)
2. (คอมเมนจากที่เดียวกับอันบนบอกว่า) page จะไม่ใส่ข้อมูลคนโพสต์+เวลา+คอมเมนต์ โดยปริยาย.. แต่ story จะใส่โดยปริยาย
ซึ่งจริงๆ ขึ้นกับการตั้งค่าที่ Site Building > Themes > Configure > Global Settings นั้นเอง
3. page เป็นอะไรที่ static เช่นหน้า about
ซึ่งคิดว่า Resources ของ codenone ก็น่าจะเป็น page(Page: post static pages)
4. แต่ละ Content type สามารถตั้งค่าให้มันแยกกันใช้ theming, categorization, descriptions และอื่นๆ ต่างกันได้
5. ดังนั้นเราก็สามารถสร้าง Content type ขึ้นมาใช้เองให้เหมาะสมกับงานของเราได้?
ซึ่งเท่าที่ค้นได้ คงต้องไปอ่านวิธีต่อใน (How to create your own simple node type (from story node) ซึ่งย๊าวยาว T^T
สรุปที่โพสนี้ก็เพื่อถามว่า
1. ผมเข้าใจถูกแล้วใช้ไหมครับ ถ้าถูกก็ได้เป็นการช่วยคนอื่นๆ ที่ยังแอบงงเหมือนผมไปด้วย
2. จากข้อ 5 ถ้าผมไม่ได้ต้องการสร้าง Content type ให้ใหม่ไปจากเดิมมาก
แค่ต้องการใช้แยกเพื่อความแตกต่าง(ตามข้อ 4) ผมก็อาจสร้างใหม่อย่างง่ายจาก
Administer > Content management > Add content type ไปเลยใช่ไหมครับ
^ ^a แหะๆ
กระทู้เก่าๆ จะย้ายตามไปในภายหลัง ตอนนี้ปิดการโพสต์กระทู้ไว้ เหลือไว้เฉพาะอ้างอิงเท่านั้น
CCK ตัวที่มากับ 5.x มันมาไม่ครบนะครับ คือสร้าง content type ใหม่ได้ แต่ถ้าจะเพิ่มฟิลด์ด้วย ต้องลง CCK.module ตัวเต็ม ตอนแรกผมถือดีไม่อ่านคู่มือ นั่งงงอยู่ตั้งนาน
เรื่องเพิ่มฟิลด์ - ด้วยความอ่อนทั้งทางภาษาอังกฤษ และภาษาโปรแกรม ก็เลยยังแอบงงอยู่ว่า เพิ่มไปทำไม ทำไรได้ -งงแม้แต่จะตั้งคำถามว่า งง อะไร :P
รบกวนเวลา ช่วยยกตัวอย่างประกอบได้ไหมครับ - เพื่อเป็นกุญแจไขปัญญาต่อไปนะครับ
สมมติว่าผมอยากทำรีวิวโปรแกรม โดยอยากให้มีช่องสำหรับ URL ของเว็บไซต์ผู้พัฒนาด้วย (บังคับใส่ ไม่ปะปนไปกับตัว body) ผมก็สามารถใช้ CCK สร้าง content-type ใหม่ขึ้นมา โดยอาจจะอิงจาก story แล้วกำหนดให้มีฟิลด์ชื่อ URL เพิ่มอีก 1 ช่อง โดยมีชนิดเป็น text field อะไรทำนองนี้ครับ
อธิบายง่ายๆ ว่าเป็นการทำเว็บแบบไม่เขียนโปรแกรมซักบรรทัด เว็บแบบเอาไปใช้ได้จริงๆ นะครับ อย่างเช่นตัวอย่างเดียวกับ mk
ถ้าเราทำเว็บด้วยตัวเอง ต้องการทำรีวิวโปรแกรม ก็ต้อง
หรืออีกวิธีก็คือทำทุกอย่างด้วย title และ body ซึ่งก็ใช้งานได้ แต่ไม่สามารถปรับแต่งหน้าตาในภายหลังได้ เช่นพวก url screenshot และอื่นๆ ที่ค่าพวกนี้มีความหมาย เป็น metadata แท้ จะเอามาปู้ยี้ปู้ยำใส่ใน body ก็กระไรอยู่
ส่วนใน Drupal เราจะทำแบบนี้แทน
ไม่ต้องเขียนโปรแกรมซักบรรทัด แถมด้วยว่าข้อมูลเหล่านี้ค้นหาได้ด้วย search มาตรฐาน และมี comment กับ permission แยกเป็นส่วนตัวด้วย
โอ้ว!! ขอบคุณมากครับ เห็นภาพ เข้าใจทันทีเลยครับ
แต่ยังแอบสงสัยว่า
1. ฟิลด์ที่เพิ่มมาจะอยู่ส่วนไหนหน้าก็ไปออกแรงเอากับ theme อีกทีถูกไหมครับ
แล้ว
2. การแก้ Theme นี้ก็ต้องลง module เพิ่ม ซึ่งเข้าใจว่า drupla5 เนี้ยต้องลง phptal ถูกไหมครับ