วิกิพีเดีย:การทดแทน

จากวิกิพีเดีย สารานุกรมเสรี
ข้ามไปที่การนำทาง ข้ามไปที่การค้นหา

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

หากต้องการทดแทน ให้เติมsubst:หลังเครื่องหมายปีกกาเปิด ดังเช่นใน{{subst:page name}}. ตัวอย่างเช่น: การแทนที่ {{subst:Medicine}}ในทางตรงกันข้ามกับการtransclusion {{Medicine}}เนื้อหาของTemplate:Medicineจะถูกขยาย (สำหรับเทมเพลตใดๆ) และเก็บไว้ที่แต่ละจุดที่ "{{subst:Medicine}}" ถูกวางไว้ในหน้า โปรดทราบว่าแท็กอ้างอิงปฏิเสธที่จะเรียกใช้ "subst:" เว้นแต่จะเปลี่ยนชื่อชั่วคราวเป็น " <xref name=xx>" หรือคล้ายกัน

หน้านี้ยังแสดงรายการเทมเพลตที่ควรแทนที่เสมอหรือไม่ควรแทนที่ ยกเว้นในเนมสเปซ Wikipedia เครื่องมืออัตโนมัติ (aka bots ) ที่ทำการแทนที่ดังกล่าวจะไม่ถูกนำมาใช้กับเทมเพลตดั้งเดิม หากคุณกำลังจะใช้บอทเพื่อทดแทนเทมเพลต โปรดอ่านในหน้าพูดคุยก่อน เนื่องจากมีจำนวนมากที่อยู่ระหว่างการโต้แย้งหรือเปลี่ยนสถานะเมื่อเวลาผ่านไป และการทดแทนจะมีผลถาวร

เกี่ยวกับสารย่อย:

คำนิยาม

คีย์เวิร์ด (ย่อมา จากsubst:"substitution") ถูกใช้ในโค้ดเทมเพลตโดยวางไว้ข้างหน้าชื่อเทมเพลตแต่อยู่ในวงเล็บปีกกา ( {{}}) มันเปลี่ยนวิธีที่ซอฟต์แวร์ขยายเทมเพลต

โดยปกติ เทมเพลตจะขยาย "ทันที" กล่าวคือ โค้ดเทมเพลตบนหน้าเว็บจะเรียกหน้าแยกต่างหากทุกครั้งที่แสดงผล แม้ว่าการดูเพจส่วนใหญ่จะให้บริการจากแคช เพจจำเป็นต้องแสดงผลเพื่อดูตัวอย่างและแสดงผลอีกครั้งเมื่อเพจมีการเปลี่ยนแปลง เมื่อมีคนแก้ไขเพจที่มีการเรียกเทมเพลตปกติ พวกเขาจะเห็นการเรียกเทมเพลต

การวาง "subst:" ไว้ในวงเล็บปีกกาจะบอกซอฟต์แวร์ให้ แทนที่เทมเพลตด้วยข้อความของเทมเพลต อย่างถาวร (กล่าวคือ ข้อความที่อยู่ในหน้าบทความของเทมเพลตเมื่อมีการเพิ่มเทมเพลตลงในเพจ ) ดังนั้น {{template}} จะกลายเป็น {{subst:template}} จนกว่าคุณจะบันทึกหน้า ตัวแก้ไขถัดไปจะไม่เห็นการเรียกเทมเพลต แต่จะมองเห็นข้อความของเทมเพลตเมื่อคุณบันทึก จะไม่เปลี่ยนแปลงแม้ว่าจะแก้ไขแม่แบบเดิมแล้วก็ตาม

การใช้งาน

คุณสามารถแทนที่แท็กเทมเพลตโดยเพิ่ม "subst:" ลงไป ตัวอย่างเช่น ใช้ {{subst:test5}} แทน {{test5}}

เมื่อนี่เป็นองค์ประกอบหลักของการแก้ไข ขอแนะนำอย่างยิ่งให้กล่าวถึงเทมเพลตในสรุปการแก้ไข (เช่น ใส่ "{{subst:test}}", "subst:test" หรือ "test1 used" ใน แก้ไขข้อมูลสรุป) เพื่อให้ผู้แก้ไขคนอื่นๆ สามารถเห็นสิ่งที่คุณทำได้อย่างง่ายดาย

