Есть страница на сайте, содержимое которой время от времени (в среднем один-два раза в месяц) изменяется.
Содержимое может автоматически формироваться на основе данных из информационной системы. Но у сайта с Drupal по соображениям безопасности доступа к этой информационной системе нет.
Я думаю формировать это содержимое на каком-нибудь сервере, после чего загружать его на сервер с Drupal.
Я вижу два способа.
1. Подключаюсь с БД с Drupal и обновляю данные прямо в таблице field_data_* и field_revision_*.
2. Подключаюсь по FTP к серверу с Drupal и сохраняю в html-файл. На странице сайта это содержимое отображается с помощью вставки PHP-кода.
Какой способ лучше? Или может быть лучше делать по другому?
Комментарии
Категорически не рекомендуется. Почему - поймете когда дообновляетесь.
2 подход вернее.
Понятно.
А нет ли модуля, который бы умел вставлять в страницу внешний документ?
Чтобы я не PHP-код вставлял, а писал например:
[include=file.html]
А что просто iframe с другого сервера не открыть? http://htmlbook.ru/html/iframe
К чему этот колхоз?
Я не знаю, какой будет высота и ширина блока.
И мне нужно вставить только фрагмент HTML-кода в текущую страницу (к которой уже подключены стили, скрипты), а не страницу целиком.
А почему вы этого не знаете? Вы же сами являетесь администратором и одного и другого ресурса, разве нет?
А так, сделайте через Feeds, всяко будет более drupal way, нежели инклудить html
Потому что этот блок формируется динамически и его содержимое бывает разным.
Feeds по описанию не совсем то — мне не нужно импортировать ноду целиком, у меня есть нода, но определенный ее фрагмент должен периодически обновляться. Кроме того, под Drupal 7 этот проект в стадии альфа-тестирования.
через file_get_content можете тянуть данные с другого сервера.и неважнокакого "размера" они будут,всё корректно впишется.
инклудить с другого сервера можно,для этого надо включить allow_url_include в пхп, но никогда этого не делайте,опасно.