Настройка УРЛов
Прислано: lsass
ср, 21/02/2007 - 17:23
Возможно ли заменить термин node в урлах на другой подходящий и понятный?
Как сформировать УРЛы вида категория/номер, а не node/номер?
- lsass's blog
- Для комментирования войдите или зарегистрируйтесь
Модуль есть хороший 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, которое его может заменить?
- Для комментирования войдите или зарегистрируйтесь
Давняя дискуссия. Пока вот общепонятного перевода не нашли. "Нода", "материал", "документ"...
Я пока знаю в русском языке только одно короткое и универсальное слово. :)
Я ставлю строчку "php_value error_reporting 7" в файл .htaccess, а вы? :)
Полный русский перевод Drupal 5.x и еще некоторых модулей.
- Для комментирования войдите или зарегистрируйтесь
Лично я буду ставить 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 можно что-то написать для подмены или в твой код добавить условие?
- Для комментирования войдите или зарегистрируйтесь










Комментарии