นอกจากนี้ เมื่อสร้างหรือแก้ไขเทมเพลตที่ใช้แทนกันโดยทั่วไป การเพิ่มความคิดเห็นที่ซ่อนอยู่ในหน้าเทมเพลตจะช่วยให้ผู้แก้ไขบทความเห็นว่ามีการใช้เทมเพลตอย่างไร (เช่น) <!-- Substituted from Template:Documentation -->

ประโยชน์

  • หากมีเทมเพลตที่คุณต้องการแก้ไขในโอกาสเดียว แต่คุณไม่ต้องการแก้ไขเทมเพลตสำหรับหน้าทั้งหมดที่ใช้เทมเพลตนั้น และคุณไม่ต้องการสร้างเทมเพลตใหม่ คุณสามารถแทนที่เทมเพลตนั้นแล้ว ด้วยการแก้ไขครั้งที่สอง ทำการแก้ไข ตัวอย่างเช่น เทมเพลตอาจใช้กับทุกรัฐในสหรัฐอเมริกาและกับ District of Columbia เทมเพลตอาจมีการใช้คำอย่างถูกต้องสำหรับรัฐ แต่ไม่ใช่สำหรับ DC ในการแก้ไขถ้อยคำ คุณสามารถแทนที่เทมเพลตแล้วแก้ไขถ้อยคำ
  • การเปลี่ยนเทมเพลตที่ใช้บ่อย แต่ไม่มีการป้องกัน จะจำกัดความเสียหายที่อาจเกิดจากการที่ผู้อื่นทำลายเทมเพลต ดูเทมเพลตที่มีความเสี่ยงสูง
  • การข้ามเทมเพลตบางเทมเพลตจะซ่อนข้อความวิกิจากผู้ใช้ใหม่ ในขณะที่การแทนที่จะทำให้ข้อความวิกิมองเห็นได้และเปิดโอกาสให้พวกเขาเรียนรู้การใช้งาน (แน่นอนว่ามีลิงก์ "วิธีแก้ไข" ที่ด้านล่างของหน้าแก้ไขแต่ละหน้า)
  • การทดแทนช่วยให้การประเมินแบบเรียกซ้ำผ่านเทมเพลตแมโคร

เป็นกลาง

  • การ แทนที่ จำนวน มาก อาจทำให้ไซต์เร็วขึ้น แต่นี่ไม่ใช่เหตุผลที่จะชอบการแทนที่มากกว่าการหลุดพ้น ไม่ต้องกังวลกับประสิทธิภาพของเซิร์ฟเวอร์ของ Wikipedia
  • เทมเพลตมักจะถูกแก้ไขหรือลบ หากเทมเพลตเป็นข้อความสำเร็จรูปให้พิจารณาว่าคุณต้องการเปลี่ยนแปลงเมื่อมีการแก้ไขเทมเพลตหรือไม่ หากคำตอบของคุณคือ "ไม่" แสดงว่ามีการทดแทน ตัวอย่างนี้คือเทมเพลต {{ subst:welcome }} ที่เก็บถาวรของหน้าพูดคุยของผู้ใช้ควรแสดงข้อความต้อนรับจริงที่พวกเขาได้รับ ไม่ใช่ข้อความต้อนรับปัจจุบัน

