web-dev-qa-db-fra.com

Ajouter le tag à l'article api wordpress

Je suis allé sur Google, mais je n'ai pas trouvé le "ajouter un tag pour poster" api/codex. Est-ce que quelqu'un sait ce que c'est? En outre, le "supprimer la balise de post".

Merci.

5
Prakash Raman

Vous trouverez un index d'une bonne partie de l'API WordPress ici sur codex . La fonction que vous souhaitez utiliser est wp_set_post_tags () , mais suivez les liens de cette page pour accéder aux fonctions associées.

Éditer: ceci devrait enlever une étiquette d'un article, par commentaire ci-dessous

// $post is your post object, e.g. from: global $post;
// $target is tag you want to remove

// get an array of current tags on post
$tags = wp_get_post_tags($post->ID, array('fields' => 'names'));

// remove selected tag from array
$key = array_search($target, $tags);
if ($key !== false) {
    unset($tags[$key]);
}

// set new list of tags, without $target
wp_set_post_tags($post->ID, $tags, false);
6
webaware

Vous utiliseriez la fonction wp_insert_term() pour insérer une nouvelle balise:

wp_insert_term( 'post_tag', 'happy' );

Ensuite, après avoir créé vos termes, vous les ajouteriez au message de votre choix en utilisant la fonction wp_set_post_terms() , comme suit:

wp_set_post_terms( $post_id, 'happy', 'post_tag', true);
5
Manny Fleurmond

Google le sait.

Si vous souhaitez ajouter une catégorie à un message dont l'ID est 42:

$cat_ids = array( 6,8 );
    //to make sure the terms IDs is integers:
    //$cat_ids = array_map('intval', $cat_ids);
    //$cat_ids = array_unique( $cat_ids );
wp_set_object_terms( '42', $cat_ids, 'category' );

Si vous souhaitez effacer/supprimer toutes les catégories d'un message avec l'ID de 42:

wp_set_object_terms( '42', NULL, 'category' );

en savoir plus sur wp_set_object_terms

2
Butuzov