Come ottenere il nome del file dell'allegato e non l'URL dell'allegato

15 giu 2011, 17:18:32
Visualizzazioni: 35.8K
Voti: 16

Sto usando questo codice per elencare gli allegati immagine di un post:

      <select name="chb_homes_for_sale_specifics_floor_plan" style="width:100%;">
        <option value="">Seleziona</option>
        <?php
        $args = array(
            'numberposts'     => -1,
            'orderby'         => 'menu_order',
            'order'           => 'ASC',
            'post_type'       => 'attachment',
            'post_parent'     => $post->ID,
            'post_mime_type' => 'image'
        );
        $image = get_posts($args);
        if($image) {
            foreach($image as $key => $data) : ?>

                <option value="<?php echo $data->ID; ?>"><?php echo $data->post_title; ?></option>

            <?php endforeach;
        }
        ?>
      </select>

Attualmente sto mostrando il post_title dell'allegato ma vorrei mostrare invece il nome del file. Potrei utilizzare get attachment URL e poi analizzare l'URL per ottenere il nome del file, ma mi chiedevo se esiste un modo già predisposto in WordPress per ottenere il nome del file.

0
Tutte le risposte alla domanda 1
2
33

Consiglio vivamente di non utilizzare $post->guid - WordPress ora genera i GUID in questa forma:

http:/example.com/?attachment_id=ID

Utilizza lo stesso metodo che molte funzioni relative agli allegati utilizzano:

$filename = basename ( get_attached_file( $data->ID ) );
15 giu 2011 17:59:01
Commenti

Ed qui c'è il link alla discussione

kaiser kaiser
15 giu 2011 18:07:00

il link non funziona :(

simonthesorcerer simonthesorcerer
7 nov 2014 19:22:44