Comment créer une colonne personnalisée pour un champ meta
Utilisez l'onglet « Meta » dans la fenêtre des outils du tableau.
Vous pouvez aussi l'ajouter par code. Utilisez le code suivant dans le fichier functions.php :
add_action('woot_profile_extend', function($profile, $action_name) {
$profile['hmeta_1'] = [
'title' => WOOT_Vocabulary::get('Meta 1'),
'order' => 'asc',
'display' => false, //display in fields list in the settings
'action' => function($post_id) {
return get_post_meta($post_id, 'meta_1', true);
}
];
return $profile;
}, 10, 2);Grâce au code, vous pouvez utiliser des colonnes personnalisées dans des shortcodes tels que [woot_upsells] : [woot_upsells id=49 columns='id,title,price,hmeta_1,cart']
Pour certains tableaux, il est aussi possible de modifier les résultats dans la cellule du tableau :
add_action('woot_meta_data_cell', function($value, $meta_data, $post_id, $table_id) {
if ($meta_data['meta_key'] === 'meta_1' AND $table_id === 21) {
$value = floatval($value) * floatval(get_post_meta($post_id, 'meta_2', true));
}
return $value;
}, 10, 4);Ce code, pour le tableau 21, affichera dans la cellule meta meta_1 le résultat d'une opération mathématique.
