Как распечатать данные на панели панели в Drupal 7? - PullRequest
0 голосов
/ 30 апреля 2018

Я пытаюсь отправить данные на панель панели.

У меня есть простой файл .tpl, который сейчас просто печатает сообщение:

<?php print $message; ?>

Однако у меня возникают проблемы с отправкой данных сообщения в этот .tpl. Приведенный выше текст ничего не возвращает.

В моем файле .module есть:

/**
 * Implements hook_ctools_plugin_directory().
 */
function message_ctools_plugin_directory($owner, $plugin_type) {
  if (($owner === 'ctools' && !empty($plugin_type)) || ($owner === 'panels' && $plugin_type === 'styles')) {
    return "plugins/$plugin_type";
  }
}

/**
 * Implements hook_theme().
 */
function message_theme() {
  return [
    'message_base' => [
      'template' => 'theme/message',
      'variables' => [
        'message' => '',
      ],
    ],
  ];
}

А на панели .inc файл у меня есть:

function message_panel_render($subtype, $conf, $args, $contexts) {
  $block = new stdClass();

  $config = default_settings();

  $block->content = [
    '#theme' => 'message_base',
    'message' => filter_xss($config['message']),
  ];

  return $block;
}

Когда я dpm($block); в рамках вышеуказанной функции, я вижу все правильно. Кажется, что ничего не доходит до файла .tpl.

Кто-нибудь знает, что я здесь не так сделал?

1 Ответ

0 голосов
/ 30 апреля 2018

Нашел, что он работал с # на '#message' => filter_xss($config['message']),

...