【问题标题】:How to get multiple channels in ExpressionEngine to filter to one page while maintaining their own page如何让ExpressionEngine中的多个频道过滤到一个页面,同时保持自己的页面
【发布时间】:2013-10-28 06:38:22
【问题描述】:

我是 Web 开发的初学者,我正在开发一个 ExpressionEngine 网站。该站点将包含我上传到 vimeo 的视频内容。我想要几个频道/页面。用户将能够访问这些页面并仅查看与该主题相关的内容。例如,如果我有关于 4D 影院的视频,用户只会看到 4D 影院视频。我为以下内容创建了频道;后期效果、4D 影院、创意套件和评论。我在我的网站上也为每个页面设置了单独的页面。

但是,我的问题在于主页。我希望每个频道的所有内容都过滤到主页中。因此,来自 Cinema 4D 的视频、后期效果、创意套件和评论都显示在主页上。我还希望将最近的视频显示得更大,而其他视频会更小(不同的样式)。这是我当前的代码的样子...

{exp:channel:entries limit="10"}
<div class="main_feature">

{if count ==1}
<div class="video_large">
<iframe src="width="500" height="200" frameborder="0" webkitAllowFullScreen mozallowfullscreen allowFullScreen></iframe>
{/if}

{if count !=1}
<div class="video_small">
<iframe src="width="20" height="15" frameborder="0" webkitAllowFullScreen mozallowfullscreen allowFullScreen></iframe>
{/if}

<h2>{after_effects_tutorial_title}</h2>
{after_effects_tutorial_link}
{after_effects_tutorial_summary}

<h2>{c4d_tutorial_title}</h2>
{c4d_tutorial_link}
{c4d_tutorial_summary}

<h2>{apple_tutorial_title}</h2>
{apple_tutorial_link}
{apple_tutorial_summary}

<h2>{creative_suite_tutorial_title}</h2>
{creative_suite_tutorial_link}
{creative_suite_tutorial_summary}

<h2>{inspiration_title}</h2>
{inspiration_link}
{inspiration_summary}

<h2>{review_title}</h2>
{review_link}
{review_summary}



</div>
{/exp:channel:entries}

我尝试设置它,如果帖子的数量不等于 1,它将加载小样式表,如果它等于 1,则大样式将生效。

【问题讨论】:

标签: video expression expressionengine channel


【解决方案1】:

欢迎使用表达式引擎!看起来您有一个非常好的开始,但您似乎缺少了一点 ExpressionEngine 的美感。

在您的情况下,我建议您看看 EE 的类别功能。您应该能够将所有视频数据保存在一个频道中,然后根据它是 Creative Suite、Inspiration、c4d 等对其进行分类。

假设您使用的是 EE 2.x,如果您转到管理选项卡,然后转到频道管理,然后转到“全局首选项”,您会看到有一个类别 URL 指示器。你可以在这里阅读文档:http://userguides.ellislab.com/expressionengine/cp/admin/channels/global_channel_preferences.html#category-url-indicator

基本上,您将按以下方式设置主模板:

{exp:channel:entries
    channel="video"
    disable="categories|category_fields|member_data|pagination|trackbacks"
    dynamic="no"
    require_entry="yes"
}
  {title}
  {video_link}
  {!-- 
  to access the category-specific page, you can use 
  something similar to the following:
  --}
  <a href="/video/CATEGORY_URL_INDICATOR/{category_url_title}">{category_name}</a>

{/exp:channel:entries}

类别的简单性和灵活性是使 ExpressionEngine 如此强大的原因之一,希望对您有所帮助!

【讨论】:

  • 所以,我会为视频创建一个频道并删除其他频道。所以我会为所有视频制作一个?此外,在我的网站中输入内容时,我创建了一个使用 vimeo 嵌入代码的字段。我可以在发布新内容时将其保留为输入字段吗?
  • 是的,您将拥有一个视频频道。然后,您可以包含您想要的任何字段,例如 video_link、video_embed 等等。
  • 我正在尝试分类方法,但我失败了...我的主索引显示了我发布的 2 条内容。现在我只是想让内容进入正确的页面。例如,在我的后效页面模板上,我加载了以下 {exp:channel:categories} category="1" {/exp:channel:categories} 但它不显示类别 1 中的内容。在我的名为 video_category 的类别组我创建了所有类别,之后效果是 id 1。我需要指定它来自哪个频道吗?
  • 不要有一个特定于您的后效页面的模板,您应该有一个适用于任何类别页面的模板。您可以像 /template/template_group_if_applicable/category_indicator/category_url_title 一样链接到它
【解决方案2】:

您只能将一个频道用于视频,并将频道分配给不同的类别,例如后效、4D 影院、创意套件、评论等。

您可以创建类别@Admin-> 频道管理-> 类别。您需要先创建一个类别组,然后将类别添加到其中。如果您对类别有任何疑问,请查看this page

创建类别后,您可以创建视频频道,将类别组分配给您的频道。您也可以在类别之前创建通道,稍后修改类别分配。 (Reference)

发布您的频道条目时,请在'Categories' Tab下选择它所属的类别。

通过在模板中指定“category_group”参数,您可以选择要显示的特定条目类别。要使最新条目的样式不同,您可以根据您使用的逻辑使用带有“{entry_date}”或“{entry_id}”变量的条件。

希望对你有帮助!

【讨论】:

  • 我正在尝试分类方法,但我失败了...我的主索引显示了我发布的 2 条内容。现在我只是想让内容进入正确的页面。例如,在我的后效页面模板上,我加载了以下 {exp:channel:categories} category="1" {/exp:channel:categories} 但它不显示类别 1 中的内容。在我的名为 video_category 的类别组我创建了所有类别,之后效果是 id 1。我需要指定它来自哪个频道吗?
  • 嗨,克里斯,第一个 '{exp:channel:categories} category="1" {/exp:channel:categories} ' 不起作用。你应该使用 category_group="1"。其次,您可能需要嵌套标签,例如 "{exp:channel:categories channel="video" } {if {category_id}==1} {exp:channel:entries category="{category_id}" channel="video" } { /exp:channel:entries}{/exp:channel:categories} "如果它解决了问题,请告诉我。
  • 我已经设置了类别和这样的设置,它们现在可以在适当的页面上显示内容。但是,我的新问题是动态调整窗口大小。这是我的 CSS .video_large { height: 960px;宽度:640 像素; } .video_small { 高度:180px;宽度:320px;我希望最新的视频是 960x640,而旧的视频是 180x320。但是,当我输入一个新条目时,它只会将 div 元素的大小调整为 640x960,而实际视频保持在 180x320。我为我的条目创建了一个字段,我放置了来自 vimeo 视频的 ID。它不起作用,视频也不会显示。字段可以这样工作吗?
猜你喜欢
  • 1970-01-01
  • 2020-02-12
  • 2023-03-23
  • 2020-08-23
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2016-09-26
  • 1970-01-01
相关资源
最近更新 更多