【问题标题】:Drupal 7 - Splitting up the contentDrupal 7 - 拆分内容
【发布时间】:2011-07-27 16:07:10
【问题描述】:

我对 Drupal 很陌生,所以我希望这很容易。

我得到了一个模板,可以剪切并导入 Drupal 7。

我希望用户为每个特定页面添加任意数量的图像,因此我在“基本页面”内容类型的“管理显示”上启用了无限的图像字段。

到目前为止,这是完美的,它允许他们选择一堆他们想要附加到页面的图像。

我遇到问题的部分是,当我查看页面时,它会与正文内容一起显示。

我拥有的模板,将图像放在 HTML 的最顶部,将正文内容放在 HTML 的底部。

我正在使用

<?php print render($page['content']); ?>

在我的 page.tpl.php 文件中。

有什么方法可以进一步深入,只在模板的一个部分显示“正文”,然后循环在模板的另一部分显示图像?

任何帮助都会很棒,我已经为此奋斗了好几个小时了。

干杯,

【问题讨论】:

  • 您是否有理由不为此使用视图?
  • 是的,我不知道那是什么哈哈哈
  • 好吧,你应该研究一下——它是一个非常常用的模块。在这种情况下,它可能不是您想要的,但如果您正在使用 Drupal drupal.org/project/views,则应该注意它

标签: drupal drupal-7


【解决方案1】:

我主要使用 Drupal 6 并没有在 Drupal 7 中亲自测试过 Contemplate,但希望我能给您一些关于从哪里开始的想法。

图像是节点内容的一部分,当然,当您在主题中打印$page['content'] 时,您无法获得任何控制。向下钻取的难点在于找出所有内容的正确名称,因此我们在 Drupal 6 中一直用于解决您的问题的解决方案是 Contemplate module

Contemplate 是“内容模板”,它通过为您提供您所关注的字段的名称和一个包含数据的示例节点来帮助您解决这个问题,这样您就可以浏览它并了解如何挑选正确的名称。然后它允许您保存模板并在渲染节点内容时使用它。

现在 Drupal 7 中似乎可以使用 Contemplate,当前版本是 7.x-1.0-alpha2。 Contemplate 在 Drupal 6 中对我们来说非常有用,因此在 Drupal 7 中可能值得一试。

【讨论】:

  • 当...那行得通...在我的page.tpl.php文件中我把 body['und'][0]['value']; ?> 它似乎刚刚打印出正文……我想知道它是否保留了所有格式
【解决方案2】:

是的,D7 让这一切变得简单:

<?php print render($content['body']); ?>

对于任何领域:

<?php print render($content['field_my_field_name']); ?>

请注意,您在 node.tpl.php 而不是 page.tpl.php 中执行此操作

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-01-18
    • 2015-07-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多