wordpress ottenere il valore meta tramite chiave meta
Come ottenere il valore meta tramite chiave meta
Voglio ottenere il valore tramite la chiave meta. Questo è quello che ho provato finora:
$args = array(
'post_type' => 'post',
'post_status' => 'publish',
'posts_per_page' => -1,
'meta_key' => 'picture_upload_1'
);
$dbResult = new WP_Query($args);
var_dump($dbResult);
ma non sto ricevendo il valore meta

WP_Query
seleziona i post e non i valori dei metadati, ecco perché non stai ottenendo il valore.
Puoi utilizzare l'ID del post restituito per ottenere il valore in questo modo:
$args = array(
'post_type' => 'post',
'post_status' => 'publish',
'posts_per_page' => 1,
'meta_key' => 'picture_upload_1'
);
$dbResult = new WP_Query($args);
global $post;
if ($dbResult->have_posts()){
$dbResult->the_post();
$value = get_post_meta($post->ID,'picture_upload_1',true);
}
Questo codice recupererà il valore del metadato dell'ultimo post pubblicato che ha un campo personalizzato chiamato picture_upload_1
Un'altra cosa che puoi fare è creare una query personalizzata, ad esempio:
global $wpdb;
$value = $wpdb->get_var( $wpdb->prepare("SELECT meta_value FROM $wpdb->postmeta WHERE meta_key = %s LIMIT 1" , $meta_key) );

Ottieni tutti i valori di meta_key ovunque:
global $wpdb;
$meta_key = 'picture_upload_1';
$data = $wpdb->get_results($wpdb->prepare( "SELECT DISTINCT meta_value FROM $wpdb->postmeta WHERE meta_key = %s", $meta_key) , ARRAY_N );
$result = [];
foreach($data as $array){
$result[] = $array[0];
}
print_r($result);

Hai considerato di memorizzare il valore nella tabella wp_options
invece che in wp_postmetas
?
In questo modo potresti usare get_option
con la tua chiave personalizzata per impostare e recuperare il valore.
https://developer.wordpress.org/reference/functions/get_option/
