Перейти до вмісту
Пошук в
  • Детальніше...
Шукати результати, які ...
Шукати результати в ...

Автообновление корзины


Recommended Posts

Приветствую, сайт, добавляя товар в корзину, все хорошо, если браузерно вернуться на пред. страницу, его там нет в корзине пока не обновишь страницу. Очень банальный вопрос, решения для 3++ не нашел.

Надіслати
Поділитися на інших сайтах


  В 04.06.2020 в 10:11, boltov сказав:

Приветствую, сайт, добавляя товар в корзину, все хорошо, если браузерно вернуться на пред. страницу, его там нет в корзине пока не обновишь страницу. Очень банальный вопрос, решения для 3++ не нашел.

Expand  

чем больше тем создадите тем выше вероятность ответа :)

шутка

Надіслати
Поділитися на інших сайтах


  В 04.06.2020 в 10:11, boltov сказав:

Приветствую, сайт, добавляя товар в корзину, все хорошо, если браузерно вернуться на пред. страницу, его там нет в корзине пока не обновишь страницу. Очень банальный вопрос, решения для 3++ не нашел.

Expand  

Подобные вопросы лучше задавать в теме поддержки шаблона. Если код шаблона не ковыряли, то @m899 (разработчик) поможет.

Надіслати
Поділитися на інших сайтах


Здесь виноват не разработчик, а сама тройка,

в отличие от ранних версий, использующих файловое хранилище сессий, а точнее (session_start() ),  тройка использует хранение сессий в базе

 

session_start() - подключает заголовок

https://www.php.net/manual/ru/function.session-cache-limiter.php

 

А в тройке этого нет

 

Чтобы это избежать
нужно самостоятельно такие заголовки добавить в header
 

$this->responce->AddHeader('Expires: Thu, 19 Nov 1981 08:52:00 GMT');
$this->responce->AddHeader('Cache-Control: no-store, no-cache, must-revalidate, post-check=0, pre-check=0');
$this->responce->AddHeader('Pragma: no-cache');

Как-то так

 

Если на стороне фронта кеширование еще как-то терпимо, то на стороне админки
Это чуть ли не обязательно

 

Надіслати
Поділитися на інших сайтах

  В 04.06.2020 в 15:20, chukcha сказав:

Здесь виноват не разработчик, а сама тройка,

в отличие от ранних версий, использующих файловое хранилище сессий, а точнее (session_start() ),  тройка использует хранение сессий в базе

 

session_start() - подключает заголовок

https://www.php.net/manual/ru/function.session-cache-limiter.php

 

А в тройке этого нет

 

Чтобы это избежать
нужно самостоятельно такие заголовки добавить в header
 

$this->responce->AddHeader('Expires: Thu, 19 Nov 1981 08:52:00 GMT');
$this->responce->AddHeader('Cache-Control: no-store, no-cache, must-revalidate, post-check=0, pre-check=0');
$this->responce->AddHeader('Pragma: no-cache');

Как-то так

 

Если на стороне фронта кеширование еще как-то терпимо, то на стороне админки
Это чуть ли не обязательно

 

Expand  

Этот код я так понимаю можно просто закинуть в хедер?

Надіслати
Поділитися на інших сайтах


  В 04.06.2020 в 15:36, boltov сказав:

Этот код я так понимаю можно просто закинуть в хедер?

Expand  

может быть, а может быть и в  catalog/startup/startup.php

Надіслати
Поділитися на інших сайтах

  • 2 weeks later...
  В 04.06.2020 в 18:16, chukcha сказав:

может быть, а может быть и в  catalog/startup/startup.php

Expand  

Спасибо. По крайней мере в хеадере работает.

Грамматическая ошибка $this->response

s должна быть вместо с

Надіслати
Поділитися на інших сайтах

