回调将rel = nofollow字符串添加到HTML A元素。

原型

wp_rel_nofollow_callback( array $matches )

描述

将从字符串中删除已存在的rel =“nofollow”和rel =’nofollow’以防止使(X)HTML无效。

参数

$matches (array) (Required) 单场比赛

返回值

(string)  HTML具有rel nofollow的元素。

源文件

路径:wp-includes/formatting.php

<?php
...
function wp_rel_nofollow_callback( $matches ) {
	$text = $matches[1];
	$atts = shortcode_parse_atts( $matches[1] );
	$rel  = 'nofollow';
	if ( preg_match( '%href=["'](' . preg_quote( set_url_scheme( home_url(), 'http' ) ) . ')%i', $text ) ||
	     preg_match( '%href=["'](' . preg_quote( set_url_scheme( home_url(), 'https' ) ) . ')%i', $text )
	) {
		return "<a $text>";
	}
	if ( ! empty( $atts['rel'] ) ) {
		$parts = array_map( 'trim', explode( ' ', $atts['rel'] ) );
		if ( false === array_search( 'nofollow', $parts ) ) {
			$parts[] = 'nofollow';
		}
		$rel = implode( ' ', $parts );
		unset( $atts['rel'] );
		$html = '';
		foreach ( $atts as $name => $value ) {
			$html .= "{$name}="$value" ";
		}
		$text = trim( $html );
	}
	return "<a $text rel="$rel">";
}
...
?>

其他

英文文档:https://developer.wordpress.org/reference/functions/wp_rel_nofollow_callback/