2017-10-09 59 views
1

媒体文件在GRAV模板,它采用嫩枝,我有不能得到小枝找到GRAV usingHTML5音频元素

<audio controls> 
    <source src="{{ page.find('/mp3s').media['{{ page.header.samplename }}.mp3'] }}"> 
</audio> 

没有被渲染,当我做的查看源文件,我所看到的是

<audio controls> 
    <source src=""> 
</audio> 

我知道page.header.samplename包含一个MP3文件的有效名称。如果我将{{ page.header.samplename }}替换为MP3文件的显式名称,则代码有效。所以我必须有一个语法错误。我尝试了各种烫发,并且也搜索了Stack Overflow。

代码应该是什么?

+0

'' – DarkBee

+0

谢谢DarkBee,工作正常。 –

回答

1

DarkBee提供这个答案

<source src="{{ page.find('/mp3s').media[page.header.samplename~'.mp3'] }}"> – DarkBee yesterday 

(和它工作得很好)

1

DarkBee提供一个工作的答案,但请注意,您也可以输出标签使用:

{{ page.media['myaudiofile.mp3'].html() }} 

这将输出:

<audio controls> 
    <source src="http://example.com/youraudiofile.mp3"> 
</audio> 

如果你希望你的用户能够挑选从管理音频文件,你可以使用:

{{ page.media[header.yourfilepicker].html() }} 

此假设你有一个匹配filepicker场的管理,如:

yourfilepicker: 
    type: filepicker 
    folder: '[email protected]:/mp3s' 
    label: Select an audio file 
    preview_images: true 
    accept: 
    - .mp3