Students Save 30%! Learn & create with unlimited courses & creative assets Students Save 30%! Save Now
Advertisement
  1. Code
  2. PHP
Code

Sử dụng PHP CodeSniffer Với WordPress: Cài đặt và Sử dụng các Quy tắc WordPress

by
Difficulty:BeginnerLength:LongLanguages:

Vietnamese (Tiếng Việt) translation by Dai Phong (you can also view the original English article)

Nếu bạn vừa mới bắt đầu theo dõi loạt bài này, thì chúng ta đã thảo luận về chủ đề code xấu, cách để tái cấu trúc chúng và các công cụ sẵn có để giúp chúng ta tự động hoá một số công việc đơn điệu, đặc biệt là trong lập trình PHP.

Nếu bạn chưa đọc hai bài viết đầu tiên trong loạt bài này, thì tôi khuyên bạn nên đọc nó vì chúng đề cập đến một số điều kiện tiên quyết mà chúng ta cần thiết lập trước khi tiếp tục với phần còn lại của bài viết.

Các bài viết đó là:

  1. Sử dụng PHP CodeSniffer Với WordPress: Hiểu về Code Xấu
  2. Sử dụng PHP CodeSniffer Với WordPress: Cài đặt và Sử dụng PHP CodeSniffer

Nói một cách ngắn gọn, các bài viết ở trên sẽ giới thiệu khái niệm về code xấu, cái mà chúng ta đã định nghĩa như sau:

Code xấu, còn được gọi là code không tốt, trong lập trình máy tính, chỉ đến bất kỳ triệu chứng nào trong mã nguồn của một chương trình có thể xác định một vấn đề lớn hơn.

Và tôi sẽ hướng dẫn bạn từng bước cần thiết để cài đặt PHP CodeSniffer trên máy của bạn.

Nhưng nếu bạn đã cài đặt nó cho đến thời điểm này, thì tôi cho rằng bạn là một nhà phát triển WordPress, và bạn hứng thú với việc cấu hình PHP CodeSniffer để nó có thể đánh hơi ra bất kỳ vấn đề nào trong code của bạn vì nó liên quan đến Tiêu chuẩn Viết code trong WordPress.

Thật tốt! Bởi vì trong phần còn lại của bài viết này, đó chính xác là những gì chúng ta sẽ tìm hiểu.

Yêu cầu Tiên quyết

Đây sẽ là một danh sách rất ngắn. Nếu bạn đã theo dõi kỹ loạt bài viết cho đến thời điểm này, bạn cần phải có:

Tất cả những điều này đã được đề cập chi tiết trong các bài viết trước của loạt bài này, nhưng nếu bạn đã có được những điều này và cảm thấy thoải mái với dòng lệnh thì đây cũng giống như những gì mà chúng ta đã thực hiện cho đến lúc này.

Như vậy, chúng ta hãy bắt đầu nào.

Các quy tắc WordPress cho PHP CodeSniffer

Đầu tiên, hãy xác định Các Tiêu chuẩn Viết code trong WordPress trên GitHub. Chúng rất dễ tìm thấy.

The WordPress Coding Standard Rules

Bạn có thể đọc tất cả các chi tiết về dự án từ trang dự án, nhưng điều quan trọng nhất tôi muốn chia sẻ là:

Dự án này là một tập hợp các quy tắc cho PHP_CodeSniffer (sniffs) để kiểm tra code được phát triển cho WordPress. Nó đảm bảo chất lượng code và tuân thủ các quy ước viết code, đặc biệt là Các Tiêu chuẩn Viết code chính thức cho WordPress.

Tôi muốn bạn chú ý đến cụm từ mà định nghĩa này chỉ đến "Tiêu chuẩn Viết code chính thức cho WordPress". Lưu ý rằng các quy tắc này dựa trên Các Tiêu chuẩn Viết code WordPress. Nghĩa là, bạn không thể chính thức tham khảo chúng.

Nếu bạn đang tìm cách để tìm hiểu các quy tắc mà WordPress định nghĩa, thì hãy xem bài viết này trong Codex. Nó dễ dàng để theo dõi, dễ đọc, nhưng rất nhiều thứ để nhớ. Rất may, chúng ta đã có quy tắc được liên kết ở trên.

