Extra Block Types (EBT) - New Layout Builder experience❗

Extra Block Types (EBT) - styled, customizable block types: Slideshows, Tabs, Cards, Accordions and many others. Built-in settings for background, DOM Box, javascript plugins. Experience the future of layout building today.

Demo EBT modules Download EBT modules

❗Extra Paragraph Types (EPT) - New Paragraphs experience

Extra Paragraph Types (EPT) - analogical paragraph based set of modules.

Demo EPT modules Download EPT modules

Scroll

Доступ гостей только к 2м материалам сайта

Доступ гостей только к 2м материалам сайта
, by

Привет!

 

Сайт полностью закрыт для гостевого доступа. Весь контентт доступен только после авторизации.

Для создания "Правил и Соглашения" использовал модуль Legal. Все прекрасно и замечательно, но созданные две страницы "Правила" и "Соглашение" не доступны для гостей, пока они не подтвердят свое согласие с этими правилами, а прочитать они их не могут, т.к. для гостей закрыт доступ на просмотр содержимого.

 

На сайте много информации, имеется форум.

 

Нужно как-то открыть доступ только к двум страницам материала.

1 answer
votes: 810
Answer

Привет,

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

<?php
if($_SERVER['REQUEST_URI'] == '/user/1'){
  global $user;
  if($user->uid != 1){
    header('Location: '.base_path());
  }
}
?>

Этот код перенаправляет пользователя со страницы админа на главную. Вам нужно сделать проверку в которой наоборот нужно проверять находится ли пользователь на нужной странице:

<?php
global $user;
if($user->uid == 0){
  if( $_SERVER['REQUEST_URI'] == '/content/pravila-pokupok' || $_SERVER['REQUEST_URI'] == '/node/7' || $_SERVER['REQUEST_URI'] == '/content/akciya' || $_SERVER['REQUEST_URI'] == '/node/8' || substr($_SERVER['REQUEST_URI'], 0, 5) == '/user'){

  }else{
      header('Location: /node/7');
  }
}
?>