Gần đây, một người dùng đã hỏi chúng tôi cách kiểm tra xem hàm PHP có tồn tại hay không trước khi thêm một số mã mới vào trang web WordPress dựa trên nó.
Phần tốt nhất về WordPress là tính linh hoạt của nó, bao gồm khả năng thêm các chức năng của riêng bạn vào trang web của bạn. Tuy nhiên, đôi khi mã tùy chỉnh của bạn có thể không hoạt động vì chức năng mà nó đề cập đến không còn tồn tại nữa.
Trong bài viết này, chúng tôi sẽ chỉ cho bạn cách dễ dàng kiểm tra xem một chức năng có tồn tại hay không trước khi thêm nó vào chủ đề WordPress của bạn.
WordPress chủ yếu được viết bằng ngôn ngữ lập trình PHP. PHP là ngôn ngữ lập trình phía máy chủ chạy trên máy chủ của nhà cung cấp dịch vụ lưu trữ WordPress của bạn.
Bởi vì PHP phải chạy xong trước khi trang được tải trong trình duyệt của khách truy cập nên có một số hạn chế nhất định đối với nó. Một trong những hạn chế đó là nếu có sự cố xảy ra, nó có thể khiến toàn bộ trang không thể tải được.
Trong WordPress, nếu một chức năng bị thiếu ngăn phần còn lại của mã chạy thì nó sẽ tạm dừng và hiển thị thông báo lỗi nghiêm trọng hoặc lỗi nghiêm trọng.
Điều gì có thể khiến một chức năng đột nhiên ngừng hoạt động hoặc bị mất?
Đó là một lỗi WordPress phổ biến hơn bạn nghĩ.
Ví dụ: giả sử một trong các plugin WordPress của bạn có chức năng mà bạn đã thêm vào khu vực chân trang của chủ đề. Việc tắt plugin sẽ khiến chức năng này biến mất và gây ra lỗi nghiêm trọng trên trang web WordPress của bạn.
Như đã nói, chúng ta hãy xem cách dễ dàng kiểm tra xem một chức năng có tồn tại hay không trước khi thực thi nó trong các tệp chủ đề WordPress của bạn.
May mắn thay, ngôn ngữ lập trình PHP có sẵn một phương thức tích hợp để dễ dàng kiểm tra sự tồn tại của hàm trước khi thực thi nó.
Giả sử bạn có chức năng WordPress hiển thị thời gian hiện tại cùng với thông tin múi giờ. Đây là đoạn mã mẫu mà bạn có thể sử dụng để dùng thử.
Bạn có thể thêm nó trực tiếp vào tệp tin.php của chủ đề hoặc sử dụng plugin đoạn mã như WPCode (được khuyến nghị). Bạn có thể xem hướng dẫn của chúng tôi về cách dễ dàng thêm mã tùy chỉnh trong WordPress:
//display current time with timezone
function wpb_show_timezone() {
$better_time = current_time('F j, Y g:i a e');
echo "<p>The current time is " . $better_time ."</p>";
}
Để gọi hàm này, bạn sẽ cần thêm đoạn mã sau vào bất kỳ đâu trong chủ đề WordPress nơi bạn muốn hiển thị thời gian hiện tại.
<?php wpb_show_timezone(); ?>
Đây là giao diện trên trang web thử nghiệm của chúng tôi.
Bây giờ điều gì sẽ xảy ra nếu mã chịu trách nhiệm thực thi chức năng này biến mất?
Lệnh gọi hàm sẽ làm hỏng trang web của bạn như thế này.
Hãy thêm một kiểm tra để đảm bảo rằng mã này chỉ chạy khi hàm tồn tại.
Một lần nữa, bạn sẽ cần thêm mã trực tiếp vào tệp tin.php của chủ đề hoặc sử dụng plugin đoạn mã như WPCode (được khuyến nghị):
<?php
if( function_exists('wpb_show_timezone')) {
wpb_show_timezone();
} else {
// do nothing
}
?>
Trong mã này, chúng tôi đang sử dụng hàm function_exists(). Hàm này kiểm tra xem hàm có tồn tại hay không và trả về Đúng hoặc Sai.
Sau đó, chúng tôi đã thêm điều kiện if-else để thực hiện hành động thích hợp tùy thuộc vào tính khả dụng của hàm.
Bây giờ, khi chức năng này không còn khả dụng, mã sẽ đơn giản bỏ qua nó và WordPress sẽ có thể tải phần còn lại của trang web của bạn một cách bình thường.
Chúng tôi hy vọng bài viết này đã giúp bạn tìm hiểu cách kiểm tra xem một chức năng có tồn tại trong WordPress hay không. Bạn cũng có thể muốn xem hướng dẫn khắc phục sự cố WordPress hoàn chỉnh của chúng tôi hoặc các chuyên gia của chúng tôi chọn các trình tạo trang WordPress kéo và thả tốt nhất.
Nếu bạn thích bài viết này, vui lòng đăng ký Kênh YouTube của chúng tôi để xem video hướng dẫn về WordPress. Bạn cũng có thể tìm thấy chúng tôi trên Twitter và Facebook.