【问题标题】:Custom theming for content type in DrupalDrupal 中内容类型的自定义主题
【发布时间】:2023-03-23 20:58:01
【问题描述】:

我可以通过复制 node.tpl.php 文件并将我的内容类型的名称放在文件名中的“节点”之后并附加一个连字符来将自定义主题应用于 Drupal 中的某个内容类型。好的,新名字是:node-page_two_columns_images.tpl.php。

但是,如果我无法编辑我的内容类型的每个字段的呈现方式,那将不会给我太大的灵活性。如果你得到 node.tpl.php 文件,这是我感兴趣的行:

<?php print $content ?>

我需要编辑 $content 中元素的呈现方式。为什么?基本上是因为页面的标题需要介于这两个元素之间……或多或少是这样的:

<div id="field-1-of-my-content-type">[stuff1]</div>
<h1><?php print $title ?></h1>
<div id="field-2-of-my-content-type">[stuff2]</div>

我可以创建一个模板文件来替换这个 $content 变量中的元素还是我需要编写自己的特定函数?

谢谢!

【问题讨论】:

    标签: drupal drupal-7 drupal-theming theming


    【解决方案1】:

    查看content template 模块。

    【讨论】:

    • 谢谢,我试试看!
    【解决方案2】:

    您可以自己打印所有元素,而不是使用$content,因为它们在节点模板中可用。这样你就可以按照你想要的方式安排标题和 CCK。

    更新:
    使用 CCK 字段为节点设置主题的最简单方法是使用 $field_[field_name]_rendered,它具有 CCK 字段的主题版本。 CCK 创建该变量以使节点更容易主题化。

    【讨论】:

    • 嗯,谢谢... 网页上有关于此信息的提示吗?如果我将字段的确切名称打印为变量 ,drupal 将返回文本“Array”
    • 您需要打印具有不同功能的数组。 print_r($var) 有效。我偏爱安装 devel 模块,然后使用 dpm($var),更结构化和 javascript 的输出更易于阅读。
    猜你喜欢
    • 1970-01-01
    • 2019-03-23
    • 2011-03-30
    • 1970-01-01
    • 1970-01-01
    • 2014-06-22
    • 1970-01-01
    • 1970-01-01
    • 2012-09-03
    相关资源
    最近更新 更多