-
Posts
6,116 -
Joined
Content Type
Profiles
Forums
Marketplace
Articles
FAQ
Our New
Store
Blogs
module__dplus_manager
Everything posted by sitecreator
-
Вот так не должно быть: Напоминаю, что когда рассматриваете попугаев в гугле, то не смотрите тупо на баллы. Не забудьте глянуть установлено ли у вас время жизни кеша для WEBP. Не кричите сразу, что гугл не накинул баллы за WEBP. Если у вас не включено кеширование для WEBP, то гугл может еще и снизить баллы в некоторых случаях. Будьте, пожалуйста, разумны! Я уже встроил в модуль автоматическую генерацию .htaccess для случая когда апачи будет отдавать webp в браузер. И это спасает ситуацию с кешированием WEBP в 80% случаев. Но если у вас все же настроен nginx на отдачу webp в браузер, то вам нужно вручную прописать правила кеширования WEBP в конфиг nginx. Прежде чем делать вывод, что "не оптимизирует", пожалуйста, сделайте оптимизацию WEBP полностью. Модуль Компрессор не имеет возможности сделать за вас ваш конфиг nginx для WEBP.
-
В версии модуля Компрессор 1.16+ введен полноценный режим создания WEBP по расписанию. особенно он интересен тем, что работает практически у любого хостера. Например, если у хостера в php (на котором работает магазин) заблокированы функции proc_open (exec) и нет одновременно imagick с поддержкой WEBP, то с помощью задания по расписанию все равно может быть создан WEBP . До этой версии воспользоваться форматом WEBP могли пользователи примерно 98% хост-площадок. Начиная с версии 1.16 можно сказать, что WEBP может быть доступен практически на любой хост-площадке. В версии 1.16.0 есть тест, который показывает правильно ли вы настроили CRON и софт для WEBP, и работает ли в принципе задача по созданию WEBP. Практически в 100% случаев этот метод должен работать на любой хост-площадке. Никакого дополнительного софта не нужно. Все необходимое есть в составе Компрессора.
-
Новая версия модуля Компрессор 1.15.2 Сделаны фиксы. Касается в основном файлов изображений, для которых не может быть получен корректно mime-тип. Так функция php mime_content_type прекращала работу скрипта в случае некорректного определения типа. Происходило это лишь на некоторых изображениях. Т.е. в единичных случаях, но могло вызвать ошибку 500. Причем, это не во всех версиях php, похоже, что это баг некоторых версий php, поскольку отловить ошибку невозможно даже при использовании try catch. Функция просто прерывала работу всего скрипта без возврата какой-либо ошибки php. Ни Fatal error, ни warning как должно быть согласно описанию. https://www.php.net/manual/ru/function.mime-content-type.php Функция же getimagesize, которая работает значительно дольше, делает определение mime-типа без проблем в случаях когда mime_content_type терпит крах. В общем, чудеса и "волшебство" php. Еще раз убеждаюсь, что проектировать программу из расчета, что будут у заказчика идеальные изображения в вакууме, не стоит. Чудеса бывают рядом. Это и JPEG внутри PNG или наоборот. Это GIF внутри PNG. Это картинка для типографии вместо WEB, например, запихнули вместо RGB картинку CMYK. GD с багами, неспособный для некоторых картинок создать корректный webp. Это imagick, старых версий, имеющий собственные баги, выражающиеся, например, в том, что не может корректно обработать CMYK изображение без искажения цветов (в актуальных версиях таких проблем нет). Это imagick, которому подсунули на вход битое изображение. Это GD, который вываливается с ошибкой если на входе файл, слишком большого размера по весу. Это ошибки если кто-то решил в папку кеша закачать обработанные файлы от пользователя root. На память перечислил лишь некоторые неожиданные проблемы, которые ломают вашу программу в том случае если вы думаете, что в мире должно быть все идеально. Но модуль Компрессор научился обходить практически все встреченные неожиданности.
-
В новой версии модуля Компрессор 1.15.1 добавлена автоматическая возможность контроля нужного для WEBP файла .htaccess для папки /image/cache/ При его отсутствии он автоматически создается. Не нужно отключать данную опцию. Отключайте только если вы вручную сделали нужные изменения в корневой (для сайта) .htaccess. Самым лучшим было бы настроить под отдачу webp веб-сервер nginx, но это далеко не всегда возможно на общем хостинге. Но хуже всего когда нет никакой настройки для webp, поэтому модуль автоматически решает эту проблему своими средствами. данный созданный файл .htaccess не мешает даже если вы сделаете верную настройку nginx для webp.
-
На общем хостинге (да и на VDS) нередко сервер не знает от таком типе файлов как WEBP. Поэтому в браузер может отдаваться неверный заголовок о типе файла и такие файлы не будет кешироваться в браузере. Если WEBP не кешируется, то гугл может снизить за это свою оценку в https://developers.google.com/speed/pagespeed/insights/ Т.е. может случиться парадоксальная ситуация. Вы, например, уменьшили вес файлов с 5М до 1М за счет WEBP, т.е. в 5 раз снизили вес. Казалось бы, гугл должен похвалить вас за это, это же логично? Но вместо того чтобы увидеть повышение оценки гуглом вы видите ее понижение, при том, что рекомендации гугла для вашего сайта, касающиеся изображений исчезли. Абсурд? Отчасти, да. Но вы можете увидеть другие новые рекомендации гугла, они будут касаться включения кеширования WEBP в браузере. Поэтому чтобы не случилась проблемная ситуация когда вместо повышения баллов вы не увидите изменения или, наоборот, баллы понизятся, то внесите этот код в корневой .htaccess. AddType image/webp .webp <ifModule mod_headers.c> #кэшировать изображения на месяц <FilesMatch "\.(webp|ico|gif|jpg|jpeg|png)$"> Header set Cache-Control "max-age=2592000" </FilesMatch> </IfModule> <ifModule mod_expires.c> ExpiresActive On #кэшировать флэш и изображения на месяц ExpiresByType image/webp "access plus 2592000 seconds" ExpiresByType image/x-icon "access plus 2592000 seconds" ExpiresByType image/jpeg "access plus 2592000 seconds" ExpiresByType image/png "access plus 2592000 seconds" ExpiresByType image/gif "access plus 2592000 seconds" </ifModule> Самым лучшим было бы настроить под отдачу webp веб-сервер nginx, но это далеко не всегда возможно на общем хостинге. Но хуже всего когда нет никакой настройки для webp, поэтому модуль автоматически решает эту проблему своими средствами.
-
При обновлении не забывайте после установки обновить кеш OCMOD и системный. Впрочем, это универсальное правило при любом обновлении. Не забывайте, пожалуйста!
-
Новая версия модуля Компрессор 1.15.0 watermark_by_sitecreator_for_PHP_5.6_7.3_ioncube10_ver_1.15.0.ocmod.zip Теперь только один файл дистрибутива для всех версий php (от 5.6 до 7.3). Это ocmod файл. Его не надо разархивировать, его нужно устанавливать через установщик ocmod. Вы теперь можете спокойно менять версии php на вашем сайте без необходимости загружать соответствующую версию модуля заново. Модуль работает на любой версии php от 5.6 до 7.3. Документацию вынес в отдельный архив.
-
ни один браузер не поддерживает атрибут loading. Возможно, что в перспективе когда-нибудь. Тут webp 20 лет пытались внедрить в браузеры, а Сафари до сих пор сопротивляется. Полгода лишь прошло как FireFox стал понимать webp. Эти странные для простого человека "битвы браузеров" и непонятные патентные и прочие войны лишь тормозят прогресс. Вот запрещает Apple Гуглу использовать на своих устройствах Хром с его оригинальным движком и поддержкой webp, но можно лишь Хром на движке от Сафари, т.е. по сути тот же ограниченный Сафари, но под брендом Хром. Тоже самое касается и FireFox для устройств на iOS. К тому же чтобы использовать атрибут loading все равно нужна массовая адаптация страницы, т.е. изменение кода HTML, да еще про кроссбраузерность не забываем. думаю, что смысла говорить про новую возможность пока нет. Посмотрим как это будет развиваться. Пока же даже бета-версии нет.
-
Требуется специалист по созданию интернет-магазина.
sitecreator replied to Greenpower's topic in Creation of stores
Интересно.... Значит, высокую по московским меркам... Становится еще интереснее... Аж заинтриговали.... "так далее" - это не взирая на праздники, без права на отдых, лечение и прочие права трудящихся? Помню как-то дама ко мне настойчиво стучалась утром 2-го января со словами "мы же с вами разговаривали...". Ага, разговаривали 29-го декабря вечером и договорились, что вернемся к делу после праздников. У вас такое же отношение к делу предполагается? Что ж, можно и на это договориться. Т.е., чуть что, то бросаем все дела и занимаемся только вашими. Вопрос лишь в денежной вознаграждении. Назовите сумму! Московская высокая оплата с учетом работы без выходных.... Так сколько же это в месяц, день, час? -
Нужен программист
sitecreator replied to Jalo's topic in Программирование, создание модулей, изменение функциональности
В основном разговорный русский, реже - английский. Библиотекой Кирилла и Мефодия пользуюсь, а что? Вы про какие языки спрашиваете и с какой целью? Вот тут нужен специалист со знанием HTML+CSS. Но это (HTML) не язык программирования, это язык разметки. А вам на каком нужно языке сделать? HTML 5 или HTML 4.1, например? А, может быть, на XHTML 1.1? Кстати, а вам нужно чтобы XHTML 1.1 strict или XHTML 1.1 Transitional было? Надеюсь, что моя информация оказалась вам полезной. Правда, остается все же ощущение какой-то нестыковки в задании. Смотрите сами: Вот 1-м пунктом идет задание совсем не для программиста, а верстальщика. Вам спец широкого профиля нужен, может быть? -
Для пользователей Опенкарт 1.5.* подготовил новую версию модуля 1.14.3 Доступна для скачивания на сайте разработчика. Если кто-то не знает как скачать, то здесь подробно: Как скачать свежую версию модуля Компрессор Учтите, что при использовании webp lazy load некоторые слайдеры требуют некоторой адаптации в виде вставки дополнительного кода JS. Сами слайдеры не нужно изменять. У меня есть прямо в коде lazy пример как это нужно делать. Nivo слайдер (неадаптивный), который по умолчанию идет в комплекте опенкарт 1.5 плохо совместим с lazy load, но я сильно сомневаюсь, что его кто-то использует в своем магазине, т. .к. в плане адаптивного дизайна он также непригоден. Если не знаете как адаптировать lazy load под конкретные условия и нет желания платить за его настройку, то просто не включайте его. WEBP и без этого работает. webp lazy load - это лишь дополнительный бонус. Обратная связь, т.е. отчет работает/ не работает приветствуется.
-
Для пользователей Опенкарт 1.5.* подготовил новую версию модуля 1.14.3 Возможности практически такие же как для 2-ки, за исключением функций для Яндекс-маркета. Ну и для Турбо не делал vqmod чтобы корректно работал WEBP. Вообще с Турбой не тестировал модуль. WEBP Lazy Load работает. Насколько это совместимо с ускорителями для 1.5.* не знаю. С Jet cache совместимо. Тестировал с VQMOD 2.5.1. По идее должно работать и с более ранними VQMOD, и с последней 2.6.1 тоже. VQMOD файлов всего два. image_by_sitecreator.xml sitecreator_webp_output.xml Поскольку всего покупок было штук 15 для опенкарт 1.5.*, то это максимум, который я могу предоставить. Если нужно что-то адаптировать, устанавливать, настраивать, то только как дополнительная услуга, господа. Устанавливаете сами, разбираетесь сами, откат делаете сами если что-то пойдет не так. Сейчас сделаю доступной для скачивания эту версию в ближайшее время.
-
ошиблись версией php, не обновили кеш ocmod или еще что-то. в личку с доступами прошу. Обязательно помогу. частная проблема, скорее всего что-то не учли. Проблем нигде не наблюдается при правильной установке (обновлении). В личке максимально подробно дайте информацию (включая с какой версии модуля обновлялись, какая версия php) и опишите вашу проблему. про доступы здесь: https://opencartforum.com/files/tutorials/73-{%3F}/
-
Уточнение по поводу админ-бара для модуля Компрессор. Включайте (на вкладке "Сервис") только на время тестов и полностью отключайте после чтобы исключить возможную ненужную нагрузку. Пользуйтесь в режиме отключенного WEBP. Админ-бар делался давно, а потому с webp не умеет работать. Но это нисколько не мешает работе, поскольку webp - это всего лишь копия в другом формате ваших JPEG, PNG изображений. Можете не отключать режим webp для работы админ-бара, но тогда работайте в каком-либо браузере, который не понимает webp, например, Microsoft Edge или в старом FireFox (до 64 включительно). Сегодня/завтра будет версия модуля 1.14.2. Сделаны мелкие фиксы и кое-что добавлено.
-
Работал совместно с фотографами, которые делают фотесессии для магазинов. Уж они то знают толк в мелких деталях. Пришли к общему мнению, что если важны мелкие детали и максимальная четкость, то оптимальный уровень качества лежит в пределах 85-87 (imagick и webp). Повышение уровня качества до 90 дает едва заметную прибавку к качеству, которую сложно оценить если специально не приглядываться с лупой, но увеличивает вес непропорционально этому качеству. Но а выше 90 ставить практически нет смысла. речь про JPEG (imagick) + webp. GD при том же уровне качества делает свою работу несколько хуже чем imagick. Вообще imagick делает любую работу лучше чем GD, поэтому всегда стоит включать imagick. Имеет смысл выставлять уровень качества в пределах 80-90. И если нет мелких деталей, то ближе к 80, и наоборот.
-
Новая версия доступна для скачивания. 1.14.1 Учтены особенности быстрых страниц от Гугла ( https://support.google.com/webmasters/answer/6340290?hl=ru ) и, соответственно, специфические требования к ним. В этой версии на всякий случай отключен lazy load для страниц index.php?route=checkout/... и подобных (simplecheckout и т.д) Хоть это ни разу и не мешало работе этих страниц, но на всякий случай лишний JS убран. Думаю, что толку от lazy load на подобных страницах мало. WEBP для них работает. Также улучшена работа с изображениями при наличии только php GD (в отсутствии imagick). Улучшения касаются обработки неправильных изображений когда внутри JPEG находится PNG. Это позволяет избежать ситуации появления черного фона если в таком неправильном JPEG был альфа-канал (прозрачный фон).
-
Может быть у меня глаз замылился? Я не вижу разницы в качестве изображений при смене формата с JPEG на WEBP. Заказчик уверяет, что качество ухудшилось и он это видит. Я пытался найти отличия и... не смог. даже не буду говорить какая из 2-х картинок в формате WEBP, но она "ухудшилась"?
-
Просьба обновиться до 1.14.* версии всем, кто этого не сделал. В первых (бета) версиях модуля, которые поддерживают webp lazy load, данный механизм не учитывал возможные последующие изменения DOM (подгрузка контента и т.п.). Этот момент уже давно решен, как минимум, несколько недель прошло (или пара месяцев уже?). Все ваши пожелания и замечания учитываются, в новых версиях оперативно фиксятся баги и применяются более совершенные алгоритмы, в том числе и новый алгоритм webp lazy load. Мною с нуля написан весь функционал (включая JS) webp lazy load, и направлен он на максимальное быстродействие. Никакие сторонние библиотеки не используются, весть код JS является результатом разработки автора @sitecreator (sitecreator.ru)
-
Для тех, кто не знает или еще не оценил. Новая возможность сократить ненужный трафик для смартфонов и, тем самым, увеличить скорость загрузки страницы. Одновременно выполняем рекомендацию Гугла:
-
Новая версия 1.14.0 Доступна для скачивания на сайте разработчика. На предыдущие версии устанавливается поверх через установщик ocmod. после установки обновите кеш модификаторов (ocmod) и системный кеш. Впрочем, это рекомендуется делать всегда при обновлении любого модуля.
-
Новая версия 1.14.0 Доступна для скачивания на сайте разработчика. В этой версии много важных изменений. В основном они не бросаются визуально. Существенно увеличена производительность работы модуля. После создания изображений модуль Компрессор способен работать быстрее чем штатные средства вывода изображений движка opencart. Кроме того устранены ошибки, которые есть в штатных средствах (в движке "из коробки") по работе с изображениями. Появилось средство для отладки изображений. Вы можете измерять общее время, которое потрачено на вывод / генерацию (работает model tool resize). Можете находить проблемные изображения, например, отсутствующие исходники, из-за которых невозможно создать изображение в кеше и вывести его в HTML. Если у вас есть проблемы и сомнения в производительности сайта и вы пытаетесь найти узкие места, то режим отладки вам поможет. Если вы сомневаетесь в скорости работы модуля Компрессор, то можете получить подробный отчет о его работе. И узнать общее время, потраченное на изображения. надо помнить, что генерируются изображения для кеша один раз. В этот момент страница может долго загружаться, т.к. требуется время для создания изображений. далее изображения уже быстро отдаются из кеша. Отладочную информацию можно выводить прямо на страницу (и она будет видна всем), либо ее можно увидеть только в исходном тексте HTML.
-
На странице 100 товаров. у каждого товара 3-6 изображений. Скорость отдачи страницы в пределах 200-250 мс. WEBP Lazy Load существенно снизил вес изображений. Заодно просканировали автоматически и исправили битые изображения.
-
Добавил возможность сканирования всех изображений JPEG, PNG в кеше. Если будут найдены битые, то они будут созданы заново. Соответственно WEBP также будет создан заново. Называется режим: Не надо думать, что нагрузка катастрофическая, но я должен предупредить о лишней нагрузке. Тест показывает, что сканирование 300 - 500 изображений размером 450х650 (на одной странице HTML) привело к увеличению времени отдачи страницы примерно на 1 сек. Но изображений очень много для одной страницы! Такая страница сформировалась в пределах 1.2- 1.8мс, это вместе со временем сканирования на битость. Вывод всех изображений в формате WEBP. Это 100 товаров на страницу. У каждого товара от 3 до 6 изображений сразу на одной странице HTML. Время сканирования изображений может занимать от десятков миллисекунд до сотен, т.е. грубо говоря 0.05 - 2 сек. На слабом сервере, возможно, что больше. данный сканер (форсированный режим восстановления) следует рассматривать как профилактическое средство и средство для лечения. На постоянной основе нет смысла его держать включенным. Для постоянной основы годится это: Это никак не приводит к лишней нагрузке. Данная возможность восстановления битых изображений доступна в версии модуля 1.12.12. Для ее корректной работы нужно на время отключить кешер (ускоритель) или несколько раз очистить кеш ускорителя или дождаться когда он сам автоматически очистится (если такая возможность есть). Если битые изображения исправлены, т.е. визуально вы это видите, то можете снова включит ускоритель (если отключали).