TEL:400-8793-956
当前位置:程序、服务器

如何使get_attached_media仅检索mp3并设置要在模板中使用的变量?

提问者: 近期获赞: 浏览人数: 发布时间:2021-03-02 12:30:44

 问:我正在尝试填充一个名为$ work_ids的变量,该变量具有要在播放器中使用的任何附加MP3文件的ID。该库包含wav和我们不想流式传输的其他版本,因此我正在尝试过滤这些文件。这是我尝试过的(但失败了):

 
我以为如果只有一个ID,这会让我自己滚动……$ work_ids = get_attached_media('audio / mp3',$ post-> ID);
 
没有。
 
所以后来我想,也许我需要添加一些逗号来处理返回的多个mp3。但是不,不是这样的。。。这没有更好的效果:$ work_ids = join(',',wp_list_pluck(get_attached_media('audio / mp3'),'ID'));
 
接下来,我发现ID并未改变,因此我将引用更改为更明确的名称:$ work_ids = join(',',wp_list_pluck(get_attached_media('audio / mp3'),$ post-> ID)); 另一个失败。
 
我将它们放在循环的下面,在这里我通过简码绘制了一个常规的WP播放列表对象[playlist ids =“”]。当我插入固定的ID或使用另一个浮动的变量(不幸的是包含wavs)$ submission_attachment_ids ['01']时,脚本的这一部分实际上可以正常工作。
 
<?php echo do_shortcode('[[播放列表标题=“ false” artist =“ false” images =“ false” ids =“'。$ work_ids。'”]');?>
 
这会调用并运行我制作的自定义播放器,并且效果很好。这让我发疯。我只想过滤文件类型。哎呀!
 
 
答:我通过过滤mime_type设置了一个仅获取mp3附件的数组:$ children = get_children(array('post_parent'=> $ post-> ID,'post_status'=>'inherit','post_type'=>'attachment' ,'post_mime_type'=>'audio / mp3'));
 
我认为这将返回附件的ID。但是不,我在那里也缺少什么。在这种情况下,当我对返回的变量执行print_r时,会得到非常奇怪的回报-艺术家名称,而不是帖子ID或歌曲标题或其他更具体的内容,这表明这里的问题是在查看“孩子”而不是附件。所以我在输出上尝试了这个过滤器... // $ mime_types = get_allowed_mime_types(); // $ remove_mime_types = array(// //从列表中删除这些格式//'jpg | jpeg | jpe'=>'image / jpeg',//'gif'=>'image / gif',//'png '=>'image / png',//'bmp'=>'image / bmp',//'
 
再次,不。您能否将我指向需要1)返回媒体对象作为ID,2)过滤MP3的ID数组,然后3)设置所有MP3 ID的变量以插入到我的工作do_shortcode中所需的参考或编解码器链接。所有这些方法都来自Stacks或Codex,我在这里遗漏了一些东西。
上一篇: 如何从价值中获取关键?
下一篇: 声明一个变种。...确保它可以放手吗?