WordPress как на ладони
Недорогой хостинг для сайтов на WordPress: wordpress.jino.ru Рекомендуемые продукты со скидкой от Template Monster

wp_set_post_categories() WP 2.1.0

Устанавливает категории для поста.

Если параметр рубрик не установлен, пост будет привязан к рубрике по умолчанию.

При использовании этой функции все старые категории поста будут удалены и установлены указанные.

Работает на основе: wp_set_post_terms()

Хуков нет.

Возвращает

идентификаторы - массив ID терминов, которые были добавлены/прикреплены к записи или WP_Error объект.

Использование

<?php wp_set_post_categories( $post_ID, $post_categories, $append ) ?>
$post_ID(число)
ID поста, который будем прикреплять к категориям.
$post_categories(массив)
Список ID категорий к которым прикрепить пост.
По умолчанию: array()
$append(логический)
true - добавить к существующим рубрикам. false - полностью обновить рубрики (удалить из существующих и добавить к указанным).
По умолчанию: false

Список изменений

С версии 2.1.0 Введена.

Код wp set post categories: wp-includes/post.php WP 5.2.4

<?php
function wp_set_post_categories( $post_ID = 0, $post_categories = array(), $append = false ) {
	$post_ID     = (int) $post_ID;
	$post_type   = get_post_type( $post_ID );
	$post_status = get_post_status( $post_ID );
	// If $post_categories isn't already an array, make it one:
	$post_categories = (array) $post_categories;
	if ( empty( $post_categories ) ) {
		if ( 'post' == $post_type && 'auto-draft' != $post_status ) {
			$post_categories = array( get_option( 'default_category' ) );
			$append          = false;
		} else {
			$post_categories = array();
		}
	} elseif ( 1 == count( $post_categories ) && '' == reset( $post_categories ) ) {
		return true;
	}

	return wp_set_post_terms( $post_ID, $post_categories, 'category', $append );
}

Cвязанные функции

Из раздела: Для записей

1 коммент
  • @ Николай

    Здравствуйте
    При создании нового поста (произвольный тип записи) ему нужно назначить сразу все существующие категории. Т.е. добавить пост во все категории (произвольной таксономии).
    Как это можно сделать?

    Вручную не вариант. Есть больше 1000 категорий.

    Или быть может есть функция, которая выведет ссылку под блоком категорий, что то вроде "Выбрать все" ?

    Ответитьмесяц назад #
Здравствуйте, !     Войти . Зарегистрироваться