0

我正在使用 EE 构建一个站点,并且想知道人们对我的情况有何看法。

基本上我有 3 个不同的频道,它们的数据相似,查看时需要在同一个模板上显示。所以我有一个新闻、艺术家和产品频道。当我单击这些通道中的任何一个中的项目时,无论如何我都需要在同一模板中显示该数据。

我可以想到两种方法来做到这一点,但想知道是否有人有更优雅的解决方案。

  1. 检查 URL 并使用适当的频道打开我的条目标签,然后仅在模板中为该频道使用正确的自定义字段。(但这意味着我需要为每个频道复制代码)。
  2. 打开我的条目标签并提供所有频道,然后将所有 3 个自定义字段放在模板中我需要它们的位置。

谢谢

4

3 回答 3

1

您可以使用embed variables 将变量传递到您的嵌入中。

需要注意的另一件事是,在确定要加载的内容时,请使用 Mark Croxton 的 Switchee 和/或 IfElse。高级条件对性能来说很糟糕。

于 2012-05-18T22:28:40.653 回答
0

通常,您会嵌入模板或使用片段来克服这一点。

对于我的解决方案,我有一个名为global_embeds的模板组,它用作我想重用的模板视图的容器。这可能是我的一般页面布局的页眉部分和页脚部分。

然后是一些更琐碎的东西的片段(如项目显示)。

于 2012-05-17T18:36:42.437 回答
0
{exp:channel:entries channel="news|artists|products"}

   ...shared content...

   {if channel_short_name == "news"}
       {my_custom_field_for_news}
   {if:elseif channel_short_name == "artists"}
       {my_custom_field_for_artists}
   {if:elseif channel_short_name == "products"}
       {my_custom_field_for_products}
   {/if}

   ...shared content...

{/exp:channel:entries}
于 2012-05-18T07:51:38.767 回答