我正在使用HTML5音频播放器(Speakker)。我已经创建了一个动态创建播放列表的功能,但是我不确定如何在创建播放列表后实现该播放列表。这似乎是有经验的人可能认为理所当然的事情。我希望是这样的。
创建播放列表。检查。
<?php $playlist= "{\"playlist\": [";?>
<?php foreach ($items as $item){
$titlemetadata= metadata($item, array('Dublin Core', 'Title'));
foreach($item->Files as $file) {
// print_r($file);
$sourcemetadata= metadata($file, 'uri');
$imagemetadata= metadata($file, 'thumbnail_uri');
if (strpos($file["filename"], 'mp3') !== false) {
$playlist .=
"\"0\": {\"src\":\"$sourcemetadata\", \"type\":\"audio/mp3\"},
\"config\":
{\"title\": \"$titlemetadata\",
\"poster\": \"$imagemetadata\"}";
}
}
}?>
<?php $playlist .= "]}";?>
<?php echo $playlist;?>
实施播放列表?不。
<audio class="projekktor speakker dark">
<source src= ??THE PLAYLIST?? type="application/json"/>
</audio>
答案 0 :(得分:0)
我弄清楚了。这是一个解决方案:
<?php $collections=get_records("collection", array("public"=>"true","featured"=>"true"));
$current_collection=end($collections);
$items=get_records("item", array("collection"=>$current_collection));
$playlist= "[";
foreach ($items as $item){
$titlemetadata= metadata($item, array("Dublin Core", "Title"));
foreach($item->Files as $file) {
$sourcemetadata= metadata($file, "uri");
$imagemetadata= metadata($file, "thumbnail_uri");
if (strpos($file["filename"], "mp3") !== false) {
$playlist .=
"{\"0\": {\"src\":\"$sourcemetadata\", \"type\":\"audio/mp3\"},
\"config\":
{\"title\": \"$titlemetadata\",
\"poster\": \"$imagemetadata\"}},";
}
}
}
$playlist .= "]";?>
<?php
$string = '$(document).ready(function() {projekktor(".projekktor").setFile(' . $playlist . ');});';
queue_js_string($string);?>