2014-11-17 10 views
5

Penso che debba essere una domanda piuttosto semplice, ma sto solo iniziando. Qualcuno può dare un'occhiata alle 3 versioni dello stesso (?) Codice sotto e dire qual è la differenza? Tutti sembrano funzionare bene nel ciclo su cui sto lavorando.get_the_id vs. post-> ID vs. the_id/get_post_meta

Quale dovrebbe essere utilizzato: $post->ID, $the_ID o get_the_id()? E 'necessario avere global $post;?

global $post; 
$content = get_post_meta($post->ID, ‘my_custom_field', true); 
echo $content; 

o

$content = get_post_meta($the_ID, ‘my_custom_field', true); 
echo $content; 

o

$content = get_post_meta(get_the_id(), ‘my_custom_field’, true); 
echo $content; 

Molte grazie per il vostro aiuto

risposta

4

Se sei all'interno di un ciclo di WordPress, allora $post->ID è la stessa come l'utilizzo get_the_ID()

Non è necessario globalizzare $post poiché è già nell'ambito di un ciclo WordPress.

Non ho mai visto il codice utilizzando $the_ID, quindi eviterei di usarlo.

la scelta più sicura sarebbe quella di utilizzare get_the_ID()

+0

Grazie felipelavinz per una risposta pronta e informativo. Ha senso per me. È il mio male con $ the_ID come penso di aver visto the_ID() e non $ the_ID. Detto questo, il codice sopra funziona bene con esso? – TheElear

+0

No, 'the_ID()' richiama l'ID $ post-> in modo che non funzioni quando si utilizza 'get_post_meta()' – felipelavinz

+0

Hai ragione. Ho ricontrollato e non funziona con the_ID(). – TheElear