телевизори. Конзоли. Проектори и аксесоари. Технологии. Цифрова телевизия

Modx revo към коя група принадлежи ресурсът. Как да скриете ресурси в дървото на документа от административния панел на мениджъра Modx Revolution. Ние даваме достъп до ресурсната група „Администратор“ само на потребителската група „Администратор“.

Тук ще говоря за това как да направите някои страници от сайта затворени за неоторизирани потребители, т.е. гости. Това понякога е необходимо, когато трябва да създадете частни секции. И така, да започваме.

Потребителска група

Създаваме група от потребители, на които ще предоставим достъп затворени страници. За да направите това, отворете системното меню (в горния десен ъгъл) и изберете „Контрол на достъпа“.

Натисни бутона Нова групапотребители.

След това трябва да посочите правата за достъп на новосъздадената група до уеб контекста - Зареждане, списък и преглед.

Ресурсна група

Сега трябва да създадете група ресурси, която ще включва страници за затворен достъп. В горното меню на административния панел изберете елемента Съдържание > Групи ресурси. В прозореца, който се отваря, щракнете върху бутона Създаване на група ресурси. Попълнете полетата в диалоговия прозорец на групата ресурси.

Щракнете върху бутона Запиши. Вече тук можем да добавим частни страници към групата ресурси - от дясната страна с мишката преместваме желаната страница в групата ресурси вляво. Но настройката все още не е завършена. Сега трябва да редактираме разрешенията на групата ресурси, защото MODX дава грешни разрешения по подразбиране. Отидете отново на „Контрол на достъпа“ и променете достъпа до групата ресурси за групите „(анонимни)“ и „Потребители“ на Само натоварванеИ Зареждане, списък и преглед.

Защо да даваме на анонимни хора достъп до затворени ресурси? Ако не го дадете, MODX няма да може да зареди страницата и ще покаже код 404 „не е намерен“. И така MODX ще зареди страницата, ще провери правата и ще върне 403 „достъпът е отказан“. Между другото, за предпочитане в системните настройки unauthorized_pageпосочете идентификатора на страницата, към която MODX ще пренасочва непроверените потребители.

Можете да добавите всяка страница към група ресурси на страницата на самия ресурс в раздела „Групи ресурси“, като поставите отметка в съответното квадратче.

Това завършва настройката. Сега, когато гост се опита да отвори страницата за оторизирани потребители, той ще бъде пренасочен към страницата, която сте посочили в системни настройкив ключа unauthorized_page.

21 декември 2015 г., 12:28 ч 0 5204

MODX има интересна функция - можете да промените външен видформи за редактиране на ресурси почти както искате. Освен това можете да правите различни форми за различни потребителски групи и дори за различни ресурси. Можете да изберете различни профили на формата за на този ресурсв зависимост от неговия шаблон, родител или други свойства.

И за това не е нужно да пишем нито един ред код!

Да видим какво, например, можете да правите с формуляри:

Първо, нека премахнем ненужните точки горно менюв един общ параграф - „Програмист“. За да направите това, отидете в секцията „Система“ -> „Действия“, създайте нов елемент от менюто в корена и плъзнете всички ненужни елементи там:

След това отидете на секцията „Сигурност“ -> „Настройки на формуляр“ и създайте нов профил, например „Мениджър на съдържанието“. След това щракнете с десния бутон върху него и изберете „Редактиране“, отидете в раздела „Потребителски групи“ и добавете група, към която ще се прилагат новите правила.

След това създаваме нов набор от правила. Има два вида от тях - един за формата за създаване на ресурс, вторият - за формата за редактирането му (съответно създаване и актуализиране). Може да има няколко от тези правила - поне едно правило за всеки ресурс.

След като правилото бъде създадено, ще видите страницата с настройки - има три раздела: Информация за набор от правила, Региони, Допълнителни полета.

Първият раздел изброява стандартните ресурсни полета. Те могат да бъдат деактивирани или преименувани. Регионите са раздели на ресурс. Можете да създадете нов регион и да поставите някои телевизионни параметри там, тогава ресурсът ще ги има не в раздела „Допълнителни полета“, а в нов раздел - който посочите. Тук можете да деактивирате стандартните раздели, например „Групи ресурси“.

В третия раздел посочвате местоположението на определен телевизионен параметър.

Направих малък измамен лист за стандартни региони:



