Supporto » Fixing WordPress » immagini get_post_meta e get_attachment_url

  • Risolto abrugora

    (@abrugora)


    Salve a tutti ho questa esigenza: in pratica chiamo la url di una immagine di un campo custom attraverso get_post_meta, ora però non riesco ad sare quella url nel metodo wp_get_attachment_url. Le ho provate tutte e proprio non vuole funzionare. Di seguito il codice:

    <?php
    	$main_image = get_post_meta( get_the_ID(), 'main_image', true );
            $main_image_size = 'full'
    ?>
    
    <figure class="mainImage">
       <div class="image" style="background-image:url(<?php wp_get_attachment_image_url( $main_image, $main_image_size ); ?>);">
    			<img src="<?php  wp_get_attachment_image_url( $main_image, $main_image_size ); ?>"  alt="<?php the_title() ?>"  itemprop="image">
    		</div>
    		
    </figure>
Stai visualizzando 4 risposte - dal 1 al 4 (di 4 totali)
  • Moderatore Guido Scialfa

    (@wido)

    Ciao @abrugora,

    La funzione wp_get_attachment_url prende come parametro l’id dell’attachment non la url. Se hai già la url e vuoi poter prelevare l’id, allora puoi usare la funzione di Pippin Williamson per poter usufruire dell’image size.

    Chi ha creato la discussione abrugora

    (@abrugora)

    Intanto grazie della risposta @wido

    giusto, ma sono arrivato a questa soluzione, in quanto non riuscivo a passare l’id tramite get_the_ID e preso dalla disperazione l’ho “buttata li” per così dire

    Anche così non mi restituisce una pippa di niente:

    
    
    <?php
    	$image_id = get_the_ID();
    	
    	$attachment_id = $image_id;
    	$attachment = wp_get_attachment_image_src( $attachment_id, $main_image_size );
    ?>
    
    <figure class="mainImage <?php if ($main_image) { echo 'hasImage'; } ?>">
    
    		<div class="image" style="background-image:url(<?php echo $attachment[0] ?>);">
    			
    		</div>
    		
    		
    </figure>
    
    <?php
    
    
    Moderatore Guido Scialfa

    (@wido)

    Dunque, get_the_ID si riferisce all’id del post corrente e non del tuo attachment / post meta.

    Non consideriamo l’ultimo codice che hai incollato, immagino tu non abbia dato uno sguardo al link che ti ho inviato di pippin williamson.

    Leggi entrambi i documenti, se il tuo post meta è una url, allora devi recuperare l’id di tale immagine, una volta ottenuto l’id lo passi come hai fatto nel codice iniziale a wp_get_attachment_image_url inoltre ricorda di usare echo nell’src dell’immagine perchè se no non la vedrai mai.

    Chi ha creato la discussione abrugora

    (@abrugora)

    Giusto, funziona con la funzione Pippin Williamson. l’impiccio era che ricavavo l’id del post anzichè quello dell’attachment.

    Grazie 1000

    • Questa risposta è stata modificata 5 anni, 10 mesi fa da abrugora.
Stai visualizzando 4 risposte - dal 1 al 4 (di 4 totali)
  • Il topic ‘immagini get_post_meta e get_attachment_url’ è chiuso a nuove risposte.