wp_is_local_html_output

函数
wp_is_local_html_output ( $html )
Access
Private
参数
  • (string) $html Full HTML output string, e.g. from a HTTP response.
    Required:
返回值
  • (bool|null) True/false for whether HTML was generated by this site, null if unable to determine.
定义位置
相关方法
wp_is_block_themewp_filter_global_styles_postwp_is_large_user_count_wp_menu_outputis_local_attachment
引入
5.7.0
弃用
-

wp_is_local_html_output: 这个函数用来检查HTML输出是否在本地生成。它检查当前请求是否为本地请求(例如,来自同一服务器),以及是否定义了WP_LOCAL_DEV常量。

检查一个给定的HTML字符串是否可能是这个WordPress网站的输出。

这个函数试图检查各种常见的WordPress模式是否被包含在HTML字符串中。由于这些动作中的任何一个都可能通过第三方代码被禁用,这个函数也可能返回null,表示无法确定所有权。

function wp_is_local_html_output( $html ) {
	// 1. Check if HTML includes the site's Really Simple Discovery link.
	if ( has_action( 'wp_head', 'rsd_link' ) ) {
		$pattern = preg_replace( '#^https?:(?=//)#', '', esc_url( site_url( 'xmlrpc.php?rsd', 'rpc' ) ) ); // See rsd_link().
		return false !== strpos( $html, $pattern );
	}

	// 2. Check if HTML includes the site's Windows Live Writer manifest link.
	if ( has_action( 'wp_head', 'wlwmanifest_link' ) ) {
		// Try both HTTPS and HTTP since the URL depends on context.
		$pattern = preg_replace( '#^https?:(?=//)#', '', includes_url( 'wlwmanifest.xml' ) ); // See wlwmanifest_link().
		return false !== strpos( $html, $pattern );
	}

	// 3. Check if HTML includes the site's REST API link.
	if ( has_action( 'wp_head', 'rest_output_link_wp_head' ) ) {
		// Try both HTTPS and HTTP since the URL depends on context.
		$pattern = preg_replace( '#^https?:(?=//)#', '', esc_url( get_rest_url() ) ); // See rest_output_link_wp_head().
		return false !== strpos( $html, $pattern );
	}

	// Otherwise the result cannot be determined.
	return null;
}

常见问题

FAQs
查看更多 >