5 เคล็ดลับสำหรับนักพัฒนา WordPress สำหรับการใช้คำนำหน้าและเนมสเปซ
เผยแพร่แล้ว: 2021-10-25ขณะเขียนโค้ดในบางโปรเจ็กต์ คุณอาจพบปัญหาบางอย่างเนื่องจากโค้ดของคุณทำงานไม่ถูกต้อง และอาจเป็นเพราะฟังก์ชันหลายอย่างมีชื่อคล้ายกัน
และปัญหาประเภทนี้เรียกว่า 'การชนกันของชื่อ' เนมสเปซและคำนำหน้าเป็นคำตอบหลักสำหรับปัญหาส่วนใหญ่ที่ผู้คนจำนวนมากต้องเผชิญ
เนมสเปซและคำนำหน้ามีความสำคัญมาก ซึ่งจะช่วยให้คุณหยุดความขัดแย้งเมื่อหลายฟังก์ชันหรือคลาสมีชื่อคล้ายกัน
พิจารณาว่ามีผู้ร่วมสนับสนุน WordPress จำนวนเท่าใดที่สร้างธีมและปลั๊กอินที่หลากหลายและมีส่วนร่วมในแกนหลักของ WordPress
ผู้ร่วมให้ข้อมูลส่วนใหญ่อาจประสบปัญหาเดียวกัน ดังนั้นสิ่งสำคัญคือต้องหาวิธีแก้ไขเพื่อช่วยพวกเขา
ในบล็อกนี้ เราจะเรียนรู้เกี่ยวกับคำนำหน้าและเนมสเปซ รวมทั้งเราจะเห็นความสำคัญของทั้งสองอย่าง นอกจากนี้ เราจะพูดถึง คำแนะนำสำหรับนักพัฒนา WordPress เพื่อช่วยคุณในการแก้ปัญหาประเภทดังกล่าว เรามาเริ่มกันเลย!
คำนำหน้าและเนมสเปซคืออะไร
หนึ่งในคุณสมบัติที่สำคัญของ PHP คือเนมสเปซซึ่งสร้างขึ้นเป็นพิเศษเพื่อหยุดความขัดแย้งเมื่อฟังก์ชันหรือคลาสที่แตกต่างกันสองรายการมีชื่อเหมือนกัน เรียกอีกอย่างว่าการชนกันของการตั้งชื่อซึ่งขัดขวางโค้ดของคุณแทนที่จะเรียกใช้
ในระบบไฟล์ คุณจะพบชื่อโฟลเดอร์เป็นเนมสเปซ ไฟล์ที่แตกต่างกันสองไฟล์สามารถมีชื่อเดียวกันได้ อย่างไรก็ตาม ทุกฟังก์ชันและคลาสจะทำงานได้อย่างสมบูรณ์ แต่ถ้าไฟล์ทั้งสองนี้ถูกเก็บไว้ในสองโฟลเดอร์ที่แตกต่างกัน
อย่างไรก็ตาม หากทั้งสองไฟล์ถูกเก็บไว้ในโฟลเดอร์เดียวกัน จะพบปัญหาที่เรียกว่าปัญหาเนมสเปซ
ใน WordPress แท้จริงแล้ว เนมสเปซมีความหมายต่างกันสองแบบ เนมสเปซที่อธิบายข้างต้นเป็นเวอร์ชันที่สร้างขึ้นจริงใน PHP
อย่างไรก็ตาม ก่อนหน้านี้ PHP ไม่รองรับเนมสเปซเมื่อ WordPress ได้รับการพัฒนาจริง ด้วยเหตุนี้ ผู้ใช้ WordPress จึงหาวิธีอื่นเพื่อให้ได้ผลลัพธ์ที่คล้ายคลึงกัน
ในขณะที่ค้นหาวิธีแก้ปัญหาเพื่อให้ได้เอฟเฟกต์ที่คล้ายคลึงกัน พวกเขาก็มาพร้อมกับฟังก์ชันอื่นที่เรียกว่า 'คำนำหน้า' ในคำนำหน้า WordPress เป็นแบบแผนซึ่งใช้โดยนักพัฒนา WordPress
หน้าชื่อคลาสหรือฟังก์ชัน นักพัฒนา WordPress ใส่คำนำหน้า ลองพิจารณาตัวอย่างที่แทนที่จะเขียนแค่ user.ideal คุณสามารถใช้ yourcompanyname_user ได้
ด้วยวิธีนี้ อินสแตนซ์ส่วนใหญ่ของคลาส 'ผู้ใช้' จะถูกนำหน้า การทำเช่นนี้จะทำให้แน่ใจได้ว่าไม่มีข้อขัดแย้งขณะรวมธีม ปลั๊กอิน และคอร์เข้ากับคลาสผู้ใช้
แม้ว่าคำนำหน้าการเข้ารหัสและเนมสเปซจะใช้มากที่สุด ซึ่งช่วยให้คุณเชื่อมต่อกับโค้ดที่เขียนขึ้นโดยนักพัฒนารายอื่น
แม้ว่าจะไม่มีกรณีใด ๆ ก็ตามคุณควรปฏิบัติตามแนวทางนี้ด้วย สิ่งสำคัญคือต้องปฏิบัติตามคำแนะนำสำหรับนักพัฒนา WordPress เพื่อขจัดโอกาสในการตั้งชื่อการชนกัน
5 เคล็ดลับสำหรับนักพัฒนา WordPress ในการใช้เนมสเปซและคำนำหน้า
หากคุณต้องการตั้งค่าส่วนนำหน้าและเนมสเปซในโค้ดของคุณ คุณควรปฏิบัติตามคำแนะนำเหล่านี้
1. แทนที่จะใช้คำนำหน้าให้ใช้ PHP เนมสเปซ
คำนำหน้าสามารถทำงานได้ดี แต่ก็มีข้อเสียอยู่บ้าง ปัญหาหลักในการใช้คำนำหน้าคือโค้ดที่คุณเขียนอ่านง่ายกว่า
เนื่องจากบุคคลที่กำลังอ่านโค้ดจะไม่พบฟังก์ชันหรือคลาสที่แท้จริงของคุณ แม้ว่าเขา/เธอจะเห็นคำนำหน้าในตอนแรก
การใช้เนมสเปซ PHP หมายความว่าคุณจะมั่นใจได้ว่าฟังก์ชันและคลาสในโค้ดของคุณนั้นอ่านง่าย อย่างไรก็ตาม คนที่อ่านโค้ดของคุณจะได้รับแนวคิดเกี่ยวกับบทบาทของฟังก์ชันหรือคลาสนั้นๆ
ซึ่งจะมีประโยชน์มากกว่าหากโค้ดของคุณถูกใช้โดยโปรแกรมเมอร์อื่นๆ เช่น นักพัฒนาซอฟต์แวร์หรือปลั๊กอิน

