Достъп до CiviCRM в WordPress

По подразбиране, само потребители с администраторски права в WordPress имат пълен достъп до CiviCRM. Това се дължи на начина, по който WordPress управлява потребителските роли и възможности.

За да дадете достъп на други потребители до CiviCRM, без да им предоставяте пълни администраторски права в WordPress, трябва да конфигурирате разрешенията както в WordPress, така и в CiviCRM.

1. Конфигуриране на роли и възможности в WordPress:

  • Създаване на нова роля (препоръчително): Вместо да променяте съществуващи роли, е най-добре да създадете нова роля в WordPress, специално за потребители, които трябва да имат достъп до CiviCRM. Например, можете да създадете роля „CiviCRM потребител“ или „Член на организацията“. За да създадете роля, можете да използвате плъгин като „Members“ или да добавите код към functions.php на вашата тема (ако сте напреднал потребител).
  • Присвояване на възможности (capabilities): След като създадете ролята, трябва да й присвоите необходимите възможности. CiviCRM използва определени възможности, за да контролира достъпа. Тези възможности обикновено започват с access CiviCRM. Най-важните са:
    • access CiviCRM: Основно разрешение за достъп до CiviCRM. Задължително е.
    • administer CiviCRM: Предоставя пълни администраторски права в CiviCRM (трябва да се дава само на доверени потребители).
    • Други възможности: CiviCRM има много по-специфични възможности, които контролират достъпа до различни части на системата (например, access CiviCRM contacts, access CiviCRM events, access CiviCRM contributions). Можете да ги използвате, за да предоставите фино настроен достъп.
  • Присвояване на роля на потребители: След като създадете ролята и й присвоите възможности, трябва да присвоите тази роля на потребителите, които искате да имат достъп до CiviCRM.

Пример за код за добавяне на роля и възможности (в functions.php на темата или чрез плъгин):

PHP

function add_civicrm_role() { add_role( ‘civicrm_user’, // Slug на ролята ‘CiviCRM User’, // Име на ролята array( ‘read’ => true, // Позволява четене на публикации ‘access CiviCRM’ => true, // Основно разрешение за CiviCRM ‘access CiviCRM contacts’ => true, // Достъп до контакти // Добавете други необходими възможности тук ) ); } add_action( ‘init’, ‘add_civicrm_role’ );

2. Конфигуриране на разрешения в CiviCRM (ACL):

След като сте конфигурирали ролите в WordPress, е изключително важно да конфигурирате и списъците за контрол на достъпа (ACL) в CiviCRM. Това се прави от Администриране -> Потребители и достъп -> Разрешения за достъп (достъп до ACL).

  • Създаване на ACL правила: Тук дефинирате кой (роля или потребител) има достъп до какво (действия или данни) в CiviCRM.
  • Пример: Можете да създадете правило, което позволява на ролята „CiviCRM User“ да вижда и редактира само собствените си контакти (както е описано в предишния отговор).
  • Важно: Уверете се, че ACL правилата в CiviCRM съответстват на ролите и възможностите, които сте конфигурирали в WordPress.

3. Синхронизация на потребители (ако е необходимо):

В някои случаи може да се наложи да синхронизирате потребителите между WordPress и CiviCRM. Това обикновено се случва автоматично, но ако имате проблеми, можете да използвате разширение или да проверите настройките за синхронизация в CiviCRM.

Обобщение:

  1. Създайте нова роля в WordPress (например, „CiviCRM User“).
  2. Присвоете на тази роля възможността access CiviCRM и други необходими възможности.
  3. Присвоете създадената роля на потребителите, които трябва да имат достъп до CiviCRM.
  4. Конфигурирайте ACL правила в CiviCRM, за да контролирате достъпа до данните и функциите.

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


Comments

Вашият коментар

Вашият имейл адрес няма да бъде публикуван. Задължителните полета са отбелязани с *