Jump to content
Search In
  • More options...
Find results that contain...
Find results in...
  • Sign Up

Русская сборка ocStore 3.0.3.7


Recommended Posts

5 часов назад, 100napb сказал:

И это тоже.


вот действительно годное решение (рабочий механизм gc в конструкторе с учетом настроек окружения/php, ответственных за частоту срабатывания)

https://github.com/opencart/opencart/blob/3.0.x.x_Maintenance/upload/system/library/session/db.php

И чем оно отличается от текущего?

https://github.com/ocStore/ocStore/blob/v3.0.3.7/upload/system/library/session/db.php

 

Всё тоже самое, долбёжка БД через раз на удаление сессий.

Link to post
Share on other sites

 

11 минут назад, LEOnidUKG сказал:

Я профессионально занимаюсь оптимизацией сайтов

 

Там и дайте уже четкий совет. вас не смущает отсутствие индекса?

Link to post
Share on other sites
3 минуты назад, nikifalex сказал:

 

 

Там и дайте уже четкий совет. вас не смущает отсутствие индекса?

Из коробки? Так там вообще практически нет индексов. Никто не заморачивается по этому поводу из разработчиков. Если делать Pull это надо разбирать полностью чистый магазин, у меня увы его нет. У меня скрипт расставляет индексы автоматически везде, где можно если их нет.

Edited by LEOnidUKG
Link to post
Share on other sites

2 hours ago, LEOnidUKG said:

Всё тоже самое, долбёжка БД через раз на удаление сессий.

там опечатка\ошибка была. в репозитории OCStore она осталась. Из-за этого gc срабатывает при каждом запросе страницы. После исправления работает аналогично коробочному механизму php по очистке протухших сессий и гибко настраивается. На мой взгляд, это лучшее решение детской болячки с сессиями в базе для ОС 3.* на текущий день.


 

Spoiler

 

