Краткое содержание. В папке:
/sites/default/
есть файл — settings.php, сними с него атрибут только для чтения, вставь код:
<?php
// Example for Drupal 4.7.x and up
function custom_url_rewrite($type, $path, $original) {
// This path was already aliased, skip rewriting it
if ($path != $original) {
return $path;
}
if ($type == 'source') { // URL coming from a client
return preg_replace('!^display/(\d+)$!', 'node/\1', $path);
}
elseif ($type == 'alias') { // URL going out to a client
return preg_replace('!^node/(\d+)$!', 'display/\1', $path);
}
}
?>
Убери из этого примера первую и последнюю строчки (которые со знаком вопроса). Сохрани файл и верни атрибут только для чтения. В создаваемых документах слово node будет заменено на слово — display. Это слово использовано в примере. Хочешь другое, замени на то которое тебе нравится.
В Drupal 5.1 работает.
Ну во-первых можно создать path alias вручную.
А если хочется атоматизации, то да, pathauto
---
---
All content management systems suck, Drupal just happens to suck less. -- Boris Mann at DrupalCON Amsterdam, August 2005.
Давняя дискуссия. Пока вот общепонятного перевода не нашли. "Нода", "материал", "документ"...
Я пока знаю в русском языке только одно короткое и универсальное слово.
Я ставлю строчку "php_value error_reporting 7" в файл .htaccess, а вы?
// Example for Drupal 4.7.x and up
function custom_url_rewrite($type, $path, $original) {
// This path was already aliased, skip rewriting it
if ($path != $original) {
return $path;
}
if ($type == 'source') { // URL coming from a client
return preg_replace('!^display/(\d+)$!', 'node/\1', $path);
}
elseif ($type == 'alias') { // URL going out to a client
return preg_replace('!^node/(\d+)$!', 'display/\1', $path);
}
}
можно подставить ".html", т.е. чтобы ссылки были вида node/15.html?
RISK, интересный код, а может подскажешь, можно ли сделать так, чтобы урл менялся в зависимости от типы ноды... например если тип ноды "тема форума", то вместо node бы писалось - topic
а если статья - то - article
может в node-мой тип.tpl.php можно что-то написать для подмены или в твой код добавить условие?
Комментарии
Модуль есть хороший pathauto
PathAuto - отличная вещь! Подробнее http://drupal.ru/node/3985
>Возможно ли заменить термин node в урлах на другой подходящий и понятный?
Вот по этому адресу оригинальная статья: Mass URL aliasing
Краткое содержание. В папке:
/sites/default/
есть файл — settings.php, сними с него атрибут только для чтения, вставь код:
<?php
// Example for Drupal 4.7.x and up
function custom_url_rewrite($type, $path, $original) {
// This path was already aliased, skip rewriting it
if ($path != $original) {
return $path;
}
if ($type == 'source') { // URL coming from a client
return preg_replace('!^display/(\d+)$!', 'node/\1', $path);
}
elseif ($type == 'alias') { // URL going out to a client
return preg_replace('!^node/(\d+)$!', 'display/\1', $path);
}
}
?>
Убери из этого примера первую и последнюю строчки (которые со знаком вопроса). Сохрани файл и верни атрибут только для чтения. В создаваемых документах слово node будет заменено на слово — display. Это слово использовано в примере. Хочешь другое, замени на то которое тебе нравится.
В Drupal 5.1 работает.
Ну во-первых можно создать path alias вручную.
А если хочется атоматизации, то да, pathauto
---
---
All content management systems suck, Drupal just happens to suck less. -- Boris Mann at DrupalCON Amsterdam, August 2005.
Спасибо всем за рекоммендации, будем копать
интересно, а кто знает такое же хорошее короткое слово, как и node, которое его может заменить?
Давняя дискуссия. Пока вот общепонятного перевода не нашли. "Нода", "материал", "документ"...
Я пока знаю в русском языке только одно короткое и универсальное слово.
Лично я буду ставить docs (или doc) - то есть документ(ы)
А как в этот код
// Example for Drupal 4.7.x and up
function custom_url_rewrite($type, $path, $original) {
// This path was already aliased, skip rewriting it
if ($path != $original) {
return $path;
}
if ($type == 'source') { // URL coming from a client
return preg_replace('!^display/(\d+)$!', 'node/\1', $path);
}
elseif ($type == 'alias') { // URL going out to a client
return preg_replace('!^node/(\d+)$!', 'display/\1', $path);
}
}
можно подставить ".html", т.е. чтобы ссылки были вида node/15.html?
Все, сам разобрался
RISK, интересный код, а может подскажешь, можно ли сделать так, чтобы урл менялся в зависимости от типы ноды... например если тип ноды "тема форума", то вместо node бы писалось - topic
а если статья - то - article
может в node-мой тип.tpl.php можно что-то написать для подмены или в твой код добавить условие?