Домой Wp-Recall WP-Recall: Вопросы и ответы Публикация записей пользователями по заданным категориям
3ответ(ов) в теме
Senya
не в сети 6 лет
На сайте с 29.12.2018
Участник
Тем 1
Сообщения 2
1
20:13
Версия WP-Recall: 16.1.15

Необходимо организовать публикацию записей пользователей по заданным категориям. То есть пользователь №1 может публиковать только в категории №1 и №2, пользователь №2 только в категорию №1, пользователь №3 только в категорию №3 и т.д. и т.п.
Возможно ли это и если да, то какие дополнения для wp-recall необходимо установить?

0
Preci
не в сети 3 месяца
На сайте с 11.11.2014
Участник
Тем 71
Сообщения 1644
2
21:28

Нужен стандартный доп публикаций.

Пишите в мета-поле юзера ID категорий, которые ему доступны

С помощью фильтра rcl_public_form_fields перебираете массив с данными всех полей формы публикации, находите поле с slug = taxonomy-category и заменяете там в массиве values id категорий на те которые доступны текущему юзеру

0
Senya
не в сети 6 лет
На сайте с 29.12.2018
Участник
Тем 1
Сообщения 2
3
18:40

Спасибо большое за подробный ответ.
Получился у меня такой код:

add_filter('rcl_public_form_fields', 'add_public_form_field', 10, 2);
function add_public_form_field($fields, $formData){
	$cur_user_id = get_current_user_id();
	$cat1 = get_user_meta($cur_user_id, 'cat1', true);
	$cat2 = get_user_meta($cur_user_id, 'cat2', true);
	$arrcat = array ( $cat1, $cat2 );
	if ($cat1 > 0) {
	foreach($fields[1]['values'] as $key => $val) {
		$fields[1]['values'] = $arrcat;
	}
	}
	return $fields;
}

Работает, вопросов нет. Возможно мой труд поможет кому-то или кто-то опытнее улучшит код.

Редакции сообщения
03.04.2019 18:40SenyaПричина: не указано
0
Тема закрыта. Публикация новых сообщений запрещена.