Où WordPress stocke les valeurs des champs personnalisés
J’ai un type de publication personnalisé appelé produit qui a une Methabox avec un champ personnalisé appelé Price
que j’ai entré $
pour certains des produits et je dois les supprimer de la table WP. Maintenant, pouvez-vous s’il vous plaît laissez-moi savoir comment je peux faire cela? Je veux dire que j’ai besoin de savoir quelle table stocke les données de Metaboxes ?
Mise à jour
add_action( 'add_meta_boxes', 'product_details_mtbox' );
function product_details_mtbox()
{
foreach( $post_types as $post_type ){
add_meta_box(
"product-detail",
"Product Details ",
"render_mtbox",
$post_type,
"normal",
"high"
);
}
}
Solution n°1 trouvée
Champs personnalisés, alias. les champs méta de publication personnalisés sont stockés dans la table wp_postmeta.
Utilisez ce code pour mettre à jour vos métas plutôt que de parcourir le tableau. Modifiez la condition pour cibler une certaine publication ou une certaine méta-valeur :
$args = array('post_type' => 'product');
$query = new WP_Query( $args );
foreach($query->posts as $post) {
$meta = get_post_meta($post->ID, 'price', true);
if ($post->ID == '85' && $meta == '$') { // Set search condition here
update_post_meta($post->ID, 'price', '100'); //change meta value here
}
}
Solution n°2 trouvée
Si vous utilisez des champs personnalisés natifs, vous devez les rechercher dans la table wp_postmeta (le préfixe de votre table peut être différent de ‘wp’).
Solution n°3 trouvée
Si vous avez créé le plugin vous-même, vous devez vraiment savoir où vous stockez les données.
Mateusz a raison, dans la mesure où les champs personnalisés sont normalement stockés dans la table postmeta.
0 commentaire