Eine auf WordPress spezialiserte Suchmaschine für Entwickler und Theme-Autoren



wp_robots ›

Seit5.7.0
Veraltetn/v
wp_robots ( Keine Parameter )
Definiert in:
Codex:

Displays the robots meta tag as necessary.

Gathers robots directives to include for the current context, using the {@see 'wp_robots'} filter. The directives are then sanitized, and the robots meta tag is output if there is at least one relevant directive.


Quellcode

function wp_robots() {
	/**
	 * Filters the directives to be included in the 'robots' meta tag.
	 *
	 * The meta tag will only be included as necessary.
	 *
	 * @since 5.7.0
	 *
	 * @param array $robots Associative array of directives. Every key must be the name of the directive, and the
	 *                      corresponding value must either be a string to provide as value for the directive or a
	 *                      boolean `true` if it is a boolean directive, i.e. without a value.
	 */
	$robots = apply_filters( 'wp_robots', array() );

	// Don't allow mutually exclusive directives.
	if ( ! empty( $robots['follow'] ) ) {
		unset( $robots['nofollow'] );
	}
	if ( ! empty( $robots['nofollow'] ) ) {
		unset( $robots['follow'] );
	}
	if ( ! empty( $robots['archive'] ) ) {
		unset( $robots['noarchive'] );
	}
	if ( ! empty( $robots['noarchive'] ) ) {
		unset( $robots['archive'] );
	}

	$robots_strings = array();
	foreach ( $robots as $directive => $value ) {
		if ( is_string( $value ) ) {
			// If a string value, include it as value for the directive.
			$robots_strings[] = "{$directive}:{$value}";
		} elseif ( $value ) {
			// Otherwise, include the directive if it is truthy.
			$robots_strings[] = $directive;
		}
	}

	if ( empty( $robots_strings ) ) {
		return;
	}

	echo "<meta name='robots' content='" . esc_attr( implode( ', ', $robots_strings ) ) . "' />\n";
}