直播功能 - ExpressionEngine
Posted
技术标签:
【中文标题】直播功能 - ExpressionEngine【英文标题】:On-Air Now Feature - ExpressionEngine 【发布时间】:2012-10-29 02:44:24 【问题描述】:EE v2.5.3
我正在尝试完成以下工作:
6 场广播节目(周一至周五) 1 电台节目(周日) 默认设置(徽标)我希望能够告诉 EE:
If Monday - Friday AND
0600 - 1000
Morning Show
else if
1000 - 1500
Midday Show
etc etc..
else if
Sunday AND
0600 - 1200
Sunday Show
else if
1700-1900
Sunday Night Show
else
Default display of Logo
我的(非工作)示例:
<div id="in_studio_now_content" class="container_4">
if
'current_time format="%l"' == Thursday AND
'current_time format="%H%i"' >= '1000' AND
'current_time format="%H%i"' <= '1700'
<div class="showContainer">
<img src="http://placehold.it/75x75" class="container_1" />
<div class="showInfo left">
<h5>The Midday Show</h5>
<p>with Jenn</p>
<p class="timeslot">Weekdays 10:00 - 3:00 pm</p>
<div id="facebookLike">F like 32k</div>
</div>
<a href="#" class="showLink container_3">More about this show ›</a>
</div><!-- /show -->
/if
</div><!-- studio content -->
【问题讨论】:
怎么不工作了?它会产生错误吗?数据不正确? 【参考方案1】:这应该给你排序
if
'current_time format='%l'' == 'Thursday' &&
'current_time format='%H%i'' >= '1000' &&'current_time format='%H%i'' <= '1700'
请注意,我已将星期四放在单引号中,并将您的时间格式也替换为单引号。
【讨论】:
通过这个例子,它是否能够处理周一至周五和 2 个周日节目的复杂性? 每个案例都有多个 if 语句。我不会使用 if:else 工作就像一个魅力!谢谢你。我也喜欢@jean St-Amand 的简单回答【参考方案2】:我建议使用来自 Croxton 的 Switchee 和 IFElse 的组合来加快解析速度,因为它是一个相当复杂的条件。例如,这样的事情怎么样?
exp:switchee var="current_time format='%l'" parse="inward"
case value="Monday|Tuesday|Wednesday|Thursday|Friday"
exp:ifelse parse="inward"
if 'current_time format="%H%i"' >= '0600' AND 'current_time format="%H%i"' <= '0959'
Morning show
if:elseif 'current_time format="%H%i"' >= '1000' AND 'current_time format="%H%i"' <= '1459'
Midday Show
/if
/exp:ifelse
/case
case value="Saturday"
Do the same sort of thing for Saturday
/case
case value="Sunday"
Do the same sort of thing for Sunday
/case
/exp:switchee
另外请注意,我已将时间调整了 1 分钟 - 否则,同一组中的两个条件(因为您使用的是等于或小于/大于)可能同时为真。
【讨论】:
这看起来合乎逻辑:) 我得看看你提到的那两个扩展。谢谢! 绝对使用Switchee 或IfElse 处理复杂的条件。 Switchee 和 ifelse 都非常强大且合乎逻辑。每次都值得使用! 我们安装了这两个模块和上面的示例代码,但没有任何输出。 实际上,我有一个小错误 - 应该是 exp:switchee variable="" 而不仅仅是 var="" - 请你试试看?以上是关于直播功能 - ExpressionEngine的主要内容,如果未能解决你的问题,请参考以下文章