WP_Rewrite::iis7_url_rewrite_rules()publicWP 2.8.0

Retrieves IIS7 URL Rewrite formatted rewrite rules to write to web.config file.

Does not actually write to the web.config file, but creates the rules for the process that will.

Метод класса: WP_Rewrite{}

Хуки из метода

Возвращает

Строку. IIS7 URL rewrite rule sets.

Использование

global $wp_rewrite;
$wp_rewrite->iis7_url_rewrite_rules( $add_parent_tags );
$add_parent_tags(true|false)
Whether to add parent tags to the rewrite rule sets.
По умолчанию: false

Список изменений

С версии 2.8.0 Введена.

Код WP_Rewrite::iis7_url_rewrite_rules() WP 6.5.2

public function iis7_url_rewrite_rules( $add_parent_tags = false ) {
	if ( ! $this->using_permalinks() ) {
		return '';
	}
	$rules = '';
	if ( $add_parent_tags ) {
		$rules .= '<configuration>
<system.webServer>
	<rewrite>
		<rules>';
	}

	$rules .= '
		<rule name="WordPress: ' . esc_attr( home_url() ) . '" patternSyntax="Wildcard">
			<match url="*" />
				<conditions>
					<add input="{REQUEST_FILENAME}" matchType="IsFile" negate="true" />
					<add input="{REQUEST_FILENAME}" matchType="IsDirectory" negate="true" />
				</conditions>
			<action type="Rewrite" url="index.php" />
		</rule>';

	if ( $add_parent_tags ) {
		$rules .= '
		</rules>
	</rewrite>
</system.webServer>
</configuration>';
	}

	/**
	 * Filters the list of rewrite rules formatted for output to a web.config.
	 *
	 * @since 2.8.0
	 *
	 * @param string $rules Rewrite rules formatted for IIS web.config.
	 */
	return apply_filters( 'iis7_url_rewrite_rules', $rules );
}