• DONATE to NULLED!
    Вы можете помочь Форуму и команде, поддержать финансово.
    starwanderer - модератор этого раздела будет Вам благодарен!

Помощь Постинг в wp с проверкой наличия категории

Genk0

Хранитель порядка
Регистрация
2 Июн 2010
Сообщения
3.095
Реакции
1.405
PHP:
$post= array(
'post_title' => 'My post',
'post_content' => 'This is my post.',
'post_status' => 'publish',
'post_author' => 1,
'post_category' => array(8,39)
);
wp_insert_post($post);
Вопрос, как на уровне движка сделать проверку на наличие категории (по названию) при запросе wp_insert_post(), и если категории нет - создать ее и применить к публикации?

Иными словами, у меня есть только массив данных о публикации (тайтл, контент, автор) и название категории, т.е. для post_category у меня нет ID категории, только название.
 
Код:
add_action( 'wp_insert_post', 'force_add_categories', 1, 1);
function force_add_categories( $post) {
    проверяешь и создаёшь категории если нужно
    $category='location';// category name for the post
    $cat_ID = get_cat_ID( $category );
    if($cat_ID ==0){
       $cat_name = array('cat_name'=> $category);
       wp_insert_category($cat_name);
    }
    $new_cat_ID = get_cat_ID($category);
     $post['post_category'] = array($new_cat_ID);
}
 
Последнее редактирование:
Отлично :alko:
А как быть с подкатегориями?
Статья находится в Категория/Подкатегория
ну, по аналогии
Для просмотра ссылки Войди или Зарегистрируйся
Код:
cat_defaults = array(
  'cat_ID' => 0,
  'cat_name' => ,
  'category_description' => ,
  'category_nicename' => ,
  'category_parent' => ,
  'taxonomy' => 'category' );
обрати внимание на category_parent, сначала проверяешь и создаешь парента, потом имешь парент айди и создаёшь нужную, потом используешь её в качестве id
 
Назад
Сверху