Youtube 是否可以引用模板文件中的前置值?

Youtube 是否可以引用模板文件中的前置值?,youtube,jekyll,jekyll-extensions,Youtube,Jekyll,Jekyll Extensions,我有一个主题,对于一个贴子页面,我显示图像值(如果有) 我还有一个插件可以呈现YouTube视频,用法如下:{%YouTube id\u 12345%} 在我的模板文件中,是否可以引用帖子前面的视频值,并使用我可以在内容中使用的相同插件进行渲染 比如: {% if post.video %} {% youtube {{post.video}} %} # <-- this does not work {% elsif post.image %} <img src="{{

我有一个主题,对于一个贴子页面,我显示
图像
值(如果有)

我还有一个插件可以呈现YouTube视频,用法如下:
{%YouTube id\u 12345%}

在我的模板文件中,是否可以引用帖子前面的
视频
值,并使用我可以在内容中使用的相同插件进行渲染

比如:

{% if post.video %}
  {% youtube {{post.video}} %}    # <-- this does not work
{% elsif post.image %}
  <img src="{{ post.image }}" class="post-image" alt="{{ post.title }}">
{% endif %}
{%if post.video%}

{%youtube{{post.video}}%}{p>我想你正在使用它。我对编写插件知之甚少,但在我看来,您似乎不能在其中使用变量

也许可以试试?好像是这样

话虽如此,我甚至不认为你需要经历运行插件的麻烦。以下代码应该可以很好地完成这项工作:

{% if post.video %}
  <iframe width="560" height="420" src="http://www.youtube.com/embed/{{ post.video }}?color=white&theme=light"></iframe>
{% elsif post.image %}
  <img src="{{ post.image }}" class="post-image" alt="{{ post.title }}">
{% endif %}
{%if post.video%}
{%elsif post.image%}
{%endif%}

由于变量与
{%%}
调用不兼容,因此我在这一行中复制了插件的大部分功能。我从开始,并根据自己的需要对其进行了修改

{% if post.video %}
  {% capture video_id %}{{ post.video | 
        replace: 'https://www.youtube.com/watch?v=','' | 
        replace: 'https://youtu.be/', '' }}{% endcapture %}
  <figure class='BetterTube' data-youtube-id='{{video_id}}' data-player-width='' 
  data-player-height='' id='{{video_id}}' style='padding-bottom: 56.25%'>
  <a class='BetterTubePlayer' href='http://www.youtube.com/watch?v={{video_id}}' 
  style='background: url(http://img.youtube.com/vi/{{video_id}}/hqdefault.jpg) 50% 
  50% no-repeat rgb(0, 0, 0);'></a><div class='BetterTube-playBtn'></div>&nbsp;
  </figure>
{% elsif post.image %}
  <img src="{{ post.image }}" class="post-image" alt="{{ post.title }}">
{% endif %}
{%if post.video%}
{%capture video_id%}{{post.video|
替换:'https://www.youtube.com/watch?v=','' | 
替换:'https://youtu.be/','}}{%endcapture%}
{%elsif post.image%}
{%endif%}

我希望我能简单地调用插件,但遗憾的是,我认为这是不可能的。

(我删除了我的另一个回复,因为整个
捕获
方法一开始都不必要)是和否:)我使用了一个类似的插件,但我修改了它以显示一个图形,当单击占位符时,它会加载视频(像这样的页面加载速度要快得多)。