Điều quan trọng cần lưu ý là ngay cả khi bạn không rành các quy tắc, thì CodeSniffer vẫn sẽ tìm ra các vấn đề với code của bạn và sẽ thông báo cho bạn về những gì bạn cần phải khắc phục. Mặc dù bạn không nhất thiết phải đọc bài viết trên Codex, nhưng đôi khi nó có thể giúp xác định những gì cần thiết dựa trên các lỗi hoặc cảnh báo mà sniffer đưa ra.

1. Cài đặt Các Quy tắc WordPress

Giả sử bạn đã cài đặt thành công PHP CodeSniffer, hãy thêm các quy tắc WordPress vào phần mềm. Đối với hướng dẫn này, tôi sẽ làm tất cả mọi thứ thông qua dòng lệnh để càng ít phụ thuộc vào nền tảng càng tốt. Tôi sẽ cung cấp một vài thông tin về IDE và các quy tắc vào cuối loạt bài này.

Mở Terminal của bạn và điều hướng đến nơi cài đặt phiên bản PHP CodeSniffer. Nếu bạn đã theo dõi kỹ loạt bài hướng dẫn này, thì bạn chắc còn nhớ chúng ta có tập tin composer.json sẽ tải về các quy tắt này cho chúng ta. Nếu không, hãy nhớ tạo composer.json trong thư mục gốc của dự án và thêm vào tập tin:

Một khi đã hoàn tất, hãy chạy $ composer update từ Terminal của bạn và bạn sẽ có được mọi thứ bạn cần để bắt đầu. Để xác nhận việc cài đặt, hãy chạy lệnh sau đây:

Và bạn sẽ thấy một số thứ như sau:

Hoàn hảo. Tiếp theo, hãy cài đặt các quy tắc WordPress. Vì chúng ta đang sử dụng Composer (và sẽ tiếp tục làm như vậy), nên việc này rất dễ thực hiện.

Chạy lệnh sau từ trong thư mục gốc của dự án:

Lưu ý rằng, bạn có thể được nhắc với câu hỏi sau:

Nếu bạn biết bạn đang làm gì, hãy cứ tiếp tục và chọn 'n'; nếu không, bạn hoàn toàn có thể nhấn 'y'.

2. Thêm các quy tắc vào PHP CodeSniffer

Bây giờ PHP CodeSniffer đã được cài đặt, và các quy tắc WordPress cũng đã được cài đặt, chúng ta cần đảm bảo rằng PHP CodeSniffer biết về ruleset mới của chúng ta. Để làm điều này, chúng ta cần nhập lệnh sau đây trong terminal.

Từ thư mục gốc của dự án, hãy nhập lệnh sau:

Để xác minh rằng các quy tắc mới đã được thêm vào, chúng ta có thể yêu cầu PHP CodeSniffer báo cáo cho chúng ta các bộ quy tắc mà nó hiện có. Trong Terminal, hãy nhập lệnh sau đây:

Và bạn sẽ thấy kết quả sau đây (hoặc một số thứ tương tự):

Chú ý trong dòng ở trên rằng chúng ta có một số bộ quy tắc liên quan đến WordPress. Khá gọn gàng, phải không? Tất nhiên, hãy cùng nhau xem cách điều này xếp chồng lên nhau khi chúng ta chạy bộ quy tắc đối với một plugin như Hello Dolly.

3. Chạy PHP CodeSniffer đối với các dự án WordPress

Giả sử bạn tìm ra một thư mục bao gồm một plugin WordPress, thì bạn có thể bỏ qua bước sau. Mặt khác, nếu bạn không có một script, tập tin, theme hoặc plugin WordPress được cài đặt trong thư mục dự án, hãy tiếp tục và sao chép nó vào thư mục dự án của bạn ngay bây giờ.

Như đã đề cập, chúng ta sẽ thử nghiệm plugin Hello Dolly.

Preparing to test Hello Dolly

Để chạy PHP CodeSniffer cùng với các quy tắc WordPress đối với các tập tin trong thư mục plugin, hãy nhập lệnh sau đây trong Terminal:

Điều này sẽ cho ra kết quả tương ứng với những gì bạn nhìn thấy ở đây:

Tất nhiên, những điều này có thể thay đổi tùy thuộc vào thời điểm bạn đọc hướng dẫn này.

Các lỗi sẽ khá rõ ràng cũng như những gì cần phải được khắc phục:

  • Cột đầu tiên chỉ rõ dòng code mà vấn đề tồn tại.
  • Cột thứ hai xác định có lỗi hoặc cảnh báo hay không.
  • Cột thứ ba giải thích vấn đề và những kỳ vọng về code.