<modification>
	<code>Add Header Cache-Control</code>
	<name>Add Header Cache-Control</name>
	<version>1.0</version>
	<author>Slasoft</author>

	<file path="catalog/controller/startup/session.php">
        <operation>
            <search><![CDATA[setcookie($this->config->get('session_name')]]></search>
            <add position="before"><![CDATA[
$this->response->addHeader('Expires: Thu, 19 Nov 1981 08:52:00 GMT');
$this->response->addHeader('Cache-Control: no-store, no-cache, must-revalidate, post-check=0, pre-check=0');
$this->response->addHeader('Pragma: no-cache');
            ]]></add>
        </operation>
	</file>
	<file path="admin/controller/startup/startup.php">
        <operation>
            <search><![CDATA[index(]]></search>
            <add position="after"><![CDATA[
$this->response->addHeader('Expires: Thu, 19 Nov 1981 08:52:00 GMT');
$this->response->addHeader('Cache-Control: no-store, no-cache, must-revalidate, post-check=0, pre-check=0');
$this->response->addHeader('Pragma: no-cache');
            ]]></add>
        </operation>
	</file>

</modification>

Вот код модификатора

Использовать на свой страх и риск

  • +1 3
Надіслати
Поділитися на інших сайтах

  В 13.06.2020 в 10:40, vilija сказав:

Спасибо. По крайней мере в хеадере работает.

Грамматическая ошибка $this->response

s должна быть вместо с

Expand  

Я ж писал
 

 

  В 04.06.2020 в 15:36, boltov сказав:

Как-то так

Expand  

писал с лисат не проверяя, а эти букофки я всегда (часто) путаю

Кстати

Показанный модификатор более полезен для Админки

Надіслати
Поділитися на інших сайтах

  В 13.06.2020 в 11:16, chukcha сказав:

Я ж писал
 

 

писал с лисат не проверяя, а эти букофки я всегда (часто) путаю

Кстати

Показанный модификатор более полезен для Админки

Expand  

Это я не в укор ) . Другим просто чтоб меньше времени терять .

Вам однозначно респект!

Надіслати
Поділитися на інших сайтах

  • 5 months later...
  В 13.06.2020 в 11:13, chukcha сказав:
<modification>
	<code>Add Header Cache-Control</code>
	<name>Add Header Cache-Control</name>
	<version>1.0</version>
	<author>Slasoft</author>

	<file path="catalog/controller/startup/session.php">
        <operation>
            <search><![CDATA[setcookie($this->config->get('session_name')]]></search>
            <add position="before"><![CDATA[
$this->response->addHeader('Expires: Thu, 19 Nov 1981 08:52:00 GMT');
$this->response->addHeader('Cache-Control: no-store, no-cache, must-revalidate, post-check=0, pre-check=0');
$this->response->addHeader('Pragma: no-cache');
            ]]></add>
        </operation>
	</file>
	<file path="admin/controller/startup/startup.php">
        <operation>
            <search><![CDATA[index(]]></search>
            <add position="after"><![CDATA[
$this->response->addHeader('Expires: Thu, 19 Nov 1981 08:52:00 GMT');
$this->response->addHeader('Cache-Control: no-store, no-cache, must-revalidate, post-check=0, pre-check=0');
$this->response->addHeader('Pragma: no-cache');
            ]]></add>
        </operation>
	</file>

</modification>

Вот код модификатора

Использовать на свой страх и риск

Expand  

А как его на сайт установить?

Надіслати
Поділитися на інших сайтах


  • 1 month later...

Створіть аккаунт або увійдіть для коментування

Ви повинні бути користувачем, щоб залишити коментар

Створити обліковий запис

Зареєструйтеся для отримання облікового запису. Це просто!

Зареєструвати аккаунт

Вхід

Уже зареєстровані? Увійдіть тут.

Вхід зараз
  • Зараз на сторінці   0 користувачів

    • Ні користувачів, які переглядиють цю сторінку
×
×
  • Створити...

Important Information

На нашому сайті використовуються файли cookie і відбувається обробка деяких персональних даних користувачів, щоб поліпшити користувальницький інтерфейс. Щоб дізнатися для чого і які персональні дані ми обробляємо перейдіть за посиланням . Якщо Ви натиснете «Я даю згоду», це означає, що Ви розумієте і приймаєте всі умови, зазначені в цьому Повідомленні про конфіденційність.