У заказчика возникла необходимость сделать все ссылки сайта абсолютными, чтобы затруднить воровство контента сайта.
Поискал решение модулями и не нашёл. Абсолютные в относительные можно (есть модуль), а в обратную сторону - не нашёл.
Решил хаком ядра (прилагаю diff).
Меняется только значение по умолчанию параметра $absolute функций l() и url().
Функция url()
Найти 1149 стоку в файле common.inc и заменить
<?php
function url($path = NULL, $query = NULL, $fragment = NULL, $absolute = FALSE) {
?>
на
<?php
function url($path = NULL, $query = NULL, $fragment = NULL, $absolute = TRUE) {
?>
Функция l()
Найти 1274 стоку в файле common.inc и заменить
<?php
function l($text, $path, $attributes = array(), $query = NULL, $fragment = NULL, $absolute = FALSE, $html = FALSE) {
?>
на
<?php
function l($text, $path, $attributes = array(), $query = NULL, $fragment = NULL, $absolute = TRUE, $html = FALSE) {
?>
Возможных побочных эффектов я придумать не смог.
Может быть они все же есть?
Подскажите где это может выйти боком.
Вложение | Размер |
---|---|
common.inc_.diff | 1.15 КБ |
Комментарии
Странное решение. Примитивный регскейп легко ссылки вернет как нужно
Могут ли быть побочные эффекты того, что все ссылки стали абсолютными?
а бе3 хаков так и не нашли способ этого добиться?
нашли, поиск рулит
http://drupal.org/project/pathologic
http://drupal.org/project/rel_to_abs
круто, я просто за 15 минут не смог
http://drupal.org/search/apachesolr_multisitesearch/make%20urls%20absolute