我很难找到关于如何在我的Drupal站点中在打印的php变量的同一行添加文本的答案。它必须非常容易,但我正在学习。当我输入
Time:<?php print render($content['field_duration']); ?>minutes
我明白了:
Time:
5
minutes
无论如何要让它成为“时间:5分钟”?
答案 0 :(得分:2)
如何将常量字符串放在PHP中?
<?php print render($dur = 'Time: ' . implode($content['field_duration']) . ' minutes'); ?>
render函数通过引用获取参数,因此字符串必须存储在变量中。 implode函数使数组成为一个字符串。
答案 1 :(得分:1)
更“Drupal”的方式:
$field_items = field_get_items('node', $node, 'field_duration');
echo 'Time: ' . $field_items[0]['value'] . ' minutes';
最好将它放在预处理函数中并将变量传递给模板文件,而不是直接在那里进行,但逻辑应该适用于你放置的任何地方。
答案 2 :(得分:0)
尝试
&lt;?php print render(“Time:{$ content ['field_duration']} minutes”); ?&GT;
希望这会有所帮助。
答案 3 :(得分:0)
我想用css或没有render()来解决它会更容易。
CSS就像这样:
<style>
#text, #time {
float: left;
}
</style>
<div>
<div id="text">Time: </div>
<div id="time">
<?php print render($content['field_duration']); ?>
</div>
</div>
没有render() - 只需自己输出$content['your_field']
。 var_dump()
此变量用于确定它包含哪些数据,然后直接echo
此数据(如果是数组则通过foreach
)。我希望它能够正常工作。