Подскажите как на Пользовательские страницы выводить только нужный виджет

ЕСТЬ РЕШЕНИЕ ЗАКРЫТО InstantCMS 2.X
#1 19 июля 2026 в 10:48

Всем привет! Чёт не нашел на форуме ответа. Может плохо искал. Ткните носом.

Сут вопроса — Я создал к примеру страницу /pages/about.html и мне нужно вывести только тот виджет который я для неё создал.

Если делать через маску положительную pages/about.html то виджет выводится всё как нужно, но и виджет тело выводит также. Убрать его не нужно так как на других страницах /pages тело это нужно. 

Не создавать же отдельный тип контента с одной страницей.

Может есть решение, подскажите. Может можно создать отдельный шаблон для страницы и прописать в нём какой виджет вывести только.

#2 19 июля 2026 в 10:52

Изображение

#3 19 июля 2026 в 10:57
Clear

И что там? Там я указываю положительную маску. Как именно сделать чтобы выводился только тот виджет что нужно?

#4 19 июля 2026 в 11:09

Полагаю, что вам нужно отключить вывод Тело, для Всех страниц. И включить его только на нужных, то есть на всех, кроме /pages/about.html. 

Соответственно, на нужной Пользовательской, вывести уже только то что нужно.

#5 19 июля 2026 в 11:19
Полагаю, что вам нужно отключить вывод Тело, для Всех страниц. И включить его только на нужных, то есть на всех, кроме /pages/about.html.
akokna

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

Сделал так. Может кому пригодиться. 

Создал пустой шаблон \templates\modern\content\pages_item_about.tpl.php и в записи выбрал его как шаблон.

В маске положительной добавил страницу pages/about.html и вывел свой виджет на Пользовательские -> Контакты

Тему пока не закрываю, может у кого есть ещё какие то варианты.

#6 19 июля 2026 в 11:29

Создал пустой шаблон pages_item_about.tpl.php и в записи выбрал его как шаблон.

Litemir

Подскажите, а как «в записи выбрал его как шаблон»? При редактировании записи вроде нет такой опции. Может в виджете, выбрали как шаблон? 

#7 19 июля 2026 в 11:32

Изображение

#8 19 июля 2026 в 11:38

Солидно! А у меня нет такого.) На этом: 

Изображение

всё заканчивается. Где то я значит такое Не включил.)

#9 19 июля 2026 в 11:42
Солидно! А у меня нет такого.) На этом:  всё заканчивается. Где то я значит такое Не включил.)
akokna

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

#10 19 июля 2026 в 12:18

Закинули вы мне в душу сомнения.) Но мой вариант тоже был правильный, я проверил.) 

В ТК Pages, создаём страницу pages/about.html. В Виджетах создаём страницу Контакты, с маской pages/about.html

На всех страницах отключаем виджет Тело: 

Изображение

В виджетах ТК Pages создаем виджет Тело: 

Изображение

Соответственно, на созданной Пользовательской странице, виджет Тело не создаем. И его там не будет.

Изображение

#11 19 июля 2026 в 12:22
Clear И что там? Там я указываю положительную маску. Как именно сделать чтобы выводился только тот виджет что нужно?
Litemir

Странный вы. Я вегда так выводил именно то что мне нужно с помощью этих масок, незнаю что там вы пытаетесь такое уникальное еще сделать. Короче кто еще что подскажет пишите решения.

#12 19 июля 2026 в 13:42
Clear И что там? Там я указываю положительную маску. Как именно сделать чтобы выводился только тот виджет что нужно?Litemir Странный вы.
Clear

Ответьте пожалуйста как вы выводите в типе контента на отдельной записи виджет любой кроме виджета тело? Так чтобы в остальных записях этого типа контента виджет тело выводился.

#13 19 июля 2026 в 14:28

Ответьте пожалуйста как вы выводите в типе контента на отдельной записи виджет любой кроме виджета тело? Так чтобы в остальных записях этого типа контента виджет тело выводился.

Litemir

Мне бы понять до конца что вы конкретно хотите. Но из своего опыта понимаю что скорее возможно чем нет.

Штатное решение — не создавать отдельный виджет для каждого профиля, а создать пользовательскую группу страниц по URL-маске.

В админке: Виджеты и страницы → Создать страницу.

В «Положительные маски» укажите профили пользователей: users/% — если адреса вида /users/123; либо users/{slug}* — если профили имеют символьный URL.

Перейдите на созданную страницу в дереве «Пользовательские» и перетащите туда нужный виджет.

Если на профилях не должны выводиться виджеты, назначенные на «Все страницы», добавьте этим виджетам в настройках → «Доступ» → «Отрицательные маски» ту же маску профиля, например users/% и/или users/{slug}*.

Так нужный виджет будет оставаться одним экземпляром с едиными настройками для всех страниц профилей. Если его также нужно показать на других страницах, используйте блок «Привязываемые виджеты»: это одна привязка, а не копия, поэтому настройки синхронны.

В послидних версиях есть ещё более жёсткий вариант: у пользовательской группы страниц включить «Применить макет для страницы» и назначить облегчённый макет, но обычно достаточно масок и отрицательных масок.

Это прямо предусмотрено документацией: пользовательская страница — именно правило отбора существующих URL для привязки виджетов; в качестве примера приведены профили /users/4, /users/23, /users/42.

Механика общей привязки одного виджета описана в управлении виджетами, а исключение виджета по маскам — в настройках виджета.

Ну а я сам эксперементирую разные конфигурации на этом сайте.

#14 19 июля 2026 в 14:46

а исключение виджета по маскам — в настройках виджета.

Clear

Спасибо, что ткнули носом.) Так реально быстрее, да и похоже правильней будет.

Изображение

#15 19 июля 2026 в 15:10
Ответьте пожалуйста как вы выводите в типе контента на отдельной записи виджет любой кроме виджета тело? Так чтобы в остальных записях этого типа контента виджет тело выводился.
Clear

Вы всё же не правильно меня понимаете. В доках я прочитал что да как. Но я не нашёл то что мне нужно. Повторюсь. Есть тип контента pages в нём и как во всех остальных размещён на всех страницах Виджет ТЕЛО. Мне нужно чтобы он не размещался только на одной записи из указанного типа контента pages. Маску я делаю положительную на одну страницу что мне нужно и вывожу нужный виджет. Он выводиться всё как положено, но и виджет ТЕЛО тоже выводиться так как указан чтобы выводить на всех страницах. 

Не понятно как от него избавиться ИМЕННО на одной странице записи.

Добавлено спустя 3 минуты
Ответьте пожалуйста как вы выводите в типе контента на отдельной записи виджет любой кроме виджета тело? Так чтобы в остальных записях этого типа контента виджет тело выводился.
Clear

Не много не досмотрел. По отрицательным маскам. Спасибо. Да Ваш вариант быстрее и без костылей. Спасибо.

Похожие темы

Похожее в блогах

🍪Мы используем файлы cookie для работы сайта. Читать подробнее.