J'ai sérialisé post meta. Et je veux mettre à jour une seule clé méta. Cela ressemble à ceci:
Dans le tableau:
$kisiArray = array(
'option1' => 'foo',
'option2' => 'bar',
'option3' => 'Apple',
'option4' => 'orange'
);
Je veux mettre à jour uniquement 'option3'
à 'Peach'
donc j'utilise update_post_meta function.
update_post_meta( $post_id, 'themeOps', ??? );
Mais je ne sais pas ce que je dois mettre dans la section meta_value
. Lorsque i pust Peach , toutes les clés méta sont modifiées en Peach .
Vous devez d'abord lire le champ personnalisé themeOps
, mettre à jour l'index option3
dans un tableau, puis enregistrer/mettre à jour tout le tableau.
$kisiArray = get_post_meta( $post_id, 'themeOps' );
$kisiArray['option3'] = 'Peach';
update_post_meta( $post_id, 'themeOps', $kisiArray );
Update (trier par champ personnalisé)
$args = array(
'post_type' => 'post',
'meta_key' => 'themeOps_option3',
'orderby' => 'meta_value_num',
'order' => 'ASC',
);
$query = new WP_Query( $args );
Vous trouverez d'autres exemples dans Codex