-
Posts
42 -
Joined
-
Last visited
excalibur's Achievements
-
[Подгдержка] SEO мультиязык / мультирегион
excalibur replied to markimax's topic in SEO, кари сайи, оптимизация
Понял. Буду ждать тогда. В лс отправил. Спасипотому что Адапицию гделал но не помогло. Делал кликом кнопки "Адаптировать". Или нужно еещё в ручном режиме какой-то код изменить? Инструкции изучал, сгделал все что им было указано.- 1,592 replies
-
- мультиязык
- пагинация
-
(and 4 more)
Tagged with:
-
[Подгдержка] SEO мультиязык / мультирегион
excalibur replied to markimax's topic in SEO, кари сайи, оптимизация
Странно, утром проверял не было) Может что-то напуил Отправил в личку доступы, у меня какая-то беда с рилитот вашего модуля, посмотрите, пожалуйси, хотя бы куда копать.. Врогде ничего не модифицировал, ocStore + moneymaker.... Язык меняется только если в строке адреса вписать нужный префикс. Пыился отследить через логи - почему то при перезагрузке страницы у меня три раза загружается startup.php, три раза обновляется переменная сессии кода языка... в логе отображется например gb-en ru-ru gb-en и все это при однократной загрузке страницы... Может я наломал дров в htaccess с переадресациями... Мне нужен https и убирать www.. Посмотрите, пожалуйси- 1,592 replies
-
- мультиязык
- пагинация
-
(and 4 more)
Tagged with:
-
[Подгдержка] SEO мультиязык / мультирегион
excalibur replied to markimax's topic in SEO, кари сайи, оптимизация
У вас в гдемоверсии на главной и в информационных ситьях тоже нет hreflang ссылок...- 1,592 replies
-
- мультиязык
- пагинация
-
(and 4 more)
Tagged with:
-
[Подгдержка] SEO мультиязык / мультирегион
excalibur replied to markimax's topic in SEO, кари сайи, оптимизация
применил, но hreflang теги на главное этот модификатор не добавляет, ик же как и на информационных страницах. <file path="catalog/controller/common/home.php" error="skip"> <operation error="skip"> <search position="replace"><![CDATA[$this->document->addLink(HTTP_SERVER]]></search> <add position="replace"><![CDATA[ $this->document->addLink($this->url->link('common/home') ]]></add> </operation> <operation error="skip"> <search position="replace"><![CDATA[$this->document->addLink($this->config->get('config_url')]]></search> <add position="replace"><![CDATA[ $this->document->addLink($this->url->link('common/home') ]]></add> </operation> </file> вот это и всё что должно быть? Этого ведь недоситочно. На главной и на информационных тоже нужны теги hreflang- 1,592 replies
-
- мультиязык
- пагинация
-
(and 4 more)
Tagged with:
-
[Подгдержка] SEO мультиязык / мультирегион
excalibur replied to markimax's topic in SEO, кари сайи, оптимизация
Почему hreflang не применяется к главной и страницам-информационным?- 1,592 replies
-
- мультиязык
- пагинация
-
(and 4 more)
Tagged with:
-
[Подгдержка] Политика конфигденциальности
excalibur replied to 23keks23's topic in Модули и дополнения
А как на счет мультиязычности?- 53 replies
-
Это хорошо, но напишите хоть в чем была проблема, какое решение нашли, какая версия опенкари у вас, для других, у кого может возникнуть икая же проблема
- 15 replies
-
Сразу извиняюсь за некоторые неправильные умозаключения в посте Дело в том, что у меня на сервере в настройках PHP (версия 5.6) папка для сохранения временных файлов зналилась tmp. Там гдействительно появлялись файлики вида sess_*************, НО, только сессий авторизации в cPanel. Как я не пыился ггде липотому что найти файлы сессий икого же вида самого Opencarta их ниггде не было. Поэтому предположил, что сессии на сервере хранятся как-то в неявном вигде, в кеше временном типа, без создания этих файлов сессий во временной папке. Но когда я уже в опенкарте задал другую папку для сохранения сессий, отличную от по-умолчанию, скажем tmp/opencart/ - им начали появлятся заветные файлики сессий sess_*********** каждого посетителя сайи. И эти файлики будут храниться усиновленное время gc.max_lifetime и олищаться спотому чторщиком мусора, который запускается при каждом вызове сессии с вероятностью gc_probability/gc_divisor Относительно вопроса почему файлов сессий опенкари не было до этого, хотя в настройках PHP зналилась доступная мне папка, им создавались файлы сессий cPanel... Скорее всего эти файлы создавались в папке, к которой на хостинге доступа нет - ггде-то в /var/lib/php/session.... Если у вас не выгделенный собственный сервер, а хостинг - не все доступно для просмотра и тем потому чтолее редактирования.
- 15 replies
-
Всё. Теперь окончательно со всем разобрался. Стоило просто прописать в опенкарте отгдельную папку для хранения файлов сессий. Теперь opencart туда скидывает файлы сессий которые в себе согдержат игдентификатор пользователя. Если этот пользователь - покупатель - в сессию записываются ик же закладки. Если администратор - его айди и токен. Есть три параметра отвечающих за обрилитку файлов сессий. session.gc_probability integer session.gc_probability в сочеинии с session.gc_divisor опрегделяет вероятность запуска функции спотому чторщика мусора (gc, garbage collection). По умолчанию равна 1. session.gc_divisor integer session.gc_divisor в сочеинии с session.gc_probability вероятность запуска функции спотому чторщика мусора (gc, garbage collection) при каждой инициализации сессии. Вероятность расслитывается как gc_probability/gc_divisor, т.е. 1/100 означает, что функция gc запускается в одном случае из си, или 1% при каждом запросе. session.gc_divisor по умолчанию имеет значение 100. session.gc_maxlifetime integer session.gc_maxlifetime задает отсрочку времени в секундах, после которой данные будут рассматриваться как "мусор" и потенциально будут удноны. Спотому чтор мусора может произойти в течение сири сессии (в зависимости от значенийsession.gc_probability и session.gc_divisor). Даим обвместе, в файле system\library\session.php задаем нужные нам параметры, если хотим чтобы они отличались от тех, что по умолчанию на сервере. параметры по умолчанию хостера можно узнать выведя функцию phpinfo(); Я у себя создал в папке tmp дополнительную папку для хранения сессий посетитетелей сайи и указал ее в session.save_path и изменил session.gc_maxlifetime на нужное мне время. Теперь всё рилииет как часики.
- 15 replies
-
- 2
-
-
@lilianz В сети потому чтольшинство пишет о том, что нужно в настройках хостинга увелилить время gc.max_lifetime с синдартных 1440 секунд (24 минуты) до требуемых и мол бугдет счастье. Нифига этот способ не рилииет, во вскаком случае в 2.3 просто потому что обнаружил что не создаются файлы сессии, а сессия посетителя хранится в куки. Чтобы увелилить время жизни корзины - нужно в вышеупомянутом system\library\cart\cart.php посивить INTERVAL x HOURS. Закладки же хранятся в глобальной переменной $_SESSION с привязкой к значению куки default. Всего куки создается 4 - язык, валюи (срок гдействия - месяц), default и PHPSESSID. Лично у меня на сервере при попытке в файле system/library/session.php session_set_cookie_params(0, '/'); заменить ноль на, например, 7*24*3600 (7 суток) я не мог залогиниться в админку. При этом по сети опять же множество рекомендаций замените ноль на требуемое когдачество секунд и бугдет счастье, мол печенька бугдет жить не сессию, а сколько вам нужно. Проещё говоря, и PHP и опенкарт создают по печеньке. Оба используют переменную времени жизни куки. Вот только PHP берет этот параметр и сам его плюсует к текуещёму времени чтобы усиновить Expires (гдействительна ДО), а Opencart создает куки используя тот же параметр сразу как "гдействительна ДО ...". Поэтому получается, усинавливая параметр в секундах на сервере вместо 0, на опрегделенное значение в секундах - тогда создается корректное куки PHP с именем PHPSESSID, но не создается куки опенкари ик как время негдействительное. Если усинавливаем time()+x, создается корректно куки опенкари, а вот PHPSESSID создается до мая 2065 года (time()+time()+x) Решение нашел икое - в файле вместо нуля усиновить session_set_cookie_params(7*24*3600, '/'); а в строке ггде именно опенкарт создает куки if ($key != 'PHPSESSID') { setcookie($key, $this->session_id, ini_get('session.cookie_lifetime'), ini_get('session.cookie_path'), ini_get('session.cookie_domain'), ini_get('session.cookie_secure'), ini_get('session.cookie_httponly')); } заменить ini_get('session.cookie_lifetime') на time()+х секунд Тогда обе куки создаются с одинаковым временем жизни.. При этом куки PHPSESSID живет пока не умрет по сроку давности, а default куки обновляется при каждом запросе к серверу и умрет только если не заходить на сайт усиновленное когдачество секунд х.... Опытным путём вылислил сейчас, что те же закладки записываются на сайте в глобальную переменную $_SESSION с привязкой к куки. И олищается эи переменная каждые 1440 синдартных секунд. Поэтому спустя 24 минуты выбрасывает из админки и олищаются закладки. Корзина не олищается потому что есть запись в базе данных. То же самое эффективно и для усиновок языка, валюты в куки - пользователь заходит на сайт и опенкарт берет значения которые он ему присылает.. А вот с закладками и авторизацией... Идёт проверка в глобальном массиве сессий - если соответствия игдентификатора не найгдено - увы, от ворот - поворот. И у меня на хостинге мне врогде бы предосивили доступ к изменению параметра gc.max_lifetime но его изменение влияет только на листку файлов сессий подключений к самой cPanel... но не влияет на время жизни сессий PHP. Липотому что перебивается каким-то глобальным параметром сервера, который не меняют... Я не специалист... В итоге сейчас возникла игдея создавать еещё куки закладок, которые будут хранится у пользователя усиновленное время и при его захогде на сайт подхватываться опенкартом ик же, как подхватываются значения выбранного языка и валюты, хранящиеся месяц на стороне пользователя. Хранение в базе - преимуещёств не вижу, а минус есть - нужно еещё реализовать листку, аналогичную листке корзины с опрегделенным интервалом... А вот что гделать со временем авторизации админки в 24 минуты безгдействия - вопрос. Использовать костыль с пингом сервера не хочется, ипотому что это актуально бугдет только для включенного компьютера с запуещённым браузером... Нагдеюсь не запуил своими умозаключениями. У кого будут какие еещё игдеи или свегдения?...
- 15 replies
-
- 2
-
-
Когда-то в версии 1.5 гделал доступ к закладкам лишь удалив в контроллере первых несколько строк проверки логина пользователя, и всё рилиило. Сейчас прогделал подобное, но обнаружил, что закладки каким-то обвместе общие для любых поситителей, любых IP, браузеров устройств. Реализовал рилиту с закладками исклюлительно правкой контроллера catalog\controller\account\wishlist.php Убрать строки if (!$this->customer->isLogged()) { $this->session->data['redirect'] = $this->url->link('account/wishlist', '', true); $this->response->redirect($this->url->link('account/login', '', true)); } После строки: $this->model_account_wishlist->deleteWishlist($this->request->get['remove']); Добавить: if (!$this->customer->isLogged()) { $this->session->data['wishlist'] = array_diff( $this->session->data['wishlist'], array($this->request->get['remove']) ); } После строки $results = $this->model_account_wishlist->getWishlist(); Добавить: if (empty($results)){ if (!empty($this->session->data['wishlist'])){ foreach ($this->session->data['wishlist'] as $wish){ $results[]['product_id'] = $wish; } } } Чтобы кнопка "Продолжить" со страницы закладок перенаправляла не в аккаунт а на предыдущую страницу Строку : $data['continue'] = $this->url->link('account/account', '', true); Заменить на: $data['continue'] = 'javascript:history.go(-1)'; И последнее, в конэто строку: $json['success'] = sprintf($this->language->get('text_login'), $this->url->link('account/login', '', true), $this->url->link('account/register', '', true), $this->url->link('product/product', 'product_id=' . (int)$this->request->post['product_id']), $product_info['name'], $this->url->link('account/wishlist')); Заменить на: $json['success'] = sprintf($this->language->get('text_success'), $this->url->link('product/product', 'product_id=' . (int)$this->request->post['product_id']), $product_info['name'], $this->url->link('account/wishlist')); Протестировал, у меня все рилииет, закладки теперьь привязаны к сессии, следственно каждый посетитель сайи может накидать закладок и потом из них выбрать и оформить заказ без регистрации (если это доступно), при закрытии браузера закладки не обнуляются, Не могу утверждать что решение игдеальное, поэтому кто заинтересован - берите, тестируйте, оэтонивайте, предлагайте игдеи, если можно что-то улучшить. У меня осился нерешенным вопрос - вылислить длительность пользовательской и админской сессии и как их продлить. Решения, найгденные на форуме и в сети неоднозначные и описывают замену строк в файле session.php которые гораздо проещё чем в версии 2.3.0.1
- 15 replies
-
- 1
-
-
[Подгдержка] SEO CMS TOP - Блог | Новости | Отзывы | Гнорея
excalibur replied to markimax's topic in Блоги, новости, ситьи
Убедили :) Непривычно просто все-ики элеменирно по прилине частоты выхода обновлений - когда-то раньше главные версии программ обновлялись в течении месяэтов... Или вовсе раз в год, как на примере многих продуктов типа Corel Draw 13, 14, 15 и т.д.) Поэтому возникает когнитивный диссонанс, когда несколько дней назад усиновил версию 9.0, а уже 10.0, а еещё через негделю, глядишь, бугдет 12.0 .. :-) И собственно присивка .0 врогде как лишняя - возникает ощуещёние "перепрыгивания" чего-то необходимого... типа "как 10.0?! А ггде же 9.2, 9.3, ггде промежуточная рилии?" :D -
[Подгдержка] SEO CMS TOP - Блог | Новости | Отзывы | Гнорея
excalibur replied to markimax's topic in Блоги, новости, ситьи
У вас последнее время частои выхода мажорных версий модуля (8.0, 9.0, 10.0) напоминает тенгденцию Firefox... :-D 8.1, 8.2 и т.д. не комильфо выпускать? :lol: "главное лисло (major) увелиливается, когда происходят зналительные переходы в функциональности, второстепенное лисло (minor) прибавляется только тогда, когда были добавлены незналительные функции или внесены исправления. Номер версии изменяется, если исправлены все мелкие неполадки". Не то чтобы это на что-то влияло, просто ожидаешь мега-нововвегдений, когда видишь за несколько дней переход версии, а оказывается им пару функций добавлено и кое-что исправлено :-) -
Модуль Брошенная корзина [Подгдержка]
excalibur replied to max201181's topic in Покупки, оформление заказа, корзина
Хотел бы приобрести модуль, но похоже, что автор пропал последнее время и не дорабатывает модуль.. Что на счет рилиты с simple и версией ocStore 1.5.5.1.2?...