เมื่อ WordPress ได้รับการพัฒนาตั้งแต่เริ่มต้น Matt Mullenweg หัวหน้าโปรแกรมเมอร์และอีกไม่นานจะเป็น CEO ของ Automattic บริษัท ที่อยู่เบื้องหลัง WordPress ได้บังคับใช้กฎเกณฑ์จำนวนมากเกี่ยวกับการเขียนโค้ดที่ผู้มีส่วนร่วมหลักต้องปฏิบัติตาม กฎเหล่านั้นกำหนดวิธีที่รหัสควรปรากฏขึ้น นี่คือรายการทั้งหมดของมาตรฐานรหัส PHP:
https://make.wordpress.org/core/handbook/best-practices/coding-standards/php/


มาตรฐานการเข้ารหัสมีความสำคัญอย่างมากในการพัฒนา WordPress และทุกคนสามารถนำไปปฏิบัติได้เมื่อพัฒนาเพื่อ WordPress ไม่สำคัญว่าคุณกำลังเขียนปลั๊กอินที่กำหนดเองสำหรับลูกค้าหรือธีมลูกของคุณ.

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

มาตรฐานการเข้ารหัสเป็นเรื่องธรรมดามากในเกือบทุกกรอบและระบบ รหัสที่เขียนโดยกฎที่กำหนดไว้อย่างดีมีข้อได้เปรียบเหนือรหัสที่มันไม่ใช่’เสื้อ.

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

นอกจากนี้การใช้มาตรฐานรหัสสามารถช่วยลดข้อผิดพลาดได้ ตัวอย่างเช่นแมตต์ในภูมิปัญญาที่ไม่มีที่สิ้นสุดของเขาประกาศว่า ‘สภาพโยดา’ ที่จะบังคับ มันหมายถึงว่าแทนที่จะ

ถ้า ($ var === จริง)

คุณควรเขียน

ถ้า (จริง === $ var)

ทำไมทุกคนควรใส่ใจเกี่ยวกับเรื่องนี้? ยกเว้นกรณีที่คุณมี OCD…. คำตอบนั้นง่าย การใช้เงื่อนไขโยดาช่วยป้องกันการวางตำแหน่งโดยไม่ตั้งใจในสภาพเป็นสิ่งที่สามารถทำให้คุณบ้าได้.

การใช้มาตรฐานรหัสทำให้โค้ดของคุณดูเหมือนรหัสมั่นคงและเป็นมืออาชีพ รหัสที่ผ่านการทดสอบมาตรฐานรหัสเป็นรหัสที่มีคุณภาพ.

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

มาตรฐานรหัสนั้นเป็นรายการที่มีความยาวมากและยากที่จะจำได้ทั้งหมด ดังนั้นเราจะทำอย่างไร นอกจากนี้เราจะอนุญาตให้ลูกค้า \ manager ตรวจสอบได้อย่างไรว่ารหัสนั้นถูกเขียนขึ้นโดยมาตรฐาน?

นี่คือเหตุผลที่เรามีเครื่องมือวิเคราะห์โค้ด PHP แบบคงที่ที่ให้เราสแกนโค้ดที่เราเขียนและตรวจสอบว่ารหัสเป็นไปตามกฎทุกข้อในมาตรฐาน.

การใช้ phpcs นั้นใช้งานได้ง่ายบน linux หรือ windows ก่อนอื่นคุณต้องติดตั้ง phpcs ผ่านทาง PEAR:

$ pear ติดตั้ง PHP_CodeSniffer

ตรวจสอบการติดตั้งโดย

$ phpcs -i

คุณควรได้อะไรแบบนั้น:

มาตรฐานการเข้ารหัสที่ติดตั้งคือ PHPCS, Squiz, PSR2, MySource, PEAR, Zend และ PSR1