ข้อเสีย

  • เมื่อแทนที่เทมเพลตแล้ว ผลลัพธ์จะไม่เชื่อมโยงกับเทมเพลตอีกต่อไป ทำให้ยากต่อการค้นหาทุกหน้าที่แสดงข้อความนั้น (แม้ว่าบางครั้งหมวดหมู่อาจช่วยลดปัญหานี้ได้) ปัญหานี้สามารถแก้ไขได้โดยง่ายโดยใส่ลิงก์ไปยังเทมเพลตในโค้ดของเทมเพลต
  • เทมเพลตทดแทนจะไม่ได้รับการอัปเดตเมื่อข้อผิดพลาดในเทมเพลตหลักได้รับการแก้ไข
  • หากเทมเพลตถูกใช้เพื่อสร้างมาตรฐานให้กับบางสิ่ง คุณอาจไม่ต้องการแทนที่ ตัวอย่างนี้คือสารบัญหรือกล่องนำทาง
  • การ แทนที่ จำนวน มาก —การแก้ไขบทความหลายพันบทความด้วยบอท—ทำให้ไซต์ช้าลงชั่วคราวและทำให้ทรัพยากรเซิร์ฟเวอร์สิ้นเปลืองโดยไม่จำเป็น
  • การแทนที่จะเพิ่มขนาดของบทความในฐานข้อมูลและการทิ้งฐานข้อมูล
  • เทมเพลตทดแทนสามารถเพิ่ม wiki-code หรือ HTML ให้กับบทความได้มาก ซึ่งส่งผลเสียต่อการเข้าถึงสำหรับผู้ที่มีแนวโน้มทางเทคนิคน้อยกว่า
  • การแทนที่เทมเพลตจะป้องกันไม่ให้ผู้ใช้ใหม่เรียนรู้การใช้เทมเพลต และป้องกันไม่ให้ผู้ใช้ค้นหาเอกสารประกอบ
  • หากใช้เทมเพลตเพียงชั่วคราว ไม่ควรแทนที่จะดีกว่า เทมเพลตทดแทนนั้นยากกว่ามากในการลบหรือแก้ไข
  • เมื่อมีการแทนที่แม่แบบที่ถูกทำลายล้าง การซ่อมแซมจะยากกว่าการทำลายทรัพย์สินทั่วไป เนื่องจากขาดความเชื่อมโยงระหว่างแม่แบบกับรูปแบบเดิม และการขาดการปรับปรุง
  • เทมเพลตเมตาบางตัว เช่น{{!}}และ {{ (( }} จะไม่ทำงานหากมีการแทนที่

แม่แบบที่ควรแทนที่เสมอ

นี่คือรายการเทมเพลตที่ควรแทนที่เสมอ โดยจัดระเบียบตามเนมสเปแต่ละรายการจะเรียงลำดับตามตัวอักษรพร้อมชุดที่จัดกลุ่มไว้ นี่ไม่ใช่รายการที่ครอบคลุม อาจจำเป็นต้องเปลี่ยนเทมเพลตอื่นๆ ที่ใช้น้อยกว่า โปรดดูรายละเอียดในเอกสารประกอบของเทมเพลต

เนมสเปซบทความ

  • {{ No more links }} การแทนที่นี้จะเป็นการแทรกความคิดเห็นที่มองเห็นได้ในโหมดแก้ไขเท่านั้น โดยมีคำอธิบายสั้นๆ เพื่อไม่ให้ลิงก์สแปม
  • {{ sub }}, {{ sup }} ผู้สมัครสำหรับการแทนที่ เว้นแต่จะใช้หลายครั้งในหน้าเดียว ซึ่งอาจทำให้โค้ดของหน้ายาวขึ้น

พูดคุยบทความ

เนมสเปซผู้ใช้พูดคุย

เทมเพลตทั้งหมดที่ระบุไว้ในCategory:User Warning templateและCategory:Welcome templatesควรถูกแทนที่ สิ่งนี้ใช้ไม่ได้กับเทมเพลตในหน้าผู้ใช้

เนมสเปซไฟล์

อื่น ๆ. แม่แบบ

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

คำแนะนำที่ไม่มีหมวดหมู่

เทมเพลตที่ต้องเปลี่ยน

แม่แบบเหล่านี้มีวัตถุประสงค์และ/หรือไวยากรณ์ที่ต้องการแทนที่

  • {{ afd }} หรือลิงก์ไปยัง "รายการของบทความนี้" ไม่ทำงาน
  • {{ cfd }}, {{ cfr }}, {{ cfm }} ซึ่งแทรกความคิดเห็นซึ่งทำหน้าที่เป็นคิวสำหรับCydebotซึ่งใช้เพื่อเปลี่ยนชื่อหรือรวมหมวดหมู่
  • {{ copyvio }} สำหรับบทความที่จะแสดงรายการที่ปัญหาลิขสิทธิ์จะส่งผลให้เกิดข้อความแสดงข้อผิดพลาดหากคัดลอกมา
  • {{ nld }} สำหรับรูปภาพที่ไม่มีข้อมูลเกี่ยวกับสถานะลิขสิทธิ์ ให้เพิ่ม {{ no license }} พร้อมวันที่ของวันนี้โดยอัตโนมัติ
  • {{ nrd }} สำหรับรูปภาพที่ไม่มี เหตุผลใน การใช้งานที่เหมาะสมให้เติม {{ no rationale }} พร้อมวันที่ของวันนี้โดยอัตโนมัติ
  • {{ nsd }} สำหรับรูปภาพที่ไม่มีข้อมูลแหล่งที่มา ให้เพิ่ม {{ di-no source }} โดยเติมวันที่ของวันนี้โดยอัตโนมัติ
  • {{ orfud }} สำหรับรูปภาพการใช้งานที่เหมาะสม "ทั่วไป" ที่ถูกกำพร้า ให้เพิ่ม {{ di-orphaned fair use }} พร้อมวันที่ของวันนี้โดยอัตโนมัติ
  • {{ or-fu-re }} สำหรับรูปภาพการใช้งานที่เหมาะสมที่ถูกละเลยและให้ภาพอื่นแทน ให้เพิ่ม {{ di-orphaned fair use }} โดยเติมวันที่ของวันนี้โดยอัตโนมัติ (ใช้ชื่อของรูปภาพที่แทนที่เป็นพารามิเตอร์ ).
  • {{ การลบที่เสนอ }} สำหรับการลบที่เสนอ ให้เพิ่ม {{ การลบที่เสนอ/วันที่ }} โดยเติมวันที่ของวันนี้โดยอัตโนมัติ
  • {{ ร้องขอการย้าย }} สำหรับการขอย้ายหน้า
  • {{ rfd }}, เปลี่ยนเส้นทางสำหรับการสนทนา
  • {{ rfu }} สำหรับรูปภาพการใช้งานโดยชอบซึ่งควรแทนที่ด้วยรูปภาพที่ได้รับอนุญาตฟรี ได้เพิ่ม {{ การใช้งานที่เหมาะสมที่แทนที่ได้ }} โดยจะเติมวันที่ของวันนี้โดยอัตโนมัติ
  • {{ refu-c }} ใช้ในคำบรรยายของรูปภาพที่ถูกตั้งค่าสถานะเป็นการใช้งานที่เหมาะสมที่เปลี่ยนได้ เพิ่ม {{ rfu-c }} ด้วย "วันที่ครบกำหนด" (วันนี้ + 7 วัน) ที่คำนวณและกรอกโดยอัตโนมัติ
  • {{ OnProd }} ซึ่งแทรกชื่อวันที่ขึ้นอยู่กับวันที่ของหน้าหมวดหมู่ที่บทความถูกเพิ่มเข้ามาเมื่อได้รับการเสนอชื่อเพื่อลบ

แม่แบบที่ไม่ ควร แทนที่

ในทางเทคนิค ไม่ควรแทนที่เทมเพลตที่:

  1. มีการเรียกParserFunctions ( #if, #switch, ฯลฯ ) เว้นแต่หากเป็นไปได้ สิ่งเหล่านี้จะถูกแทนที่ด้วย (ดูmw:Manual:Substitution#Multilevel substitution )
  2. ปล่อยให้พารามิเตอร์บางตัวเป็นค่าเริ่มต้นโดยไม่ได้ระบุ เว้นแต่จะใช้กลไกเริ่มต้นอื่นแทน
  3. มีลิงก์ภายนอกเนื่องจากการจัดรูปแบบของ URL เพื่อดำเนินการค้นหาหรือค้นหาอาจเปลี่ยนแปลง

เนื่องจากโครงสร้างเหล่านี้ไม่ได้ถูกแทนที่ใน wiki-code ที่สร้างขึ้น (การแทนที่ระดับเดียวของ case (A) ออกจาก#ifor #switchสร้างคำต่อคำที่ตำแหน่งย่อยและ (B) ออกจากโครงสร้างเช่น{{{1|default value}}})
หากฉันทามติ ที่เฉพาะเจาะจง คือการกำจัดการเรียกเฉพาะของเทมเพลตดังกล่าว สามารถใช้ Special:ExpandTemplatesเพื่อขยายการเรียกนั้นไปยัง wiki-syntax ธรรมดา

รายการ

นี่คือรายการเทมเพลตที่ไม่ควรแทนที่ เนื่องจากมีการจัดรูปแบบโค้ดมาตรฐาน มีโค้ดที่ซับซ้อน หรือมีโค้ดที่เสียหายหากมีการแทนที่

  • {{ ต้องการการอ้างอิง }} มีรหัสที่ซับซ้อน
  • เทมเพลตการอ้างอิง/การอ้างอิงต่างๆ ที่มีโค้ดแบบมีเงื่อนไขที่ซับซ้อนมาก (ดู: WP:CITET )
  • {{ cleanup }}, {{ merge }}, {{ trivia }} และเทมเพลตการล้างข้อมูล อื่น ๆ บอทพึ่งพาพวกมัน การแทนที่ทำให้ข้อความในบทความยุ่งเหยิง และแบ่งการล้างข้อมูลตามการจัดหมวดหมู่วันที่ เดือน
  • {{ Curlie }} URL สืบค้นไดเรกทอรีเว็บภายนอก (อดีต DMOZ)
  • เทมเพลต Infobox แบบต่างๆ เพื่อประโยชน์ในการระบุบอทและความสม่ำเสมอ
  • {{ Javadoc:EE }}, {{ Javadoc:SE }}, {{ Javadoc:SE-guide }}, เทมเพลตแบบมีเงื่อนไขซึ่งมีจุดประสงค์เพื่ออัปเดตลิงก์เมื่อเทมเพลตต้นแบบถูกอัพเดต
  • {{ ISP }}, {{ Openproxy }}, {{ repeat vandal }}, {{ SharedIP }}, {{ SharedIPEDU }}, {{ s/wnote }} ไม่ใช่ข้อความถึงผู้ใช้ (ดังนั้นจึงไม่มีปัญหา หากเปลี่ยนจากรูปแบบเดิม) ดังนั้นจึงไม่มีเหตุผลที่จะยอมรับ แต่เหตุผลมาตรฐานที่จะไม่มีผลใช้บังคับ
  • {{ ln }}, {{ lnt }}, รหัสที่ซับซ้อน
  • {{ Main }} รักษามาตรฐานการจัดรูปแบบ
  • {{ สวิตช์ }} รวมถึงเทมเพลตแบบมีเงื่อนไข ทดแทนการแบ่งการใช้งาน
  • {{ ดูเพิ่มเติม }} การจัดรูปแบบมาตรฐานเพื่อดูรายการด้วย
  • {{ selfref }} ไม่ทำงานเมื่อ substed เนื่องจากมีโค้ดที่แตกต่างกันในมิเรอร์
  • {{ Signpost-subscription }} ต้องอัปเดตทุกสัปดาห์
  • เทมเพลต {{ stub }} แบบต่างๆ สำหรับการใช้งานและการลบที่ง่ายขึ้น
  • {{ talkarchive }}, {{ ไฟล์เก็บถาวร }}
  • {{ tl }}, {{ tlp }}, {{ ttl }}, {{ ti }}, {{ tic }}, {{ tls }}, {{ cl }}, {{ ccl }}, มากมายใช้กันอย่างแพร่หลาย {{ tl }} โดยมีการนับครั้งหลังสุด 4,300,000 ครั้ง พิมพ์ได้เร็วกว่าการแทนที่ และการไม่แทนที่ช่วยให้ชาววิกิพีเดียใหม่ได้เรียนรู้เกี่ยวกับพวกเขาและสามารถใช้งานได้
  • {{ sockpuppet }} และเทมเพลตที่คล้ายกันนี้มีวัตถุประสงค์เพื่อวางบนหน้าระดับบนสุดในพื้นที่ผู้ใช้ (หมายเหตุ: ควรเปลี่ยนคำเตือนและประกาศในพื้นที่พูดคุยกับผู้ใช้)

โปรดทราบด้วยว่าบางสิ่งอาจดูเหมือนเป็นเทมเพลต แต่จริงๆ แล้วเป็นคำวิเศษเช่น{{!}}และ {{ noexternallanglinks }} การแทนที่จะไม่แสดงผลอะไรเลย หรือจะแทนที่เทมเพลตที่ปิดบัง ไว้ (เช่น Template:! ) ที่เลิกใช้แล้ว

เทมเพลตชื่อผิด

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

เกี่ยวกับการลบ

เทมเพลตส่วนใหญ่ที่เกี่ยวข้องกับการเปลี่ยนชื่อหรือการลบเพจถูกใช้ชั่วคราว ดังนั้นจึงไม่จำเป็นต้องแทนที่

ข้อยกเว้น

ต้อง เปลี่ยน เทมเพลตต่อไปนี้เพื่อให้ทำงานได้อย่างถูกต้อง:

นอกจากนี้ ควรใช้เทมเพลตที่บันทึกขั้นตอนการลบที่เสร็จสิ้น ({{ afd top }} เป็นต้น)

อยู่ระหว่างการอภิปราย

ดูสิ่งนี้ด้วย