Rules - как сделать правило для пункта меню и проверку создан ли уже материал пользователем?

Главные вкладки

Аватар пользователя portfolio portfolio 22 мая 2018 в 21:18

Доброго врмемени суток!

Подскажите пожалуйста как решить 2 задачи с помощью Rules.

1. Есть зарегистрированный пользователь. Он может создать тип определённого материала, например статью.
Создать он может только одну единственную статью.

2. У пользователя есть меню User, в которое выводится ссылка "Создать статью"

ЗАДАЧА 1:
Нужно чтобы после того, как пользователь создал свою статью из меню исчезла или удалилась эта ссылка "Создать материал" или изменилось её название и конечный URL на "Просмотреть статью".

И можно ли сделать такое для ссылки в views?

Так и не понял как сделать это с помощью Rules Link

ЗАДАЧА 2:
Нужно в Rules создать правило, которое бы проверяло создал ли уже пользователь статью. Если не создал, то принудительно делал редирект на страницу создания. Как делать редирект с помощью Rules я знаю.

Большая просьба прислать либо подробную инструкцию либо файл для импорта правила.

Заранее спасибо за помощь!

Комментарии

Аватар пользователя Semantics Semantics 22 мая 2018 в 23:36

Сомнительно, что рулезом получится такое сделать.
Уж в реальное меню им лучше не лезть, условный блочок со ссылкой похожий на меню - ещё можно сделать.

Но аналогично такое же можно сделать на вьюсе.

Аватар пользователя portfolio portfolio 23 мая 2018 в 0:01

Там в Rules Link есть действия удалить ссылку, переписать Url.

Только у меня почему то не работает правило. Видимо где-то в настройках что-то не то делаю.

Аватар пользователя postgres postgres 24 мая 2018 в 9:58

Через Views можно сделать. Тянем данные views, переопределяем вывод так, чтобы наличие статьи добавляло класс hasArticle, через css - скрываем показываем

Аватар пользователя portfolio portfolio 24 мая 2018 в 11:02

Решение Задачи 1 нашлось с помощью модуля Node Limit Если поставить ограничение для пользователя на этот тип материала можно сделать только 1 штуку, то ссылка из User menu сама исчезает когда пользователь создал этот материал.

Осталось нормально решить проверку в Rules создал ли пользователь материал для редиректа на страницу его созданния в случае отсутствия.