สิ่งนี้ช่วยให้คุณสามารถสแกนโค้ด PHP ได้ด้วยมาตรฐาน PHP ที่เป็นที่รู้จักมากมาย เราจำเป็นต้องเพิ่มมาตรฐาน WordPress ลงในเครื่องมือ phpcs เราจะสร้างไดเรกทอรีบางส่วน (ไม่ใช่ชั่วคราว) เป็นโคลนไปที่โครงการ GitHub ของพจนานุกรม phpcs WordPress:

$ cd c: \ wpcs

$ git clone -b master https://github.com/WordPress-Coding-Standards/WordPress-Coding-Standards.git wpcs

หลังจากนั้นเราจะเพิ่มพจนานุกรม WordPress ลงใน phpcs:

$ phpcs – ตั้งค่าชุด install_paths c: \ path \ to \ wpcs

หากเราลอง php –I เราจะเห็นว่ามีพจนานุกรม WordPress อยู่ในนั้น:

$ phpcs -i
มาตรฐานการเข้ารหัสที่ติดตั้งคือ PHPCS, Squiz, PSR2, MySource, ลูกแพร์, Zend, PSR1, WordPress, WordPress-VIP, WordPress-Core, WordPress-Core, WordPress-Docs และ WordPress-Extra
ใช้ phpcs ค่อนข้างง่าย ไปที่ไดเรกทอรีของรหัสของคุณและพิมพ์สิ่งนี้:

$ phpcs –standard = WordPress ./**/*.php

ที่’มันสิ! คุณจะได้รับรายงานปัญหาทันที:

ไฟล์: /var/www/html/github/wp-notice/tests/bootstrap.php
———————————————————————-
ค้นหา 6 ข้อผิดพลาดที่มีผลกระทบ 5 สาย
———————————————————————-
2 | ข้อผิดพลาด [] ความคิดเห็นเอกสารไฟล์หายไป
4 | ข้อผิดพลาด [x] เงื่อนไขแรกของคำสั่ง IF หลายบรรทัดจะต้อง
| | ติดตามวงเล็บเปิดโดยตรง
19 | ข้อผิดพลาด [] ความคิดเห็นเอกสารการทำงานที่ขาดหายไป
19 | ข้อผิดพลาด [] ชื่อฟังก์ชั่น "_manually_load_plugin" ไม่ถูกต้อง
| | วิธีการส่วนตัวเท่านั้นควรนำหน้าด้วย
| | ขีด
21 | ข้อผิดพลาด [x] ไฟล์ถูกรวมอย่างมีเงื่อนไข ใช้ "ประกอบด้วย"
| | แทน
22 | ข้อผิดพลาด [x] ไฟล์ถูกรวมอย่างมีเงื่อนไข ใช้ "ประกอบด้วย"
| | แทน
———————————————————————-
PHPCBF สามารถแก้ไขการละเมิด SNIFF ที่ทำเครื่องหมายได้ 3 รายการโดยอัตโนมัติ
———————————————————————-

การรับรายงานข้อผิดพลาดเป็นศูนย์เป็นเป้าหมายที่นี่ การพิมพ์รายงานนี้ให้กับลูกค้าและผู้จัดการสามารถแสดงให้พวกเขาเห็นว่าคุณเขียนรหัสตามมาตรฐานและรหัสของคุณมีคุณภาพมากกว่ารหัสอื่น ๆ.

คุณสามารถเรียกใช้ phpcs โดยอัตโนมัติและใช้เครื่องมืออื่นเพื่อแก้ไขปัญหาต่าง ๆ โดยอัตโนมัติ คุณสามารถรวมมาตรฐานกับ IDE ของคุณเพื่อรับการแจ้งเตือนได้ทันที แต่ก่อนหน้านี้การรู้มาตรฐานและรู้ phpcs สามารถทำให้คุณและรหัสของคุณอยู่ในระดับคุณภาพที่แตกต่างกัน.

Jeffrey Wilson Administrator
Sorry! The Author has not filled his profile.
follow me