3

我们正在构建一个用于为电子邮件通讯生成 HTML 的模块。我们已经研究过使用其他一些模块(SimpleNews、MailChimp 等),但由于各种需求,我们构建自定义解决方案会更容易、更好。

作为一个新的 Drupal 开发人员,我有点担心以“非 Drupal”的方式处理这个问题。话虽如此,我的计划是设置一个词汇表,其中 Newsletters 作为一个术语,而实际的 Newsletters 作为子术语,如下所示:

Newsletters  (term)
  - Newsletter A (sub-term)
  - Newsletter B (sub-term)

这有一个额外的好处,就是能够组织文章的发布位置(除了在网站上)。

但是,问题是如何处理不同的时事通讯问题。我可以更深入地了解词汇,如下所示:

Newsletters  (term)
  - Newsletter A (sub-term)
    - Issue - 2010-03-01
    - Issue - 2010-03-02
  - Newsletter B (sub-term)
    - Issue - 2010-03-01
    - Issue - 2010-03-08

但我想知道这是否增加了太多的复杂性。一旦我有了这个分类设置,当用户去添加新的时事通讯时,它也会创建一个节点(内容类型:时事通讯),当他/她去添加新问题时,它也会创建一个节点(内容类型:问题.) 这些将成为该内容的登录页面。

那么,问题是有没有更好的方法来处理这种结构?这是一个类似 Drupal 的解决方案吗?

4

2 回答 2

1

我认为您肯定在考虑 Drupal-Like,特别是因为您正在考虑使用分类法对您的时事通讯进行分类。

我认为您的“问题 - 2010-03-01”实际上是一个节点而不是一个术语。(除非您计划创建多个文章节点来引用单个“问题”)

查看模块:http ://drupal.org/project/nat (NAT - 节点自动术语),它管理节点和分类之间的关系。使用此模块,您只需为每个 Newsletter(子项)创建一个新节点。这将自动为您创建新术语。然后,您将创建一个新的问题节点,您将在其中选择您希望发布该时事通讯的“时事通讯”类别。

您也许可以使用注册模块(甚至标志模块)来允许用户注册加入您的时事通讯节点。(http://drupal.org/project/signup

于 2010-04-13T15:52:31.590 回答
0

我想知道当有问题的节点类型时,为什么用户应该首先创建一个类型为时事通讯的节点?拥有第二种节点类型的目的是什么?

关于您的分类层次结构,您几乎处于 Drupal 的轨道上。我不会创建一个名为“Newsletters”的术语(我还不明白这一点),而是创建一个名为“Newsletters”的词汇表。在这个词汇表中,我将创建描述可用的不同时事通讯的一级术语(即“时事通讯 A”)。

接下来,您将词汇“Newsletters”与您的内容类型“issue”联系起来。

正如 xkingpin 正确指出的那样,NAT(http://drupal.org/project/nat)将是您选择的模块,因此安装它并为内容类型“问题”设置新选项(即问题术语的链接) .

然后您使用您的问题节点类型来创建问题(我假设所有时事通讯共享相同的内容类型)。选择分类法后,您只需选择本期所属的正确通讯术语(即“通讯 A”)。NAT 会自动将此术语分配给问题,并为该第一级术语创建子术语。子术语的名称将与您的问题的标题相匹配,因此您可以将其命名为“问题 #1 - 2010-03-01”以创建一个名为“问题 #1 - 2010-03-01”的子术语。

查看问题节点时,它将分配两个术语(“Newsletter A”、“Issue #1 - 2010-03-01”)。问题中引用的任何文章现在都可以使用问题子术语进行标记。在 NAT admin ui 上,您可以选择问题术语是否直接链接到问题节点,而不是链接到标记有相同问题术语的所有节点的视图(这是 drupal 的默认行为)。

于 2010-04-14T07:47:13.157 回答