2016-02-02 2 views
0

У меня есть модуль Я кладу вместе, и я использую этот код для загрузки программно узла и получить его разметку:Drupal Узел визуализация: нагрузки полной страницы (скрипты, голова ... все)

<?php 
    $node = node_load($nid); 
    $node_view = node_view($node, 'full'); 
    $rendered_node = drupal_render($node_view); 
    echo $rendered_node; 
?> 

Однако ... пока он дает мне тематический вывод узла (разметка из самого содержимого узла, а не информация о шаблоне страницы и html, которая будет загружена для этого экземпляра узла), она не дает мне всю информацию, которую я хочу , Мне бы очень хотелось получить полный вывод того, что будет со всей тематической страницей, которая включает теги HTML, тег HEAD и весь контент.

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

Возможно ли это? Большое спасибо за любую помощь!

ответ

0

я бы об этом так:

$my_page_callback_result = menu_execute_active_handler("node/$nid", false); 

Взгляните на этот массив, он содержит много переменных, мы надеемся, те, которые вам нужны. Additionaly, вы можете сделать следующее, чтобы получить полностью оказанные HTML страницы:

$my_full_html = drupal_deliver_html_page($my_page_callback_result); 

Обе эти функции документируются здесь:

здоровается

+0

Спасибо! Верьте или нет, я пытался это сделать, но у меня пока не получилось работать. Кажется, когда я вызываю «drupal_deliver_html_page», он отправляет данные через HTTP, и я получаю весь контент, загруженный на страницу ... нужно просто посмотреть информацию, которую я хочу изолировать внутри переменной ... спасибо, хотя вы ведете меня по хорошей дорожке! –

+0

Это сделало трюк, в настоящее время возвращает строку: drupal_render_page ($ page) –

+0

Отлично, я тоже кое-что узнал. –

Смежные вопросы