WordPress как на ладони
Недорогой хостинг для сайтов на WordPress: wordpress.jino.ru Хостинг, VPS/VDS и отдельные сервера только на SSD дисках. 7 дней бесплатного тестирования.
функция не описана

WP_Rewrite::mod_rewrite_rules() WP 1.5.0

Retrieves mod_rewrite-formatted rewrite rules to write to .htaccess.

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

Will add the non_wp_rules property rules to the .htaccess file before the WordPress rewrite rules one.

Это метод класса: WP_Rewrite

Хуков нет.

Возвращает

Строку.

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

$WP_Rewrite = new WP_Rewrite();
$var = $WP_Rewrite->mod_rewrite_rules();

Код WP_Rewrite::mod_rewrite_rules: wp-includes/class-wp-rewrite.php VER 5.0.1

<?php
public function mod_rewrite_rules() {
	if ( ! $this->using_permalinks() )
		return '';

	$site_root = parse_url( site_url() );
	if ( isset( $site_root['path'] ) )
		$site_root = trailingslashit($site_root['path']);

	$home_root = parse_url(home_url());
	if ( isset( $home_root['path'] ) )
		$home_root = trailingslashit($home_root['path']);
	else
		$home_root = '/';

	$rules = "<IfModule mod_rewrite.c>\n";
	$rules .= "RewriteEngine On\n";
	$rules .= "RewriteBase $home_root\n";

	// Prevent -f checks on index.php.
	$rules .= "RewriteRule ^index\.php$ - [L]\n";

	// Add in the rules that don't redirect to WP's index.php (and thus shouldn't be handled by WP at all).
	foreach ( (array) $this->non_wp_rules as $match => $query) {
		// Apache 1.3 does not support the reluctant (non-greedy) modifier.
		$match = str_replace('.+?', '.+', $match);

		$rules .= 'RewriteRule ^' . $match . ' ' . $home_root . $query . " [QSA,L]\n";
	}

	if ( $this->use_verbose_rules ) {
		$this->matches = '';
		$rewrite = $this->rewrite_rules();
		$num_rules = count($rewrite);
		$rules .= "RewriteCond %{REQUEST_FILENAME} -f [OR]\n" .
			"RewriteCond %{REQUEST_FILENAME} -d\n" .
			"RewriteRule ^.*$ - [S=$num_rules]\n";

		foreach ( (array) $rewrite as $match => $query) {
			// Apache 1.3 does not support the reluctant (non-greedy) modifier.
			$match = str_replace('.+?', '.+', $match);

			if ( strpos($query, $this->index) !== false )
				$rules .= 'RewriteRule ^' . $match . ' ' . $home_root . $query . " [QSA,L]\n";
			else
				$rules .= 'RewriteRule ^' . $match . ' ' . $site_root . $query . " [QSA,L]\n";
		}
	} else {
		$rules .= "RewriteCond %{REQUEST_FILENAME} !-f\n" .
			"RewriteCond %{REQUEST_FILENAME} !-d\n" .
			"RewriteRule . {$home_root}{$this->index} [L]\n";
	}

	$rules .= "</IfModule>\n";

	/**
	 * Filters the list of rewrite rules formatted for output to an .htaccess file.
	 *
	 * @since 1.5.0
	 *
	 * @param string $rules mod_rewrite Rewrite rules formatted for .htaccess.
	 */
	$rules = apply_filters( 'mod_rewrite_rules', $rules );

	/**
	 * Filters the list of rewrite rules formatted for output to an .htaccess file.
	 *
	 * @since 1.5.0
	 * @deprecated 1.5.0 Use the mod_rewrite_rules filter instead.
	 *
	 * @param string $rules mod_rewrite Rewrite rules formatted for .htaccess.
	 */
	return apply_filters( 'rewrite_rules', $rules );
}