Перейти к публикации
Поиск в
  • Дополнительно...
Искать результаты, содержащие...
Искать результаты в...

[Решено] Как скрыть товары от гостей


olenka
 Поделиться

Рекомендованные сообщения

Добрый вечер. Есть такая необходимость, показывать товары только зарегистрированным пользователям. То есть, есть такая функция, скрыть цены гостям, а нужно что была пустая витрина и ее содержимое видели только зарегистрированные пользователи. Интересно можно в опенкарт такое провернуть? Буду благодарна, если посоветуете как это сделать или может модуль какой есть. 
Спасибо. 

Ссылка на комментарий
Поделиться на других сайтах


Что такое ПС? 

Поисковая система...

Имеется в виду, как Вы планируете продвигать сайт, если товаров не будет...

Ссылка на комментарий
Поделиться на других сайтах

Поисковая система...

Имеется в виду, как Вы планируете продвигать сайт, если товаров не будет...

 

Мне не нужно его продвигать в поиске. Это не стандарт и не магазин. Но мне нужен именно опенкарт, мне удобно с ним работать. Просто думаю если есть такая функция или ее можно кодом выполнить, то мне полностью подходит. Я давно уже научилась использовать опенкарт для своих нестандартных решений, просто не люблю этот вордпресс жумлу и прочие движки. 

Ссылка на комментарий
Поделиться на других сайтах


Тут лица только по моему приглашению и я знаю от куда их пригласить. Но мне нужно чтобы эту информацию видели избранные. Вот как-то так) 

Ссылка на комментарий
Поделиться на других сайтах


Нашла что-то в гугле. Попробую вот по этому принципу 

для категорий в контроллер catalog\controller\product\category.php

сразу после index()

вставить

        if (!$this->customer->isLogged()) {

            
$this->response->redirect($this->url->link('account/login''''SSL'));
        }

Для товара, тоже самое но в product.php

Ссылка на комментарий
Поделиться на других сайтах


Если для версии <2.2

то в index.php можно попробовать вставить

 

// Router

if (!$this->customer->isLogged()) {

           $request->get['route'] =
'account/login';
        }

if (isset($request->get['route'])) {

 

Но это так.. чисто мысли

Ссылка на комментарий
Поделиться на других сайтах

Если для версии <2.2

то в index.php можно попробовать вставить

 

// Router

if (!$this->customer->isLogged()) {

           $request->get['route'] = 'account/login';

        }

if (isset($request->get['route'])) {

 

Но это так.. чисто мысли

А у меня получилось как выше сообщение написала)) Спасибо за помощь!  :wink:

Ссылка на комментарий
Поделиться на других сайтах


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

Ссылка на комментарий
Поделиться на других сайтах

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

Да не. Ничего такого не нужно. Мне нужна категория, сама страница товара и поиск. 

Ссылка на комментарий
Поделиться на других сайтах


Не получается, 500 ошибка. Также необходимо закрыть магазин от гостей (специфика магазина, регистрация идёт по премодерации, гостям товар и прочее не показывается) 

ocStore 2.1.0.2.1

Изменено пользователем sonario
Ссылка на комментарий
Поделиться на других сайтах


Если для версии <2.2

то в index.php можно попробовать вставить

 

// Router

if (!$this->customer->isLogged()) {

           $request->get['route'] = 'account/login';

        }

if (isset($request->get['route'])) {

 

Но это так.. чисто мысли

Сервер ругается - PHP Fatal error:  Using $this when not in object context 

Ссылка на комментарий
Поделиться на других сайтах


if (!$this->customer->isLogged()) {

заменить

на $customer

не, никак.

 

вот блок Router, всё ли верно?

// Router
$customer

           $request->get['route'] = 'account/login';
        }
if (isset($request->get['route'])) {
	$action = new Action($request->get['route']);
} else {
	$action = new Action('common/home');
}
Ссылка на комментарий
Поделиться на других сайтах


if (!$this->customer->isLogged()) {

заменить

на $customer

разобрался! 

 

Вот рабочий код. Спасибо за помощь! 

// Router
if (!$customer->isLogged()) {

           $request->get['route'] = 'account/login';
        }
if (isset($request->get['route'])) {
	$action = new Action($request->get['route']);
} else {
	$action = new Action('common/home');
}
Ссылка на комментарий
Поделиться на других сайтах


if (!$this->customer->isLogged()) {

заменить

на $customer

Вывелась проблема - сайт закрывается, но закрывается и регистрация вместе с этим! Соотв и функция восстановления пароля тоже не работает

Изменено пользователем sonario
Ссылка на комментарий
Поделиться на других сайтах


  • 2 недели спустя...
  • 4 месяца спустя...
11 минут назад, PilotGT сказал:

Подскажите рабочий код, для 2.3, пожалуйста.

Для этого мне пришлось изучить систему событий, и просмотреть кучу цепочек.

 

 

Ссылка на комментарий
Поделиться на других сайтах

2 часа назад, chukcha сказал:

Для этого мне пришлось изучить систему событий, и просмотреть кучу цепочек.

 

 

Т.е. решения не подскажите?

Ссылка на комментарий
Поделиться на других сайтах


2 часа назад, chukcha сказал:

изучить систему событий, и просмотреть кучу цепочек.

Вот решение

Ссылка на комментарий
Поделиться на других сайтах

Создайте аккаунт или войдите в него для комментирования

Вы должны быть пользователем, чтобы оставить комментарий

Создать аккаунт

Зарегистрируйтесь для получения аккаунта. Это просто!

Зарегистрировать аккаунт

Войти

Уже зарегистрированы? Войдите здесь.

Войти сейчас
 Поделиться

  • Сейчас на странице   0 пользователей

    • Нет пользователей, просматривающих эту страницу.
×
×
  • Создать...

Важная информация

На нашем сайте используются файлы cookie и происходит обработка некоторых персональных данных пользователей, чтобы улучшить пользовательский интерфейс. Чтобы узнать для чего и какие персональные данные мы обрабатываем перейдите по ссылке. Если Вы нажмете «Я даю согласие», это означает, что Вы понимаете и принимаете все условия, указанные в этом Уведомлении о Конфиденциальности.