Аватар пользователя Dima

Ссылки в drupal (продолжение)

И так, в продолжение к вчерашней статье про ссылки в drupal, сегодня расскажу как я прописываю пути к картинкам в файлах шаблонов. Казалось бы проблемы не существует, можно указать относительный путь и все будет нормально. Но не всегда получается именно так. Не буду вдаваться в подробности, просто для тех кто сталкивался с подобной проблемой расскажу свой вариант ее решения.
Допустим у нас есть картинка в шаблоне, относительный путь к ней будет выглядеть следующим образом: <img scr="themes/название_темы/имя_картинки"/>. Но этот вариант будет не всегда корректно передавать путь к картинке. Можно было бы прописать полный путь, но что если у вас сайт разрабатывается на одном домене а эксплуатироваться будет на другом?
Решением является создание абсолютной ссылки которая не будет привязана ни к домену, ни к структуре папок сайта. (условие - картинка находиться в папке темы) .
В этом нам поможет 2 глобальные переменные друпала $base_url и $theme_path. Имея эти переменные мы можем запросто создать абсолютный путь к ресурсу нашего сайта. Код будет таким:
 <?php global $theme_path; $base_url; print "<img scr='"$base_url."/".$theme_path."/имя_картинки' />"; ?>
Вот и всё). Пользуйте.

Комментарии

Немного переиначил и получил

Немного переиначил и получил такой вариант:
 <img src='<?php print base_path().path_to_theme()."/img/headers/img_02.png"; ?> ' alt="" width="833" height="187" />
он работает.

функции base_path() и path_to_theme()

Функции  base_path() и  path_to_theme() все равно используют выше упомянутые глобальные переменные. А в чем собственно проблема? Не работал код?