Drupal 7: печать темы из меню хуков с хорошей производительностьюPhp

Кемеровские программисты php общаются здесь
Ответить Пред. темаСлед. тема
Anonymous
 Drupal 7: печать темы из меню хуков с хорошей производительностью

Сообщение Anonymous »

Я работаю над меню-привязкой для пользовательского маршрута, вот так:

Код: Выделить всё

function mymodule_menu() {
$items = [];
$items['myroute/%'] = array(
'page callback'     => 'my_callback',
'page arguments'     => array(1),
'access arguments'  => array('access content'),
);
return $items;
}
В theme_hook я добавил новую функцию шаблона, например:

Код: Выделить всё

function mymodule_theme($existing, $type, $theme, $path) {
$default = array(
'path' => drupal_get_path('module', 'mymodule') . '/templates',
'variables' => array(),
);
return array(
'product_tile' => array_merge($default, array(
'template' => 'product-tile',
)),
);
}
Я создал файл шаблона под названием «product-tile.tpl.php», который отлично работает во всех ситуациях и является частичным шаблоном.
В функции обратного вызова мне нужно вернуть определенный шаблон .tpl.php, например:

Код: Выделить всё

function my_callback($parameter) {

$template_data = 'lorem ipsum';
$output = theme('product_tile', array('content' => $template_data ));
echo ($output);

}
Дело в том, что функция 'theme()' слишком долго обрабатывает данные и отображает не только шаблон, но и всю html-структуру, которая не нужна и не нужна. часть шаблона.
Пример: шаблон: Но когда я получаю ответ на '/myroute/myparameter, вместо печати моего шаблона он печатает всю структуру HTML следующим образом:

Код: Выделить всё

......lots of stuff here +js +css + all drupal stuff



И печать занимает много времени (около 10 секунд или больше).
Я пытался кэшировать его с помощью кэша_get и кэш_сет, но странно что-то происходит, например, случайные пустые ответы.
Кто-нибудь знает более эффективный способ распечатать частичный шаблон в крючковом меню в Drupal 7? Это ужасно медленно.
Заранее спасибо

Подробнее здесь: https://stackoverflow.com/questions/572 ... erformance
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение
  • Как избежать многократного вызова хуков для темы и адаптивных стилей в нативных компонентах React?
    Anonymous » » в форуме Javascript
    0 Ответы
    38 Просмотры
    Последнее сообщение Anonymous
  • \Drupal::request()->getRequestUri(); не обновляются параметры предварительной обработки Drupal
    Anonymous » » в форуме Php
    0 Ответы
    118 Просмотры
    Последнее сообщение Anonymous
  • Использование Drupal Cache API для кэширования объектов Drupal
    Anonymous » » в форуме Php
    0 Ответы
    65 Просмотры
    Последнее сообщение Anonymous
  • Drupal 8.9.19 — Drupal 9.0.0
    Anonymous » » в форуме Php
    0 Ответы
    38 Просмотры
    Последнее сообщение Anonymous
  • Drupal 8.9.19 — Drupal 9.0.0
    Anonymous » » в форуме Php
    0 Ответы
    28 Просмотры
    Последнее сообщение Anonymous

Вернуться в «Php»