Така че, нека незабавно премахнем всички раздели за потребителя с изключение на първия. Премахнете отметката от регионите: modx-page-settings, modx-panel-resource-tv, modx-resource-access-permissions. След това от стандартните полета ще оставим само pagetitle и alias. Премахваме отметките от останалите. Посочете ново име за полето за заглавие на страницата: „Заглавие на новина“ и псевдоним: „Адрес на страница“.

След това отидете в раздела „Допълнителни полета“ и посочете, че телевизионните параметри трябва да бъдат в една или друга област на формуляра (в съответствие с мамения лист).

Остава само да посочим за кои ресурси се прилага това правило - в елемента „Шаблон“ посочваме към кои ресурси с кои шаблони трябва да се прилага правилото. Ако правилото е за всички шаблони, тогава не уточняваме нищо. И има още два елемента: „Ограничаващо поле“ и „Ограничаваща стойност“. Тук можете да посочите други полета.

Нека отбележим, че това правило важи за ресурси, намиращи се в „Новини“ - в елемента „Ограничаващо поле“ пишем родител, а в „Ограничаваща стойност“ идентификаторът на ресурса „Новини“, напр. 22 .

Един от първите проблеми, които срещнах, когато преминах към ModX Revolution, беше, че не знаех как да покажа името на категорията (родител) в съобщението за статия на начална страница. Въпреки усилията Google предостави много оскъдна информация, най-вече за предишната тема на Evo. По един или друг начин има решение на проблема и днес ще ви кажа как да покажете името на категорията на главната страница на сайта в Modx Revolution.

Какво е ресурс в ModX Revolution?

Ресурс в CMS/CMF ModX означава всяка страница, създадена в административния панел, може да бъде като редовни страницина сайта (документи), както и обикновени уеб връзки, символни връзки, статични елементи или файлове. По подразбиране ресурсът е документ, който също е страница на вашия уебсайт.

Един ресурс може да бъде контейнер и да действа като директория, включваща група от други ресурси. Пример:

  • Създаване на уебсайт (Категория)
  • — Как да създадете уебсайт от нулата? (статия в блога)
  • — Как да регистрирам домейн? (статия в блога)
  • Как да покажа име на категория в ModX?(статия в блога)

Показване на името на категорията, в която се намира статията в ModX Revolution

Сега знаем какво е ресурс и сме изправени пред задача отпечатайте името на родителя, с други думи, контейнер във всеки запис в обявата в сайта.

Първо, трябва да инсталираме това, което ще използваме за извеждане, а именно пакета pdoTools, ако не сте го инсталирали, тогава бързо отидете на инсталатора на пакета и го инсталирайте, той включва много фрагменти, които ще ни помогнат и с него извеждам всички публикации в блога. Ще се нуждаем от един от фрагментите, които са включени в сборката на pdoTools, а именно pdoField, който показва всяко поле на посочения ресурс или неговия родител, включително TV параметри.

След като инсталирате пакета, отворете шаблона, който отговаря за показването на обявата на статията и поставете прост код