if (mt_rand() / mt_getrandmax() > $gc_probability / $gc_divisor) {

vs

if (mt_rand() / mt_getrandmax() < $gc_probability / $gc_divisor) {

 

 

Link to post
Share on other sites
17 минут назад, 100napb сказал:

там опечатка\ошибка была. в репозитории OCStore она осталась. Из-за этого gc срабатывает при каждом запросе страницы. После исправления работает аналогично коробочному механизму php по очистке протухших сессий и гибко настраивается. На мой взгляд, это лучшее решение детской болячки с сессиями в базе для ОС 3.* на текущий день.


 

  Скрыть контент

 

if (mt_rand() / mt_getrandmax() > $gc_probability / $gc_divisor) {

vs

if (mt_rand() / mt_getrandmax() < $gc_probability / $gc_divisor) {

 

 

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

 

Но опять же, в 3.0.3.8 версии:

https://github.com/opencart/opencart/blob/master/upload/system/library/session/db.php

Убрали очистку автоматическую и код самой очистки поменяли. Опять что-то пошло у них не так.

Edited by LEOnidUKG
Link to post
Share on other sites

А куда пропал колокол с уведомлениями?

В демке тоже нету

 

242357423_.png.1cf7d5269255d31d5b00b5c004d052f4.png

Edited by mseo
Link to post
Share on other sites

9 часов назад, mseo сказал:

А куда пропал колокол с уведомлениями?

В демке тоже нету

остался в движках 2х, в "тройке" его и не было

если нужен - ищите дополнения, добавляющие его в 3х

типа такого

https://www.opencart.com/index.php?route=marketplace/extension/info&extension_id=36359

Link to post
Share on other sites

Как правильно вернуть только раздел extension\advertise?
В версии ocStore 3.0.2.0 его вырезали, а в ocStore 3.0.3.0 вернули. Вроде все по отдельности закинул, модуль появился (Реклама), в правах доступы выставлены - но все равно доступ запрещен. Как и где можно прописать еще права доступа к этому разделу?

Link to post
Share on other sites

В 10.08.2021 в 21:41, mpn2005 сказал:

Вот таким вот кодом можно избавиться от записи ненужных сессиий.

 

В файле system/library/session/db.php

После строки:


$this->db = $registry->get('db');

Добавить:


$this->config = $registry->get('config');

 

И в функции write после строки:


if ($session_id) {

Добавить вот это:


$session_empty = true;

foreach ($data as $key => $value) {
    if ($key == 'language' && $value == $this->config->get('config_language')) {
        continue;
    }
    if ($key == 'currency' && $value == $this->config->get('config_currency')) {
        continue;
    }
    $session_empty = false;
    break;
}

if ($session_empty) {
    return true;
}

 

Таким образом, если в сессии будут данные, отличные от данных по умолчанию, то она будет записана в БД. Иначе запись не производится.

Непонятно, почему вообще этому моменту не уделили изначально должного внимания. Тем более, что либа сессий OC3 изначально из коробки кривая.

 

Заметил ошибку в Журнале ошибок oCstore:

PHP Warning:  Invalid argument supplied for foreach() in /domain.ru/storage/modification/system/library/session/db.php on line 35

Можете подсказать что ему не нравится?

image.thumb.png.84a905c4b511956bffb64e05080e1654.png

Link to post
Share on other sites

49 минут назад, AlektroNik сказал:

 

Заметил ошибку в Журнале ошибок oCstore:

PHP Warning:  Invalid argument supplied for foreach() in /domain.ru/storage/modification/system/library/session/db.php on line 35

Можете подсказать что ему не нравится?

image.thumb.png.84a905c4b511956bffb64e05080e1654.png

Перед строкой 
 

foreach ($data as $key => $value) {

Добавить:
 

if (empty($data)) {
	return true;
}

 

  • +1 1
Link to post
Share on other sites

Столкнулся с ошибкой SEO PRO в OCstore 3.0.3.7:

После изменения или удаления SEO URL в любом товаре и переходе на него через админку (нажав глазик), либо по ID ссылке (типа site.ru/index.php?route=product/product&product_id=42),  ссылка ведёт на старый SEO URL который был при создании товара и получаем Запрашиваемая страница не найдена!

Проверил на рабочем сайте + перепроверил на локалке на чистом OCstore  без модулей.

Edited by EagleBLR
Link to post
Share on other sites

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

Столкнулся с ошибкой SEO PRO в OCstore 3.0.3.7:

После изменения или удаления SEO URL в любом товаре и переходе на него через админку (нажав глазик), либо по ID ссылке (типа site.ru/index.php?route=product/product&product_id=42),  ссылка ведёт на старый SEO URL который был при создании товара и получаем Запрашиваемая страница не найдена!

Проверил на рабочем сайте + перепроверил на локалке на чистом OCstore  без модулей.

После изменений чистите системный кэш, если включено кэширование в настройках SeoPro.

А так вообще и браузеры умеют редиректы кэшировать. Просто не нужно дёргать то, что дёргать не стоит.

 

Link to post
Share on other sites
В 25.08.2021 в 08:12, AlektroNik сказал:

Нет и делать это не рекомендуется. Уже неоднократно обсуждалось в этой теме.

а как подлотать сеопро на ocStore 3.0.2.0

Link to post
Share on other sites

20 минут назад, alex1989 сказал:

а как подлотать сеопро на ocStore 3.0.2.0

Что у вас не работает? Что собираетесь "лотать"?

Link to post
Share on other sites

если ставит без / в конце 

то будет вот так: сайт/категория

а должно так: сайт/категория/

а если ставите с /

то получаеться ; сайт/категория/товар/

а должно; сайт/категория/товар

Link to post
Share on other sites

включить со /

а на конец ставить якорь .html 

Link to post
Share on other sites

58 минут назад, alex1989 сказал:

а должно так: сайт/категория/

 

58 минут назад, alex1989 сказал:

а должно; сайт/категория/товар

Для начала определитесь,  все-таки со слешем на конце у вас должно быть или без слэша. А потом сделайте, как вам надо, в htaccess, seo pro для данной функциональности не нужен (хотя и может делать)
И, насколько я понял, делает. Делает не так, как вам кажется правильным, а так, как на самом деле правильно

 

56 минут назад, alex1989 сказал:

а на конец ставить якорь .html 

Это не "якорь", ладно, не важно.
Насколько мне известно, во всех версиях и так работает. НО если у вас уже есть в настоящий момент рабочий и индексированный без .html магазин, то будет вредным и неправильным вдруг эти окончания приделать. Их вообще имеет смысл делать только для точного воспроизведения каких-то уже имеющихся, приносящих трафик ссылок. Например, при переезде с другой CMS. 
 "Для красоты" ставить не надо.

Edited by Shureg
Link to post
Share on other sites

13 часов назад, Shureg сказал:

 

Для начала определитесь,  все-таки со слешем на конце у вас должно быть или без слэша. А потом сделайте, как вам надо, в htaccess, seo pro для данной функциональности не нужен (хотя и может делать)
И, насколько я понял, делает. Делает не так, как вам кажется правильным, а так, как на самом деле правильно

 

Это не "якорь", ладно, не важно.
Насколько мне известно, во всех версиях и так работает. НО если у вас уже есть в настоящий момент рабочий и индексированный без .html магазин, то будет вредным и неправильным вдруг эти окончания приделать. Их вообще имеет смысл делать только для точного воспроизведения каких-то уже имеющихся, приносящих трафик ссылок. Например, при переезде с другой CMS. 
 "Для красоты" ставить не надо.

речь идет о новом сайте

Link to post
Share on other sites

Только что, alex1989 сказал:

речь идет о новом сайте

а как должно быть

Link to post
Share on other sites

1 час назад, alex1989 сказал:

а как должно быть

Добавлять .html не надо.
Добавлять или нет слэш - эпический холивар.  Делайте так, как вам больше нравится. Главное, по всему сайту одинаково.
Для htaccess
 

Убрать слэш:

RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)/$ /$1 [L,R=301]
 

Добавить слэш:

RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*[^/])$ /$1/ [L,R=301]

Link to post
Share on other sites

Скажите пожалуйста модули с версии 3.0.2.0 на версию 3.0.3.7 встанут?

Так как многие популярные модули, не выпустили еще поддержки на 3.0.3.7

Link to post
Share on other sites

14 часов назад, Abaddon сказал:

Скажите пожалуйста модули с версии 3.0.2.0 на версию 3.0.3.7 встанут?

По-идее должны - что мешает попробовать? *******

Link to post
Share on other sites
В 11.09.2021 в 15:14, Shureg сказал:

Добавлять .html не надо.
Добавлять или нет слэш - эпический холивар.  Делайте так, как вам больше нравится. Главное, по всему сайту одинаково.
Для htaccess
 

Убрать слэш:

RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)/$ /$1 [L,R=301]
 

Добавить слэш:

RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*[^/])$ /$1/ [L,R=301]

 может все таки .html ? мне кажется в htaccess достаточно двух простых правел а то что выше лишнее ))

 

Link to post
Share on other sites

Доброго всем дня!

 

OcStore 3.0.3.7. Столкнулся со следующей проблемой: SeoPro нещадно поедает оперативную память, хоть до предела (6Гб) увеличивай.

Fatal error: Allowed memory size of 2147483648 bytes exhausted (tried to allocate 528384 bytes) in /var/www/www-root/data/www/storage/modification/system/library/seopro.php on line 349

 

Посмотрел файл seopro.php, ошибку вызывает рекурсивная процедура getPath.

Строка  $new_path =  array_merge ([$parent_id] , $current_path);

 

Может кто-то сталкивался с такой проблемой?

Буду очень благодарен хотя бы за намек на решение проблемы.

 

Link to post
Share on other sites

Зайти в админка -> категории
Нажать на кнопку  - починить.

  • +1 2
Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
  • Recently Browsing   1 member

×
×
  • Create New...

Important Information

On our site, cookies are used and personal data is processed to improve the user interface. To find out what and what personal data we are processing, please go to the link. If you click "I agree," it means that you understand and accept all the conditions specified in this Privacy Notice.