Как стандартные ссылки внутри сайта заменить на их псевдонимы ЧПУ?

21 января 2013 в 0:39
Аватар пользователя Waldos Waldos 0 29

Поставил набор модулей для генерации ЧПУ, все встало. Но возник вопрос как заменить ссылки типа "node/[nid]" на их псевдонимы внутри самого сайта.

Комментарии

Конфигурация - Чистые ссылки.

"Waldos" wrote:
Настройки - понятие растяжимое. О каком разделе речь?

жесть...прям там миллион однотипных разделов и миллиарды настроек?

21 января 2013 в 3:45

материал редактируй (создавай) и там слева здоровенная вкладка Настройки адресов!
если нада массово менять, то ставь Pathauto

22 января 2013 в 7:47

natbampo wrote:
Waldos, непонятно что у вас не получается, что вы понимаете под "внутри самого сайта". В текст ноды?

Внутри самого сайта - ссылки на материалы на страницах сайта. Например, ссылки на ноды в тизерах views.

23 января 2013 в 4:49

xSPiRiTx wrote:
решено?

Нет.
natbampo wrote:
intlinks

Честно говоря, не совсем понятно как этот модуль взаимодействует с механизмом генерации ЧПУ и взаимодействует ли вообще.

23 января 2013 в 20:00

Механизм генерации ЧПУ работает и так Wink , вы просто абсолютно не способны объяснить что у вас не так и что вам надо.
Давайте ссылку на сайт, указывайте проблемную страницу, иначе бестолку.

24 января 2013 в 9:57

"Waldos" wrote:
Внутри самого сайта - ссылки на материалы на страницах сайта. Например, ссылки на ноды в тизерах views.

Если у вас, все корректно настроено, синонимы все обновлены, удалены дубликаты, то реальный урл (node/589) вы видеть не должны. Только если вы заходите в редактирование ноды или термина, вы видите реальный урл. Разлогиньтесь и посмотрите, действительно ли нода имеет ЧПУ?

24 января 2013 в 23:40

vitaboss wrote:

Если у вас, все корректно настроено, синонимы все обновлены, удалены дубликаты, то реальный урл (node/589) вы видеть не должны. Только если вы заходите в редактирование ноды или термина, вы видите реальный урл. Разлогиньтесь и посмотрите, действительно ли нода имеет ЧПУ?

Устанавливал и настраивал ЧПУ в соответствии с инструкцией, синонимы обновлял. Но урл ЧПУ отображается только в адресной строке при переходе по ссылке, в остальных случаях почему-то отображается реальный урл...

25 января 2013 в 3:02

"Waldos" wrote:
Устанавливал и настраивал ЧПУ в соответствии с инструкцией

Инструкция для 7-ки, а у тебя 6-ка.
"Waldos" wrote:
синонимы обновлял

как и кому ты их обновлял?

25 января 2013 в 9:42

"natbampo" wrote:
Устанавливал и настраивал ЧПУ в соответствии с инструкцией,

Такой глюк есть! На днях разбирался с этим сам. Модуль pathauto по инструкции обновлять урлы должен во вкладке массовое обновление, кажется. Явление обманчивое... Не во всех нодах стоит чекбокс обновлять синоним урла автоматически. Почему это я так и не понял, думаю, что это зависит от типа материла, и от способа его создания. В моем случае было массовое создание нод (более 1000).

Решение вопроса: Заходим в содержимое, фильтром сортируем нужные ноды, отмечаем все чекбоксом, выбираем действие "обновить урлы", применяем действие. В этом случае чпу создадутся если не были созданы и обновятся старые, если созданы новые правила pathauto.

Решено?

P.S. ИМХО Транслитерация тоже неверно работает. Кому интересно, я вот здесь в последних комментариях написал как я решил вопрос.

25 января 2013 в 17:40

vitaboss wrote:

Решено?

Действительно, после этого действия ссылки стали отображаться корректно. Спасибо за совет!
Однако попутно обнаружил, что корректное отображение ссылок наблюдается только там, где для вывода используются штатные средства друпал (тот же views, например). А если использовать рукописный шаблон и для вывода ссылки использовать, например, конструкцию вида

<a href="/node/123" title="">Ссылка на ноду</a>

То никакой замены не происходит и все остается на своих местах((( Как это можно победить?

25 января 2013 в 19:04

"Waldos" wrote:
А если использовать рукописный шаблон и для вывода ссылки использовать, например, конструкцию вида
<а hrеf="/nоdе/123" titlе="">Ссылка на ноду

То никакой замены не происходит и все остается на своих местах((( Как это можно победить?


Это действительно так.
По этому поводу у меня тоже были проблемы, этот вопрос очень важен для сеошников. При изменении/обновлении ссылок, в текстах они действительно где-то менялись, а где-то нет. Точно сказать сейчас не могу. Проблема была это точно. Решение вопроса, был очень близок, сейчас уже не помню. Точно могу сказать, что если использовать модуль перелинковки на автомате, то проблемы нет, ссылки обновляются тоже на автомате. И в визуальном редакторе, мне кажется нужно писать кажется, не /node/123, а node/123. А какой-то редактор, вообще понимает ссылку на ноду просто цифрой, т.е. пишем 123 и он знает полностью урл. Еще есть предположение (уверен на 90%), что если в текстовый редактор вы внутреннюю ссылку написали полность с http:// он ее при обновлении игнорирует, считая за внешнюю. С модулем перелинковки не разбирался досконально, может в нем есть ручные настройки. Тогда с обновление ссылок проблем не должно быть.

Если будите экспериментировать, поделитесь успехом, если можно.

26 января 2013 в 0:07

Поигрался с настройками модуля перелинковки, но успеха это не принесло. Видимо, автоматических механизмов замены внутренних линков в самописных шаблонах пока не предусмотрено...
Проблему решил с помощью использования функции drupal_get_path_alias(). Благодарю за обсуждение!

26 января 2013 в 1:21

"Waldos" wrote:
Поигрался с настройками модуля перелинковки, но успеха это не принесло.

Работает обновление урлов с перелинковкой - это точно!

26 января 2013 в 1:31

"Waldos" wrote:
Видимо, автоматических механизмов замены внутренних линков в самописных шаблонах пока не предусмотрено..

Это то про что я тут говорил.
Ссылки в тексте записываются в виде типа таком "internal:node/555" и заменяются фильтром автоматически.
Удобнее как бы для редактора чем ваши вкрапления php кода.

26 января 2013 в 9:54

"natbampo" wrote:
Ссылки в тексте записываются в виде типа таком "internal:node/555" и заменяются фильтром автоматически.
Удобнее как бы для редактора чем ваши вкрапления php кода.

Т.е. модуль ищет по содержимому ноды ссылки, которые вставлены с помощью редактора и заменяет их на алиасы?

26 января 2013 в 15:05

vitaboss, он ищет по телу ноды ссылки спец. формата. В редакторе когда вводишь url нужно вводить этот внутренний путь вместо жесткой ссылки синонима.
Под 6-ку был pathfilter там описан принцип.

И синоним у пути можно хоть до посинения менять, все что на на этот путь ссылается, будет ссылаться по актуальному синониму.

26 января 2013 в 16:32

"natbampo" wrote:

Афигенно! Спасибо.
Поиском такого модуля особо не занимался, а проблемы в связи с этим накопились.
Теперь есть чем разрулить. Еще раз спасибо.

27 января 2013 в 4:34