[]`&field=`pagetitle`]]

Използвайки този код, ние показваме на сайта името на контейнерния ресурс, в който се намира текущият материал, под формата на връзка с писмено заглавие. Запазваме шаблона, опресняваме страницата и виждаме фрагмента в действие. Надявам се, че тази статия ви е помогнала, абонирайте се за блога и споделете връзката с приятелите си. До следващия път.

Статия, в която ще разгледаме как да MODX революцияорганизирана е система за права на достъп, както и някои стандартни инструкции за задаване на права за потребители.

Система за права на достъп в MODX

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

С други думи, за да предоставим на потребителя някои права, е необходимо:

  • създайте група и й задайте необходимите привилегии;
  • поставете един или повече потребители в тази група.

Но това, че е потребител в група, не означава, че ще получи всички нейни привилегии. Правата, които ще получи потребителят, ще се определят от ролята, която му е присвоена в тази група.Ролята (ранг) на даден потребител в група се определя с помощта на число от 0 до 9999. Тази стойност определя кой потребител ще получи групови привилегии и кой не.

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

Нека да разгледаме един малък пример.


В този пример:

  • Потребител Потребител1принадлежи към групата Група1. Той има тези групови привилегии, чиято роля е по-голяма 2000 .
  • Потребител Потребител2се състои от 2 групи. Има 2 групови привилегии. От първата група ( Група1) той има онези привилегии, чиято роля е по-голяма или равна на 1000 . И от втория ( Група2) - тези привилегии, чиято роля е по-голяма или равна на 9999 .
  • Потребител Потребител3е в групата Група2. Тази група му дава онези права, чиято роля е по-голяма или равна на 5000 .

Правила за достъп до MODX

Задаването на групови привилегии в MODX Revolution се извършва с помощта на политики за достъп. Политиките за достъп се присвояват на група във връзка с определени MODX обекти, а именно контекст, група ресурси, категория на елемент, източник на файл и пространство на имена. Освен това е посочено и минимална роля, които потребителят на тази група трябва да има тези привилегии.

Нека погледнем изображението.

Привилегиите, които получават потребителите на дадена група, в зависимост от ролята, която всеки от тях играе в нея

В този пример:

  • Потребител Потребител1(роля в група 1 - 2000 ) има всички групови привилегии Група1, чиято роля е по-голяма или равна на 2000. Т.е. Това К1, К2И G2.
  • Потребител Потребител2има най-високата роля в групата (0) и следователно всички нейни привилегии ( К1, К2, G1И G2).
  • Потребител Потребител3има в групата Група1най-ниска роля ( 9999 ). В съответствие с него той може да извършва действия в системата, дефинирана в К2И G2.

Правилата за достъп са набор от права, предоставени на потребител за извършване на действия на уебсайт, изпълняващ CMS MODX Revolution.

Защо се прилага по този начин? Това се дължи на факта, че в MODX има много права и е по-удобно да ги присвоите на групи (с други думи, като използвате правила за достъп), а не едно по едно.

Например политика за достъп Зареждане, списък и прегледима следния набор от разрешения:

  • натоварване (зареждане на обекти);
  • списък (получете колекция от обекти);
  • изглед (разглеждане на обекти).

Как да създадете своя собствена политика за достъп

Когато задавате разрешения за група потребители, не сте ограничени до съществуващите (предварително инсталирани) правила в системата MODX. Ако е необходимо, можете да създадете нови. Създаването на политика в MODX се основава на шаблон за правила за достъп. Шаблонът за правила за достъп е обект на MODX Revolution, който дефинира максималния списък от разрешения, налични при създаване на правила за достъп.

По този начин, за да създайте политика за достъп с необходимите разрешениянеобходимо:

  1. Намерете подходящ шаблон за правила за достъп (ако е необходимо, редактирайте съществуващ или създайте нов).
  2. Създайте политика за достъп, като изберете подходящия шаблон.
  3. От целия списък с разрешения, предлагани от шаблона, включете само тези, които искате да предоставите на потребителите (ако те ще имат тази политика).
Как се определя наборът от налични разрешения за правила за достъп

Когато създавате политика за достъп, винаги започвайте с присвояване на минималния брой права, които са достатъчни за потребителя да извършва определени действия в системата. Ако е необходимо, винаги можете да разширите разрешенията, предоставени на потребителя.

Анонимен потребител

В MODX Revolution всеки неоторизиран посетител на сайта е анонимен и принадлежи към групата (анонимен). Можете лесно да проверите това, ако създадете следния фрагмент, поставите извикването му в шаблона на ресурса и след това отворите страницата.

Php кодов фрагмент GetUser:

потребител->получи("потребителско име");

Извикване на фрагмент на страница:

[[!GetUser]]

Резултат:

(анонимен)

Действията на анонимни потребители на сайт в MODX се регулират чрез задаване на групови разрешения (анонимен). Ако е необходимо, можете да дадете на тази група допълнителни привилегии или да ги ограничите.

Типични инструкции за настройка на разрешения

В този раздел ще разгледаме инструкции, които можете да използвате, когато трябва:

  • ограничаване на достъпа до определени ресурси за анонимни потребители;
  • създаване на мениджър на съдържание, който трябва да получи достъп за работа с ресурси в админ панела, както и възможност за качване на снимки.

Ограничаване на достъпа до определени ресурси

Нека разгледаме пример, в който ще ограничим достъпа до определени ресурси за анонимни потребители (например до личен акаунт, до страницата „Промяна на паролата“ и т.н.). Ние ще предоставим достъп до тези ресурси само на регистрирани потребители.

За да направите това ви трябва:

  1. Създавайте Група потребителски ресурси(Съдържание -> Групи ресурси -> бутон „Създаване на група ресурси“). Във формуляра, който се показва, въведете в полето „Име“ - Потребителии кликнете върху бутона "Запазване". Поставете необходимите ресурси в него (достъпът до които трябва да бъде ограничен за анонимни посетители).
  2. Създавайте потребителска група Потребители(Икона на зъбно колело -> Контрол на достъпа -> Бутон за нова потребителска група). В диалоговия прозорец, който се отваря, въведете в полето „Име“ - Потребители, "Контексти" - уеб, „Политики на задния край“ - (няма правила).
  3. Отидете в режим на редактиране на група (в контекстното меню Потребители изберете „Редактиране на потребителска група“).
  4. Отворете раздела „Права за достъп“ и в него „Достъп до групи ресурси“. Кликнете върху бутона „Добавяне на група ресурси“ и попълнете формуляра, който се отваря („Група ресурси“ - Група, "Контекст" - (уеб), Минимална роля – Член (9999), „Правила за достъп“ – Зареждане, списък и преглед).

След това всеки анонимен или друг потребител (който няма права) ще получи 404 ресурс(тъй като той дори няма право натоварване), ако се опита да отвори някоя страница от тази група.

Ако искате анонимни потребители, когато отварят защитени страници, да бъдат изпращани на някой друг (например авторизация), тогава трябва допълнително да направите следното (а именно да дадете право натоварванеза тази група ресурси):

  1. Отворете системни настройки(Икона на зъбно колело -> Системни настройки). Изберете пространството от имена „ядро“, раздел „Сайт“. Намерете параметър unauthorized_page(Страница за грешка 403 „Достъпът е отказан“) и му дайте стойността - идентификатор на ресурссъдържаща формуляра „Упълномощаване“.
  2. Отидете в режим на групово редактиране (анонимен). В раздела „Достъп до групи ресурси“ (раздела „Права за достъп“) добавете Група потребителски ресурсии му дайте необходимите права (в този случай „Контекст“ - (уеб), Минимална роля – Член (9999), „Правила за достъп“ – Само зареждане).
Настройване на достъп до ресурсната група Потребители за анонимни потребители

Задаване на разрешения за мениджъра на съдържанието

В този пример ще създадем група „Мениджъри“, чиито потребители ще могат да качват изображения в директория в админ панела и да работят с определени ресурси.

За да направите това, можете например да използвате следните инструкции:

1. Създайте нов Мениджър на правила за достъпс необходимите права:

  • Отворете страницата „Контрол на достъпа“ (икона на зъбно колело -> Контрол на достъпа) и отидете на раздела „Правила за достъп“.
  • Направете копие на политиката „Редактор на съдържание“.
  • Редактирайте създаденото копие, а именно променете полето за име на Мениджър и поставете отметки в квадратчетата до правата directory_list, file_list, file_manager, file_remove, file_tree, file_upload. В резултат на това политиката за достъп на мениджъра ще има 30 разрешения. Това трябва да се направи, за да се предоставят права на потребителя за работа с файлове.
  • Кликнете върху бутона „Запазване“.
Формуляр за конфигуриране на правила за достъп на мениджър

2. Скрийте ресурсите, до които мениджърите не трябва да имат достъп в админ панела:

  • Отворете страницата „Групи ресурси“ и щракнете върху бутона „Създаване на група ресурси“.
  • Във формата, която се отваря, въведете „Име“ - ClosedForManagers, "Контексти" - mgrИ МаркОпция „Автоматично предоставяне на достъп до групата администратори“.
  • Кликнете върху бутона „Запазване“.
  • Плъзнете ресурси, които трябва да бъдат скрити за мениджърите в административния панел, към създадената група.

3. Осигурете достъп до директорията, в която потребителят ще качва снимки.

  • Отворете страницата „Източници на файлове“, щракнете върху бутона „Създаване на нов източник на файлове“.
  • Във формата, която се отваря, въведете текста в полето „Име“. Изображения, в „Описание“ - Изображения, в „Тип източник на файл“ - Файлова система.
  • Кликнете върху бутона „Запазване“.
  • Редактирайте новосъздадения източник на файл (десен бутон на мишката -> действие „Редактиране“).
  • Променете стойността на параметрите: basePath – активи/изображения/, baseUrl – активи/изображения/разрешени типове файлове - jpg, jpeg, png, gif.
  • Кликнете върху бутона „Запазване“.
Настройка на източника на файла с изображения

Файлов източник, който няма асоциирана с него потребителска група, ще бъде достъпен за всички бекенд потребители. Следователно, за да се предотврати показването на други файлови източници, които не са свързани с една група, на потребителите на групата Мениджъри, те могат например да бъдат присвоени на потребителската група Администратор.

MODX - Асоцииране на файлов източник на файлова система с групата администратор

Системата за контрол на достъпа MODX, използваща източник на файл, позволява на различни потребители да определят конкретни директории, до които ще имат достъп, както и да определят набора от своите привилегии в тях. С други думи, това е система, с помощта на която например на едни потребители могат да се дават едни директории, а на други - други.

4. Създавайте нова потребителска групаи му задайте необходимите права.

  • Отворете страницата „Контрол на достъпа“, отидете на раздела „Потребителски групи и потребители“, щракнете върху бутона „Нова потребителска група“.
  • В диалоговия прозорец, който се отваря, попълнете следните полета: „Име“ - Мениджъри; "Описание" - Мениджъри; "Контексти" - уеб, мгр; „Политика за задния край“ – Управител.
  • Кликнете върху бутона „Запазване“.
  • Отидете в режима за редактиране на новосъздадената потребителска група „Мениджъри“ (щракнете с десния бутон върху групата -> елемент в контекстното меню „Редактиране“).
  • Отидете в раздела „Права за достъп“.
  • Отворете секцията „Достъп до контексти“. Достъп до контекст уеб: „Минимална роля“ - Член (9999); Правила за достъп – Зареждане, списък и преглед. Достъп до контекст mgr: „Минимална роля“ - Член (9999),Правила за достъп – Управител.
  • В секцията „Достъп до източник на файл“ добавете нов запис със следните стойности: „Източник“ - Изображения; "Минимална роля" - Член (9999), „Правила за достъп“ – Администратор на медийния източник.
  • Кликнете върху бутона „Запазване“.

5. Създавайте потребители го добавете към групата „Мениджър“. Задайте стойността на ролята на 9999 (член). Тази роля ще му бъде достатъчна, за да получи всички разрешения на тази група. Това се дължи на факта, че за тази група не сме задали правила за достъп, които биха изисквали роля, по-голяма от 9999.

Добавяне на потребител към групата мениджър (роля на член)

Добър ден, скъпи читатели. Днес ще ви кажа как да скриете системни ресурси или ресурси, които не са необходими за мениджъра от дървото на документа на управляван сайт Modx революция(Сегашна версия 2.4.2 ). Първо, нека разберем защо имаме нужда от това. В дървото на документите имаме системни ресурси, които не показваме в менюто. Това е, да речем, карта на сайта, резултати от търсене, страница 404, сайтът не е наличен и много много други. И наистина не бих искал обикновен мениджър да вижда тези ресурси в дървото на документа. И в Modx революцияТова е предвидено - те могат просто да бъдат скрити. Сега ще опиша подробно как става това. Като пример ще дам един от моите сайтове. Неговото дърво на документи изглежда така:

Виждаме, че тук има системни ресурси, които не се показват в менюто: Карта на сайта, Количка за пазаруване, Резултати от търсенето и Плащане. Трябва да скрием тези ресурси от прекалено любопитен мениджър, за да не прецака нещо там.

Създайте група ресурси

Отиваме на Групи съдържание/ресурси

и натиснете бутона „Създаване на група ресурси“

и създайте група "администратор"(може да го наречеш по друг начин)

Не поставяме отметка в квадратчета. Натисни бутона "Запазване"

Прехвърляне на необходимите ресурси към групата ресурси „Администратор“.

Ние даваме достъп до ресурсната група „Администратор“ само на потребителската група „Администратор“.

За това отиваме на "Контрол на достъпа"

Щракнете с десния бутон върху потребителската група "администратор"и щракнете "редактиране на потребителска група"

Да отидем на раздела "Права за достъп"

Тук отиваме в раздела „Достъпи до групи ресурси“

И натиснете бутона „Добавяне на група ресурси“

  • Група ресурси:"администратор"
  • Контекст:Мениджър (м.н.с.)
  • Минимална роля:Член-9999
  • Правила за достъп:Ресурс

Актуализираме административния панел на мениджъра и виждаме, че ресурсите, които добавихме към групата ресурси "администратор"изчезна.

Разбира се, при условие, че сте създали администраторския панел на мениджъра с помощта на това.

Следващият път, когато трябва да скриете ресурс, можете просто да отидете на този ресурс, да щракнете върху „Група потребители“и поставете отметка в квадратчето отсреща "администратор"

Това е всичко, което имам, успех с ученето Modx революцияи до нови уроци. Надявам се, че помогна. Добре.



Свързани публикации