WordPress.org

Ready to get started?Download WordPress

Codex

it:Riferimento funzioni/wp set object terms

Contents

Descrizione

Lega un oggetto (post, link, ecc.) ad un termine e ad un tipo di tassonomia (tag, categoria, ecc). Crea la relazione tra il termine e la tassonomia se non esiste ancora.

Relazione significa che il termine è raggruppato in (oppure appartiene a) una tassonomia. Un termine non ha significato finché non gli si da un contesto definendo sotto quale tassonomia esiste.

Utilizzo

 <?php wp_set_object_terms$object_id$terms$taxonomy$append ); ?> 

Parametri

$object_id
(int) (richiesto) L'oggetto da relazionare, ad esempio l'ID del post.
Default: Nessuno
$terms
(array/int/string) (richiesto) Lo slug o l'ID del termine (come ID delle categorie o dei tag), rimpiazzerà tutti i termini correlati esistenti in questa tassonomia. Per ripulire o rimuovere tutti i termini da un oggetto, passare una stringa vuota oppure NULL. I numeri interi sono interpretati come ID dei tag. Attenzione: alcune funzioni possono restituire gli ID dei termini come stringhe che saranno interpretate come slug composti da caratteri numerici!
Default: Nessuno
$taxonomy
(array/string) (richiesto) Il contesto in cui relazionare il termine all'oggetto. Può essere category, post_tag o il nome di un'altra tassonomia.
Default: Nessuno
$append
(boolean) (richiesto) Se true, i tag verranno aggiunti all'oggetto. Se false, i tag rimpiazzeranno quelli esistenti.
Default: false

Valori restituiti

(mixed) 
  • (array) Un array con i termini coinvolti ( sotto forma di term_taxonomy_ids ! ) in caso di successo,
  • (WP_Error) L'oggetto WordPress Error in caso di tassonomia non valida ('invalid_taxonomy').
  • (string) Il primo termine incriminato se nel parametro $terms ce n'è uno con nome non corretto. (Gli ID dei termini non validi sono accettati ed inseriti).

Esempi

Se si vuole aggiungere una categoria ad un post con ID 42:

<?php
$cat_ids = array( 6,8 );
    //per assicurarsi che gli ID dei termini siano numeri interi:
    //$cat_ids = array_map('intval', $cat_ids);
    //$cat_ids = array_unique( $cat_ids );
wp_set_object_terms( '42', $cat_ids, 'category' );
?>

Se si vogliono ripulire/rimuovere tutte le categorie da un post con ID 42:

<?php wp_set_object_terms( '42', NULL, 'category' ); ?>

Log delle modifiche

  • 3.5.0: Restituisce un oggetto WP_Error nel caso in cui l'inserimento nel database fallisca.
  • Da: 2.3.0

Note

  • Forse la funzione wp_set_post_terms() è più utile in quanto controlla i valori, convertendo le tassonomie separate da virgole e validando i termini gerarchici in integer.
  • Può confondere le idee, ma l'array restituito consiste di term_taxonomy_ids invece di term_ids.

File sorgente

wp_set_object_terms() si trova in wp-includes/taxonomy.php.

Correlati

Si veda anche l'indice di Riferimento funzioni e l'indice di Tag dei template.