งานเขียนโค้ดของคุณจะง่ายขึ้นด้วยเนมสเปซ เนื่องจากคุณไม่ได้เขียนชื่อส่วนนำหน้า แต่จะเขียนเฉพาะชื่อคลาสและฟังก์ชันเท่านั้น
การใช้เนมสเปซเป็นเคล็ดลับสำหรับนักพัฒนา WordPress ที่ดีในการทำให้โค้ดของคุณอ่านง่ายขึ้นและสะอาดขึ้น
2. สำหรับเนมสเปซของคุณ มันมาพร้อมกับมาตรฐานการตั้งชื่อ
ไม่มีการกำหนดมาตรฐานอย่างเป็นทางการสำหรับการสร้างและตั้งชื่อเนมสเปซของคุณ แต่ให้แน่ใจว่าคุณกำลังเขียนโค้ดที่ดีที่สุดจะช่วยให้เว็บไซต์และโค้ดของคุณทำงานอย่างสม่ำเสมอมากขึ้น
การเพิ่มแบบแผนของชื่อเดียวกันให้กับเนมสเปซทั้งหมดของคุณจะช่วยให้คุณจดจำและจดจำได้ว่าชื่อใดจะเหมาะกับโครงการประเภทใด
วิธีที่ดีที่สุดในการสร้างเนมสเปซคือการเริ่มต้นด้วยชื่อผู้ขายหรือบริษัท หลังจากนี้ คุณจะเพิ่มเนมสเปซย่อยสำหรับทุกโปรเจ็กต์ได้
ลองพิจารณาตัวอย่างที่คุณกำลังสร้างธีมในบริษัทของคุณ จากนั้นคุณสามารถใช้ชื่อบริษัทของคุณเป็นเนมสเปซหลักได้ ในขณะที่เนมสเปซย่อยสามารถเป็นธีมสำหรับโปรเจ็กต์เฉพาะนั้นได้
มาดูกันว่าจะเป็นยังไง
<!--?php เนมสเปซ yourcompanyname\theme; </ล่วงหน้า> <p>ด้วยโค้ดประเภทนี้ คุณจะทราบได้ว่าคลาสและฟังก์ชันของคุณจะถูกเรียกจากที่ใด </p> <h3>3. ส่งเสริมให้ชื่อแทนล้างโค้ด</h3> <p>PHP มีประโยชน์สำหรับการเรียกใช้ฟังก์ชันต่างๆ พร้อมกับชื่อที่คล้ายกันจากเนมสเปซต่างๆ เพียงแค่เพิ่มเส้นทางแบบเต็มของฟังก์ชัน คุณก็สามารถทำได้ ตัวอย่างได้รับด้านล่าง</p> <p>แต่หากคุณทำเช่นนี้ซ้ำๆ โค้ดของคุณจะรกอย่างรวดเร็ว อย่างไรก็ตาม มันจะยาวและยากขึ้นในการอ่าน สำหรับฟังก์ชันเหล่านี้ คุณสามารถสร้างนามแฝงแทน PHP จึงทำให้ชั้นเรียนของคุณง่ายขึ้น</p> <p>หากต้องการสร้างนามแฝง ในขณะที่นำเข้าฟังก์ชันหรือคลาส คุณเพียงแค่ต้องระบุชื่อนั้น ตัวอย่างได้รับด้านล่าง</p> <ล่วงหน้า> <?php เนมสเปซชื่อบริษัทของคุณ; ใช้ yourcompanyname\Theme\User เป็น ThemeUser; คลาสผู้ใช้ใช้ ThemeUser { } </ล่วงหน้า> <h3>4. เมื่อไม่มีการรองรับเนมสเปซ คุณสามารถใช้คำนำหน้า</h3> <p>ทุกรายการไม่รองรับการกำหนดเนมสเปซ PHP ใช้งานได้กับ </p> <ul> <li>คลาส</li> <li>ฟังก์ชัน</li> <li>ค่าคงที่บางค่า</li> <li>อินเทอร์เฟซ</li> <li>ลักษณะ</li> </ul> <p>นอกเหนือจากนี้ คุณจะต้องใช้คำนำหน้า WordPress แบบเก่า ซึ่งยังประกอบด้วยบางรายการ เช่น ชื่อขนาดภาพ ตัวจัดการสคริปต์ หรือตัวเลือกฐานข้อมูล</p> <p>สำหรับเนมสเปซของคุณ คุณต้องปฏิบัติตามหลักการตั้งชื่อเดียวกัน </p> <h3>5. ใช้การโหลดอัตโนมัติกับ Streamline Development</h3> <p>เมื่อคุณเรียกคลาสที่กำหนด การโหลดอัตโนมัติจะดึงไฟล์คลาสโดยอัตโนมัติ การโหลดอัตโนมัติเป็นหนึ่งในคุณสมบัติ PHP ที่ดีที่สุด คุณสามารถประหยัดความพยายามและเวลาได้มาก เพราะทุกครั้งที่คุณไม่จำเป็นต้องเขียนข้อความรวมถึงหรือต้องการ </p> <p>สามารถทำได้โดยใช้มาตรฐาน PSR-4 ใน PHP </p> <p><strong>บทสรุป:</strong><br ?--> การใช้เนมสเปซเป็นสิ่งสำคัญ แม้ว่าคุณจะไม่ใช่คนที่ใช้เทคโนโลยีหรือเป็นนักพัฒนาที่มีประสบการณ์ก็ตาม เนมสเปซช่วยให้คุณหยุดการชนกันของการตั้งชื่อ และจะปรับปรุงฟังก์ชันและคลาสของคุณ