Обрабатывать токен из контекста панели в плагине типа контента ctools


У меня есть плагин типа контента ctools. Он имеет простую форму настроек текстового поля. Там я помещаю маркер из содержимого панели, например, %vn_subject: vn-тема-facebook-ссылка. Затем я превращаю это в шаблон. Однако он просто выводит токен, как указано выше, без его обработки. Как я могу обработать токен, если это возможно, чтобы получить требуемое значение поля? Спасибо

Author: kiamlaluno, 2013-08-15

1 answers

Волшебная функция ctools_context_keyword_substitute

Ключ к тому, чтобы это работало, - убедиться, что вы используете флаг all contexts в конфигурации вашего плагина.

$plugin = array(
  'single' => TRUE,
  'title' => t('Instagram'),
  'category' => t('Content'),
  'all contexts' => TRUE,
);

/**
 * Render the custom content type.
 */
function MODULE_PANE_content_type_render($subtype, $conf, $panel_args, $context) {

  ....

  $replaced = ctools_context_keyword_substitute('your_string_with_%keywords', array(), $context);

  ....
}
 3
Author: Letharion, 2015-06-12 15:28:03