Как сделать так, чтобы URL-адрес результатов поиска Drupal 6 имел ".html" в конце?


Я хочу, чтобы URL-адрес результата поиска стал

http://www.site.com/search/node/Search for something.html
http://www.site.com/search/node/cars.html

Я просмотрел custom_url_rewrite_outbound(), но я мало что могу понять

Author: kiamlaluno, 2011-04-02

1 answers

Custom_url_rewrite_outbound() - не единственная функция, которую вам нужно разместить в settings.php ; вам также понадобится custom_url_rewrite_inbound(), который преобразует URL-адрес обратно в тот, который известен Drupal.

Для этих функций вы можете использовать код, аналогичный следующему:

function custom_url_rewrite_outbound(&$path, &$options, $original_path) {
  if (preg_match('|^search/([^/]+)/(.+)|', $path, $matches)) {
    $path = 'search/' . $matches[1] . '/' . $matches[2] . '.html';
  }
}

function custom_url_rewrite_inbound(&$result, $path, $path_language) {
  if (preg_match('|^search/([^/]+)/(.+)\.html$|', $path, $matches)) {
    $result = 'search/' . $matches[1] . '/' . $matches[2];
  }
}
 1
Author: kiamlaluno, 2011-04-02 16:04:04