WordPress Terms mit PHP erstellen, aktualisieren, löschen und bearbeiten.

Marc Wagner, Juli 18, 2022

Terms lassen sich über PHP erstellen, abfragen und bearbeiten. Hierfür stellt WordPress Funktionen zur Verfügung.

Abfragen eines WordPress Terms mit PHP #

Um einen Term abzufragen, kannst du die Funktion get_term($term_id, $taxonomy) verwenden. Hierfür benötigst du lediglich die ID und die Taxonomie.

$term_id = 10;
$taxonomy = "post_tag";

/**
 * @var \WP_Term $Term
 */
$Term = get_term($term_id, $taxonomy);

Abfragen eines WordPress Terms bei Slug, Name oder Term ID #

Über get_term_by($field, $value, $taxonomy, $output = OBJECT, $filter = ‚raw‘) kannst du einen Term auch über den Slug, den Namen oder die ID abfragen.

/**
 * WordPress Term abfragen mit dem Slug
 * @var \WP_Term|array|false $Term
 */
$Term = get_term_by("slug", "ich-bin-ein-slug", "post_tag");

/**
 * WordPress Term abfragen mit dem Namen
 * @var \WP_Term|array|false $Term
 */
$Term = get_term_by("name", "Ich bin ein Slug", "post_tag");

/**
 * WordPress Term abfragen mit dem Namen
 * @var \WP_Term|array|false $Term
 */
$Term = get_term_by("term_id", 10, "post_tag");

Abfragen aller WordPress Terms von einer Taxonomie #

Mithilfe von get_terms($args) kannst du alle Terms einer Taxonomie abfragen.

$args = array(
   'taxonomy' => 'post_tag',
   'hide_empty' => false
);

/**
 * @var array<\WP_Term> $Terms
 */
$Terms = get_terms($args);

Einfügen eines neuen WordPress Terms bei einer Taxonomie #

Neue Terms lassen sich über wp_insert_term($term, $taxonomy, $args = array()) hinzufügen. Falls der Term bereits existiert, wird dieser aktualisiert.

/**
 * Argumente können optional angegeben werden
 */
$args = array(
   'description' => 'Beschreibung',
   'parent' => 0,
   'slug' => ''
);

/**
 * Neuen Term erstellen in der Taxonomie post_tag
 */
$term_id = wp_insert_term('Ich bin ein neuer Term', 'post_tag', $args);

Löschen eines Terms in WordPress über PHP #

Terms lassen sich auch über PHP schnell und unkompliziert entfernen. Hierzu existiert die Funktion wp_delete_term($term_id,$taxonomy).

/**
 * Löscht den Term mit der Term ID 10 in der Taxonomie post_tag
 */
$result = wp_delete_term(10, 'post_tag');

Abfragen von Metadaten eines Terms #

Auch Terms können wie Posts Metadaten enthalten. Diese lassen sich über get_term_meta($term_id, $meta_key, $single) abfragen.

/**
 * Gibt einen einzelnen Wert zurück
 * @var string|int|mixed $meine_meta_daten
 */
$meine_meta_daten = get_term_meta(10,'meine_meta_daten', true);

/**
 * Gibt ein Array zurück 
 * @var array $meine_meta_daten
 */
$meine_meta_daten = get_term_meta(10,'meine_meta_daten');

Löschen von Metadaten eines Terms in WordPress #

Metadaten von Terms lassen sich in WordPress über delete_term_meta($term_id, $meta_key, $meta_value = “) löschen.

$result = delete_term_meta(10, 'meine_meta_daten');

Metadaten eines Terms aktualisieren/anlegen über PHP #

Um bereits existierende Metadaten eines Terms zu aktualisieren, wird die Funktion update_term_meta($term_id, $meta_key, $meta_value, $prev_value = “) verwendet. Falls die Daten noch nicht exisiteren, werden diese angelegt.

$result = update_term_meta(10, 'meine_meta_daten', 'das wird ausgegeben');
Benutzerbild von Marc Wagner
Marc Wagner

Hi Marc here. I'm the founder of Forge12 Interactive and have been passionate about building websites, online stores, applications and SaaS solutions for businesses for over 20 years. Before founding the company, I already worked in publicly listed companies and acquired all kinds of knowledge. Now I want to pass this knowledge on to my customers.

Ähnliche Beiträge

Comments

Hinterlasse einen Kommentar