如何检查提供的URL是youtube还是vimeo?

时间:2018-06-26 05:37:44

标签: twig

我有这两个URL:

https://youtu.be/erwZDijlFAA

https://vimeo.com/262998843

现在,我想由Twig检查。我该如何检查?

  {% if url %} <p>youtube</p> {% else %} <p>vimeo</p> {% endif %}

或者有什么方法可以检查提供的URL是youtube还是vimeo?

2 个答案:

答案 0 :(得分:0)

您可以使用使用starts with运算符的简单版本,例如:

   {% if url starts with 'https://youtu.be/' %}
    YouTube.com
   {% endif %}

对于更复杂的条件,您可以通过matches使用正则表达式,例如:

   {% if url matches '%(?:youtube(?:-nocookie)?\.com/(?:[^/]+/.+/|(?:v|e(?:mbed)?)/|.*[?&]v=)|youtu\.be/)([^"&?/ ]{11})%i' %}
    YouTube.com
   {% endif %}

RegEx积分:https://gist.github.com/ghalusa/6c7f3a00fd2383e5ef33

More info in the doc about comparison operator here

希望获得帮助

答案 1 :(得分:0)

您可以使用下面的代码来分隔树枝中的视频。

{% set link_type = view.field.body.original_value %} // Fetching value from the body field

{% if ('youtube' in link_type|render|render) %}
   youtube url
{% else if ('vimeo' in link_typr|render|render ) %}
   vimeo Url
{% endif %}