Как я могу программно хранить изображения в общедоступном месте на моем сайте Drupal? - PullRequest
0 голосов
/ 27 января 2010

Я пишу модуль Drupal, где пользователи отправляют контент (в формате HTML). Контент почти всегда будет содержать <img> теги. Эти теги будут ссылаться на сервер пользователя. Но я не хочу попадать на сервер пользователя каждый раз, когда запрашивается контент; Я хочу показать версию на моем сервере.

Итак, я написал функцию, которая просматривает HTML для тегов <img> и затем использует cURL для их локального сохранения. Все хорошо - за исключением того, что я не могу понять, где в моей локальной файловой системе хранить изображения, благодаря сумасшедшему переписыванию URL в Drupal. В идеале я мог бы поместить их в каталог, который уже доступен через Интернет и не должен создавать никаких новых каталогов.

Есть мысли?

ТИА
Бенджи

P.S .: Не совсем возможно использовать ImageField, так как мне нужно отобразить изображение встроенным. Спасибо!

Ответы [ 2 ]

4 голосов
/ 27 января 2010

Теоретически, вы должны иметь возможность поместить их в любое место под рутом, и они будут обслуживаемыми, но обычно изображения контента (в отличие от изображений тем) попадают в каталог files, который обычно настраивается /sites/default/files. Я обычно помещаю подпапку, чтобы добавить некоторую структуру, чтобы я поместил их в /sites/default/files/images/scraped (или что-то еще).

Примечание: путь к файлу можно получить с помощью file_directory_path . Вы также можете посмотреть на файл обработки API .

0 голосов
/ 27 января 2010

почему вы не поместили его в каталог drupal? по умолчанию сайты / по умолчанию / файлы

...