Kiểm tra xem trang có tồn tại wordpress không

Đoạn mã PHP nhanh này có thể được sử dụng để kiểm tra xem có tồn tại một URL cụ thể hay không. Tôi sử dụng điều này trong một trong các dự án của mình để kiểm tra sự tồn tại của rô bốt. txt trên trang web. Có thể được sửa đổi để kiểm tra các tệp trên bất kỳ trang web có thể truy cập công khai nào

$protocol = is_ssl() ? 'https://' : 'http://'; // uses WP function is_ssl()
$robots   = $protocol . $_SERVER['SERVER_NAME'] .'/robots.txt';
$exists   = false;

if (!$exists && in_array('curl', get_loaded_extensions())) {
	
	$ch = curl_init($robots);   
	 
	curl_setopt($ch, CURLOPT_NOBODY, true);
	curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
	curl_exec($ch);
	
	$response = curl_getinfo($ch, CURLINFO_HTTP_CODE);
	
	if ($response === 200) $exists = true;
	
	curl_close($ch);
	
}

if (!$exists && function_exists('get_headers')) {
	
	$headers = @get_headers($robots);
	
	if ($headers) {
		
		if (strpos($headers[0], '404') !== false) {
			
			$exists = true;
			
		}
		
	}
	
}

Đây là cách nó hoạt động

  1. Đặt ba biến. $protocol, $robots$exists
  2. Kiểm tra xem curl của PHP có sẵn không;
  3. Kiểm tra xem có sẵn get_headers không;

Vì vậy, kết quả cuối cùng của tập lệnh này sẽ là biến $exists sẽ trả về là

//display current time with timezone
function wpb_show_timezone() { 
$better_time = current_time('F j, Y g:i a e'); 
echo "

The current time is " . $better_time ."

"; }
2 nếu tệp/URL được chỉ định tồn tại. Nếu không thì $exists vẫn là $protocol1

ghi chú. Nếu WordPress không có sẵn, bạn sẽ cần sửa đổi hoặc xóa biến $protocol cho phù hợp. Cũng có thể muốn thay đổi biến $robots trong suốt tùy thuộc vào cách sử dụng. Và cuối cùng, đảm bảo chỉ định URL của bất kỳ tài nguyên/tệp nào bạn muốn kiểm tra

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 hoặc một plugin dành riêng cho trang web

Kiểm tra xem trang có tồn tại wordpress không

Tại sao lại thêm chức năng If vào mã tùy chỉnh 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

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 xảy ra sự cố, nó có thể khiến toàn bộ trang không tải được

Trong WordPress, nếu một chức năng bị thiếu sẽ ngăn phần còn lại của mã chạy, thì nó sẽ tạm dừng và hiển thị một lỗi nghiêm trọng hoặc thông báo lỗi nghiêm trọng

Kiểm tra xem trang có tồn tại wordpress không

Điều gì sẽ làm cho một chức năng đột nhiên ngừng hoạt động hoặc mất tích?

Đó 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ủ đề

Vô hiệu hóa plugin sẽ làm cho chức năng 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

Kiểm tra nếu một chức năng tồn tại trong WordPress

May mắn thay, ngôn ngữ lập trình PHP có sẵn một phương thức để dễ dàng kiểm tra sự tồn tại của một 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 với thông tin múi giờ. Đây là một đoạn mã mẫu mà bạn có thể sử dụng để thử

//display current time with timezone
function wpb_show_timezone() { 
$better_time = current_time('F j, Y g:i a e'); 
echo "

The current time is " . $better_time ."

"; }

Để gọi chức năng này, bạn sẽ cần thêm đoạn mã sau vào bất kỳ đâu trong chủ đề WordPress của mình, nơi bạn muốn hiển thị thời gian hiện tại

Đây là giao diện trên trang web thử nghiệm của chúng tôi

Kiểm tra xem trang có tồn tại wordpress không

Bây giờ nếu mã chịu trách nhiệm thực thi chức năng này biến mất, thì lệnh gọi chức năng sẽ phá vỡ trang web của bạn

Kiểm tra xem trang có tồn tại wordpress không

Hãy thêm một kiểm tra để đảm bảo rằng mã này chỉ chạy khi chức năng tồn tại

Trong mã này, chúng tôi đang sử dụng hàm function_exists(). Hàm này kiểm tra xem một 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 nữa, mã sẽ 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

Kiểm tra xem trang có tồn tại wordpress khô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 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 xem bảng gian lận của chúng tôi dành cho nhà phát triển chủ đề WordPress

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 các 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

Hàm Is_page() trong CMS là gì?

is_page( int. chuỗi. int[]. chuỗi[] $page = '' ). bool. Xác định xem truy vấn có dành cho một trang hiện có hay không .

Làm cách nào để sử dụng chức năng Is_page trong Wordpress?

is_page() – cách sử dụng cơ bản không có bất kỳ tham số nào . Nếu dùng cách này, hàm sẽ kiểm tra xem có trang nào đang hiển thị không. is_page(22) – trong ví dụ này tham số $page là một số nguyên đại diện cho ID của trang. Hàm sẽ kiểm tra xem trang đang hiển thị có phải là trang có ID = 22 không.