2

私はこれにしばらく苦労しており、本当に助けていただければ幸いです!

Wordpress メディア ライブラリの 2 つの codex を使用して html5 オーディオ プレーヤーを作成しようとしています。

wp 関数 get_posts を使用しており、post_mime_types 'ogg' 用のフィルターを 1 つ作成しました。get_posts の $args で post_mime_type のパラメーターを設定しました。ここで、ループしてオーディオ プレーヤー リストに $mp3 と $ogg として並べ替えます。

    $ogg = wp_get_attachment_url( $audio_attachment->post_mime_type="application/ogg" );

...以下のコードでは何も出力しません:

        <?php
         $query_audio_args = array(
           'post_type' => 'attachment',
           'post_mime_type' =>'application/ogg,audio',
           'post_status' => 'inherit',
           'posts_per_page' => -1,
      );

      $audio_attachments = get_posts($query_audio_args);
            foreach ( $audio_attachments as $audio_attachment ) {
                // Trying to sort them into $ogg, $aif and $mp3
                $ogg = wp_get_attachment_url( $audio_attachment->ID);

                $mp3 = wp_get_attachment_url( $audio_attachment-ID);

                $tracks[] = '{
                    title:"'.$audio_attachment->post_title.'",
                    mp3:"'.$mp3.'",
                    oga:"'.$ogg.'",
                    aif:"'.$aif.'"
                }';
                $alltracks = implode(',',$tracks);
            }
    ?>  

編集:複数の配列を作成するつもりでこれも試しましたが、値へのアクセスが行き詰まりました:

            <?php
$query_audio_args = array(
           'post_type' => 'attachment',
           'post_mime_type' =>'application/ogg',
           'post_status' => 'inherit',
           'posts_per_page' => -1,
      );                

      $audio_attachments = get_posts($query_audio_args);
        $ogg = array();
            foreach ( $audio_attachments as $uk => $uv ) {                  
             $ogg[] = $uv->guid;                            
            }
         $query_audio_args1 = array(
           'post_type' => 'attachment',
           'post_mime_type' =>'audio',
           'post_status' => 'inherit',
           'posts_per_page' => -1,
      );                

     $audio_attachments1 = get_posts($query_audio_args1);
        $mp3 = array();
            foreach ( $audio_attachments1 as $ak => $av ) {                     
                $mp3[] = $av->guid;             
            }

        $audio = array(
                $ogg,
                $mp3
        );
        print_r($audio);
        foreach($audio as $k =>$v)
                    $tracks[] = '{
                        title:"'.$uv->post_title.'",
                        mp3:"'.$mp3->guid.'",
                        oga:"'.$uv->guid.'",
                        aif:"'.$aifv->guid.'"
                    }';
            $alltracks = implode(',',$tracks);                          
    ?>
4

0 に答える 0