ocStore нұсқасын 3.0.3.9-ға дейін жаңарту жүйедегі қателерді түзетулер мен жақсартуларды ғана емес, сонымен қатар интернет-дүкен жұмысының тұрақтылығын арттыруға мүмкіндік береді. Осы нұсқаулықта 3.0.3.7 нұсқасынан көшу процесі кезең-кезеңімен қарастырылған, сондықтан сіз оны қауіпсіз және артық қиындықсыз орындай аласыз.
→OpenCart интернет-дүкендерінде HTML кэштеу – бұл әбден типтік міндет, себебі бұл әрекет сайттың іздеу жүйелеріндегі позициясын жақсартады (PageSpeed метрикалары жақсарады және жалпы пайдаланушыларға жылдамдықтың жоғары болғаны ыңғайлы).
HTML кэштеуде шешілуі тиіс негізгі мәселелер қандай?
OpenCart-тың стандартты беттерін кэштеу (тауарлар, санаттар, өндірушілер, іздеу, басты бет)
Тауар өзгерген кезде кэштi қолмен тазаламау және оның автоматты түрде қайта құрылуын қамтамасыз ету. Мысалы, тауарлар жүктелді де бағасы өзгерді – кэш мұны қадағалап, бағалар өзекті болып тұруы тиіс. Тағы бір мысал – тауар таусылған жағдайда кэш автоматты түрде қайта құрылуы керек
Дәл осы екі міндетті IMCache модулі шешеді
Біріншіден, модуль OpenCart-тың негізгі беттерін кэштей алады.
Екіншіден, модуль тауар бағасының өзгерісін, акция бағасының өзгерісін, редакциялау күнін, сондай-ақ қалдықтың өзгерісін (плюстан 0 немесе минусқа және керісінше) қадағалайды.
Бұл өте оңай жасалады. IMCache модулін орнатқаннан кейін – оны жай ғана қосу жеткілікті, төмендегі суретте көрсетілгендей
Қосымша пайдалысы – әртүрлі беттердің кэштеу уақытын баптай аласыз. Мысалы, тауарларға бір ай қою. Модульде тез баптау үшін ыңғайлы арнайы батырмалар бар. Баптауларды өзгерткеннен кейін оларды міндетті түрде сақтау керек екенін ұмытпаңыз.
Соңында айтарым – кэштеу жақсы, бірақ сайтты оңтайландыруды да әрқашан есте ұстау керек. Осы тақырып бойынша IMDBOptimizer модуліне де назар аударуды және шолуды оқуды ұсынамын: https://liveopencart.ru/tips/sovety-po-optimizatsii-opencart-o-kotoryh-stoit-znat-kazhdomu/
→OpenCart-та әдепкі /admin/ мекенжайын алып тастағыңыз және қажетсіз кіру әрекеттерін азайтқыңыз келе ме? Біз админ панель мекенжайын өзгертуге арналған екі тәсілді қарапайым тілмен түсіндіреміз – буманы қайта атау немесе Apache және Nginx үшін дайын ережелері бар rewrite арқылы «виртуалды» URL пайдалану.
→Шілде 2025 жылғы ең көп сатылған шаблондар мен кеңейтулер: Микробелгілеу, ChatGPT, Сервердегі видео, Mango шаблоны
→2025 жылғы шілде жаңалықтары: Мені есте сақтау, Әлеуметтік желілер арқылы жылдам кіру, Ақылды ұсыныстар
→У вас проблемы? Я знаю, что сделать – почистите кэш!
Если просто, то "кэшем" называется набор самых используемых данных. Они хранятся особым образом, в результате из кэша сайта на OpenCart извлечение информации происходит быстрее, чем ее запрос из прямого хранилища.
Так, пока информация закэширована, скорость ее извлечения и работа ресурса будет шустрой, а страница будет открываться быстрее. Если кэш пуст, движку нужно выполнять двойственную работу для извлечения данных по их кэшированному и по прямому пути, что занимает намного больше времени. Потому так важно чистить кэш на OpenCart.
Для начала разберем, на каких уровнях в OpenCart осуществляется кэширование. Кэширование информации осуществляется на клиентском и серверном уровнях.
Что касается клиентской части, то она одинаковая для всех ресурсов. Все данные кэшируются при помощи веб-клиентов на ПК пользователей магазина. Очищать такой тип кэша можно в браузере, удаляя определенные файлы. Пример как можно очистить кэш в браузере FireFox на следующем скриншоте:
Чтоб включить OpenCart кэш браузера достаточно добавить в .htaccess в конце следующие директивы:
<IfModule mod_deflate.c> AddOutputFilterByType DEFLATE text/text text/html text/plain text/xml text/css application/x-javascript application/javascript </IfModule> <IfModule mod_headers.c> Header unset Last-Modified # 120 days <FilesMatch "\.(ico|pdf|flv|jpg|jpeg|png|gif|swf)$"> Header set Cache-Control "max-age=7776000, public" </FilesMatch> # 120 days + Append Accept Encoding <FilesMatch "\.(css|js|cssgz|jsgz)$"> Header set Cache-Control "max-age=7776000, public" Header append Vary: Accept-Encoding </FilesMatch> # 120 days <FilesMatch "\.(xml|txt)$"> Header set Cache-Control "max-age=7776000, public, must-revalidate" </FilesMatch> # 120 days <FilesMatch "\.(html|htm|php)$"> Header set Cache-Control "max-age=7776000, private, must-revalidate" </FilesMatch> # Compatible with old browsers <FilesMatch "\.(js|css|gif|png|jpe?g|pdf|xml|oga|ogg|m4a|ogv|mp4|m4v|webm|svg|svgz|eot|ttf|otf|woff|ico|webp|appcache|manifest|htc|crx|oex|xpi|safariextz|vcf)$" > Header unset X-UA-Compatible </FilesMatch> </IfModule> |
Что касается серверной части, то тут все сложнее. Для каждой CMS и движка информация кэшируются особым образом. Поэтому каждую ситуацию придется разбирать отдельно. Серверный OpenCart кэш разделяется на типы. Рассмотрим каждый из них:
Это система, позволяющая изменять в виртуальном режиме сайт, не трогая его код.
В OpenCart 1.5 и 2 очистить кэш VQMod понадобится в случае, если установленный модуль или шаблон, не выполняет в полной мере свои функции. Столкнулись с подобной проблемой, становится понятно, что файл VQMod кэша не обновился и внесенные поправки не были применены.
Решается этот вопрос сбросом кэша, чтоб VQMod при образовании новой копии смог создать файл, заново учитывая все необходимые правки.
Для этого открываем папку /vqmod и удаляем файлы:
mods.cache
checked.cache
Потом открываем каталог /vqmod/cache и удаляем содержимое этой папки. Все эти файлы создадутся уже с новыми данными.
OCMod можно назвать продолжение VQMod. Его устанавливать не нужно, это встроенное решение в OpenCart, начиная с версии 2.0. Основное отличие этих двух инструментов в том, что данные о модификациях, производящихся в OCMod файлах, хранятся в базе данных сайта. Но кэш модификаций, как и в VQMod, находится в файлах. Причины и способы очистки OCMod кэша будут сходны VQMod.
В последних версиях OpenCart можно очистить кэш из админки. Для этого заходим в административную панель магазина и переходим в раздел Дополнения (кнопка в виде кусочка пазла) — Модификации. Тут ищем оранжевую кнопку в виде ластика. Нажимаем на нее, и кэш OCMod очистится автоматически. Не забываем в конце нажимать "Обновить", чтоб обновить OpenCart кэш модификаторов.
Также можно очистить OCMod кэш вручную, удаляем все файлы и каталоги в /system/modification/
Opencart 3: кэш шаблона
В Opencart 3 есть отдельный кэш шаблона, найти его можно на первой странице админки, синяя кнопка с шестеренкой в правом верхнем углу. Очистка кэша осуществляется нажатием двух оранжевых кнопок.
В OcStore 3 это меню выглядит немного иначе, однако, принцип работы с ним одинаковый.
Этот тип OpenCart кэша содержит в себе результаты по запросам в БД и обработке данных. Все зависит от пожеланий разработчика, которым в коде указана настройка, какие сведения вносить в кэш.
Например, это могут быть данные про:
Кэшированная информация хранится в виде файлов с именами типа: cache.object(.id).time() + 3600.
Для очистки системного кэша OpenCart удаляем из каталога system/cache все содержимое.
В Opencart 3 в разделе Меню - Дизайн – Редактор шаблона есть редактор шаблона, который позволяет изменять файлы шаблона в админке. Работа с ним связана со многими проблемами и мы не рекомендуем его использовать.
При большом количестве товара и дополнений, имеющих графическую часть (шаблоны, модули), кэш изображений OpenCart может быть внушительных размеров. Чтоб очистить этот кэш необходимо удалить все файлы и каталоги из /image/cache/ либо воспользоваться модулями или (если вы пользуетесь OcStore 3) кнопкой "Кэш изображений" на первой странице админки, синяя кнопка с шестеренкой в правом верхнем углу.
Все вышеуказанные кэши чистятся вручную, но есть и такие, которые можно настроить на автоматизированную работу.
Понятно, что для выполнения такого рода функций понадобится модуль очистки кэша OpenCart 2. На самом деле их много, но вот толковых, которые бы чистили кэши на всех уровнях, почему-то наблюдается очень мало. Большинство их них отвечают за какие-то определенные кэши, но не все.
У нас есть модуль AutoCacheCleaner. Установка у него стандартная. С его помощью можно полностью автоматизировать процесс очистки кэша OpenCart на всех уровнях (системный, VQMod, кэш изображений) используя админку.
Рассмотрев как включить кэш, как очистить и как обновить кэш модификаций OpenCart понятно, что все эти операции необходимо систематически выполнять. Как это делать, вручную или автоматически, каждый вправе выбрать сам. Главное, что дополнительные настройки и модули позволяют это сделать простым и понятным даже для начинающего пользователя языком.
Чтоб интернет-магазин четко функционировал, регулярно чистите все кэш уровни сайта.