直播功能 - 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 &rsaquo;</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的主要内容,如果未能解决你的问题,请参考以下文章

视频直播开发——直播源码的功能有哪些?

直播源码平台搭建技术分享之直播短信功能

开源高效的直播源码,为您解析直播系统功能

手机直播连麦技术分析

微信公众号直播功能怎么用

直播功能测试用例