Wordpress: Вставьте Категорию и Теги Автоматически, если Они не Существуют?

Моя цель состоит в том, чтобы только использовать некоторый тип метода по умолчанию для проверки, если категория существует в Wordpress, и если это не делает, добавьте категорию. То же с тегами.

Вот путаница, я сделал попытку заставить ее произойти:

<?php 
    if (is_term('football', 'category')) {
    } 
    else (
        $new_cat = array('cat_name' => 'Football', 'category_description' => 'Football Blogs', 'category_nicename' => 'category-slug', 'category_parent' => 'sports');
        $my_cat_id = wp_insert_category($new_cat);
    ) 

Я планирую добавить это как плагин. Любые мысли или справка были бы большими!

8
задан Rory McCrossan 15 December 2014 в 09:59
поделиться

1 ответ

Вы можете просто запустить;

wp_insert_term('football', 'category', array(
    'description' => 'Football Blogs',
    'slug' => 'category-slug',
    'parent' => 4 // must be the ID, not name
));

Функция не будет добавлять термин, если он уже существует для эта таксономия!

Ради интереса, когда вы будете вызывать такой код в своем плагине? Убедитесь, что вы зарегистрировали его в функции перехвата активации, иначе он будет запускаться при каждой загрузке!

ОБНОВЛЕНИЕ

Чтобы получить идентификатор термина по слагу, используйте:

$term_ID = 0;
if ($term = get_term_by('slug', 'term_slug_name', 'taxonomy'))
    $term_ID = $term->term_id;

Замените «taxonomy» на таксономию термина - в вашем случае «категорию».

10
ответ дан 5 December 2019 в 15:19
поделиться
Другие вопросы по тегам:

Похожие вопросы: