Ошибка в поле кода Drupal Display Suite: как вывести токены или встроенную сущность PHP $
Я пытаюсь получить два поля для отображения в строке. В частности, мне нужны поля Locator и Body для отображения в строке.
Мой локатор просто указывает местоположение сообщения в виде обычного текста.
то есть "Дулут, MN - "
Мое тело это история.
т.е. "В вашем доме происходят странные вещи? Огни сами по себе выключаются? Или вы слышите голоса в подвале?"
Я пытаюсь отобразить их в строке, но у меня самое сложное время.
то есть "Дулут, Миннесота - странные вещи происходят в вашем доме? Свет выключается и включается сам по себе? Или вы слышите голоса в подвале?"
Они должны быть двумя отдельными полями для использования в Geo Locator.
Я использую модуль Display Suite, и из своих поисков в Интернете я обнаружил, что можно использовать настраиваемую опцию поля кода для извлечения данных по токену или сущности PHP $.
Я могу заставить его работать нормально как с Token, так и с PHP $entity, но не могу понять, как заставить их быть встроенными?
т.е. мой результат всегда:
"Дулут, MN -
Странные вещи происходят в вашем доме? Фары выключаются и включаются сами? Или вы слышите голоса в подвале? "
Я уверен, что упускаю что-то простое и / или просто пропускаю что-то.
Вот код, который я использовал:
Работает! Лексемы!
[node:field-locator] - [node:body]
Работает! PHP!
<?php print
$entity->field_locator['und'][0]['value'];
?>
Не работает!? PHP!
<?php print
$entity->field_locator['und'][0]['value'];
" - ";
$entity->body['und'][0]['value'];
?>
Работает! PHP!
<?php print
$entity->field_locator['und'][0]['value'];
?>
<?php print
" - ";
?>
<?php print
$entity->body['und'][0]['value'];
?>
1 ответ
Если вы хотите объединить две строки в php, вы должны использовать "." оператор. Итак, для печати многих переменных в одной строке их необходимо объединить:
<?php print $entity->field_locator['und'][0]['value'] ." - " . $entity->body['und'][0]['value'];
?>
Я надеюсь, что это поможет!