Lưu ý rằng mặc dù đây là lỗi hoặc cảnh báo, thì code sẽ vẫn chạy. Tuy nhiên, hãy khắc phục lỗi này từ đầu đến cuối và xem thế nào là sửa chữa một plugin, được cho là phổ biến nhất vì nó đi kèm với mỗi cài đặt WordPress, và xem xét sự khác biệt về chất lượng của code.

4. Tái cấu trúc Hello Dolly

Lưu ý plugin, trước khi chúng ta bắt đầu làm việc trên nó, hãy bao gồm mã nguồn sau đây:

Nó tương đối dễ dàng để theo dõi vì nó chỉ sử dụng một vài tính năng PHP cơ bản và Matt đã chú thích code rất tốt.

Nhưng với 14 lỗi mà CodeSniffer đã tìm ra, chúng ta hãy tái cấu trúc plugin. Nói về các lỗi đã trình bày và những gì nó mong được thấy, hãy giải quyết từng lỗi một.

Một khi đã hoàn tất, plugin sẽ trông giống như sau:

Lưu ý rằng, plugin tiếp tục hoạt động và code này đã sạch sẽ hơn một chút. Cuối cùng, hãy kiểm tra nó có vượt qua bài kiểm tra PHP CodeSniffer hay không. Hãy chạy lại code mà chúng ta đã sử dụng ở trên để đánh giá plugin lúc ban đầu.

Và đầu ra mà chúng ta nhìn thấy:

Chính xác: Không có đầu ra. Thay vào đó, nó sẽ trở lại với dấu nhắc lệnh tiêu chuẩn.

Rất tốt. Plugin đã được tiêu chuẩn hoá. Đây là lý do tại sao có một code sniffer là điều rất có giá trị: Nó tìm ra lỗi trong code của bạn dựa trên các quy tắc mà bạn xác định và sau đó báo cáo bất kỳ lỗi nào có thể có.

Cuối cùng, điều này đảm bảo rằng bạn đang phát hành code được viết với chất lượng cao nhất vào một trang web ở mức độ sản phẩm. Bây giờ, điều này không có nghĩa là bạn sẽ bỏ qua unit testing hoặc các kiểu thử nghiệm khác, cũng không có nghĩa là không tồn tại lỗi nào. Nó chỉ có nghĩa là code của bạn đã đạt một tiêu chuẩn cao.

Tóm tắt

Và với điều đó, chúng ta kết thúc loạt bài về cách sử dụng PHP CodeSniffer. Ôn lại một chút, trong suốt loạt bài này, chúng ta đã khái quát ý tưởng về code xấu, cách tái cấu trúc chúng, và những công cụ nào sẵn có cho chúng ta khi làm việc với các ứng dụng PHP.

Trong bài viết này, chúng ta đã tìm hiểu cách để có thể sử dụng một bộ quy tắc được cung cấp cho Các tiêu chuẩn Viết code WordPress để đánh giá code của chúng ta khi làm việc với một dự án mới hoặc hiện tại. Lưu ý rằng một số IDE hỗ trợ khả năng thực thi các quy tắc khi đang viết code.

Mặc dù điều này nằm ngoài phạm vi của hướng dẫn cụ thể này, nhưng bạn có thể tìm thấy nhiều tài nguyên cho điều này ở những nơi khác nhau trên web. Chỉ cần tìm kiếm IDE của bạn theo tên, xác định nó có hỗ trợ cho PHP CodeSniffer hay không, và sau đó đảm bảo cài đặt các quy tắc WordPress như chúng ta đã tìm hiểu trong hướng dẫn này.

Nếu bạn thích bài viết hoặc loạt bài viết này, bạn có thể hứng thú với những bài khác mà tôi đã viết trên trang tiểu sử hoặc trên blog của tôi. Bạn còn có thể theo dõi tôi trên Twitter tại @tommcfarlin, nơi tôi thường thảo luận và chia sẻ các cách phát triển phần mềm khác nhau trong ngữ cảnh của WordPress.

Sau cùng, đừng ngần ngại để lại bất kỳ câu hỏi hoặc nhận xét nào trong phần bình luận bên dưới đây và tôi sẽ cố gắng trả lời từng câu hỏi.

Tham khảo thêm

Advertisement
Advertisement
Looking for something to help kick start your next project?
Envato Market has a range of items for sale to help get you started.