Как стать автором
Обновить

Prestashop Alternatives in 2020: Top eCommerce Platforms

Время на прочтение4 мин
Количество просмотров1.7K
image

Are you looking for the best eCommerce platform for your store? Well, this is such an important and big decision as this decides the future of your business. There are various eCommerce platforms and Prestashop is also one of them.

If you are aware of Prestashop and want to switch to other options then this blog is going to help you with good alternatives. Before you jump to other eCommerce platforms, let’s have a look at the market popularity of the Prestashop. Have a look at the below-given graph by Similar Tech which shows the market popularity of the Prestashop.

image

Without stretching too much time, let’s move towards the best alternatives. Let’s have a look at them:
Read more →
Всего голосов 3: ↑3 и ↓0+3
Комментарии0

Как сделать фронтенд в три раза быстрее и когда применять команды вместо репозиториев? Видео

Время на прочтение1 мин
Количество просмотров3.7K

В Харькове прошёл Magento-митап, и на нём прозвучали доклады Робина ван Раана, Александра Шкурко и Максима Грома. В них много полезного. Ловите.


Робин ван Раан рассказал о новейших практиках оптимизации RequireJS. С их помощью фронтенд сайта можно ускорить в 3 раза!



Александр Шкурко рассказал, в каких случаях лучше использовать команды вместо репозиториев в Magento 2. Всё это проиллюстрировано лучшими, на мой взгляд, картинками!



Максим Гром коснулся скользкой темы ныряния в Magento DI. Многим это тоже будет полезно.


Всего голосов 12: ↑7 и ↓5+2
Комментарии3

Vue Storefront: Второй подход к снаряду

Время на прочтение3 мин
Количество просмотров5K

Одним из выступленией, заинтересовавших меня на конференции Meet Magento Baltics, было выступление Sander Mangel о возможностях применения Vue Storefront (VSF) совместно с Magento.


PWA является перспективным направлением развития в web-разработке. Разработчики Magento 2 предлагают свой набор инструментов для создания современного, мобильно-ориентированного web-приложения, соответствующего традициям Magento, а разработчики Vue Storefront пошли по пути создания универсального фронта, способного через адаптеры взаимодействовать с различными backend'ами (Magento, WooComerce, Odoo, ...). Несколько месяцев назад я попробовал PWA Studio от Magento и пришёл к выводу, что решение пока что сыровато. Демо-версия Vue Storefront произвела на меня очень хорошее впечатление и мне захотелось пощупать это решение более интимно.


image


Отдаю должное ребятам, подготовившим демку для развёртывания — достаточно соответствовать условиям (иметь предустановленными nodejs, yarn, docker, ...), выбрать все опции по-умолчанию в процессе установки, и можно получить на собственной машине PWA, аналогичное демо-версии. Но мне же не нужно иметь ещё одну демку, мне нужно подключить Vue Storefront к уже имеющимся у меня проектам. И вот тут начинается засада.


У Magento-разработчиков хорошее представление о мире PHP и, как правило, не очень хорошее о мире nodejs. Вещи, тривиальные для второго мира, вызывают ступор у обитателей мира первого. Под катом я описал свой второй подход к развёртыванию Vue Storefront в попытке подключить его к имеющемуся у меня проекту. Сразу скажу, что результатом второго подхода у меня является приложение не подключенное ни к чему, но хотя бы загружающееся в браузер. Очень похоже, что мне придётся сделать ещё не один подход, пока я получу желаемый результат.

Читать дальше →
Всего голосов 7: ↑4 и ↓3+1
Комментарии10

Структура модуля Magento 2

Время на прочтение10 мин
Количество просмотров3.9K

В данной статье мы рассмотрим структуру модуля Magento 2. Посмотрим из чего она состоит, разберем какие бывают конфигурационные файлы и для чего они нужны. В будущем оставлю ссылки на статьи, где каждая упомянутая тут тема будет рассмотрена в деталях.

Читать далее
Рейтинг0
Комментарии0

О Dependency Injection в Magento 2

Время на прочтение7 мин
Количество просмотров3.2K

В этой статье поговорим об инъекции (внедрении) зависимостей в Magento 2. Как ее использовать и для чего она нужна.

Итак, внедрение зависимостей — это паттерн проектирования предназначенный для того, чтобы предоставлять какому-либо объекту зависимости, необходимые для его работы. Это более совершенная альтернатива наследованию, позволяющая уменьшить связанность классов и компонентов между собой.

В основе этого подхода лежит принцип Dependency Inversion (инверсия зависимостей) из принципов SOLID, который предполагает использование абстракций вместо конкретных классов, где детали реализации должны зависеть от абстракций, а абстракции не должны зависеть от деталей реализации.

Читать далее
Всего голосов 2: ↑2 и ↓0+2
Комментарии0

Пример модуля для Magento 2 другимъ манеромъ

Время на прочтение4 мин
Количество просмотров9.4K
Осенью прошлого года, когда вышла Magento 2.0, я написал статью "Пример модуля для Magento 2", в которой обрисовал один из возможных вариантов формирования окружения для разработки модуля под вторую версию Magento. Совсем недавно вышли обновления (v 2.0.1 и v 2.0.2), судя по которым разработчики Magento уходят от схемы развертывания с использованием Magento Composer Installer (при помощи которого разворачивается Magento 1 и разворачивалась в моем предыдущем примере Magento 2.0.0), По крайней мере, простое изменение версии Magento c 2.0.0 на 2.0.1 приводило к тому, что то, что разворачивалось, работать как Magento-приложение совершенно не хотело.

Под катом — новый пример развертывания окружения, адаптированный под изменившиеся условия.
Читать дальше →
Всего голосов 9: ↑7 и ↓2+5
Комментарии6

DI плагины в Magento 2

Время на прочтение3 мин
Количество просмотров13K
В Magento 2 вместо rewrite'ов, использовавшихся в первой версии, появились плагины, которые позволяют переопределить поведение большинства методов, перехватив поток выполнения тремя способами:

  • before
  • after
  • around

Подробнее про плагины можно узнать в документации, а под катом — просто пример использования.
Читать дальше →
Всего голосов 9: ↑9 и ↓0+9
Комментарии4

Magento Meetup Kharkiv №4 — видео докладов

Время на прочтение1 мин
Количество просмотров1K
7 сентября в Харькове уже в четвертый раз провели Magento meetup. Говорили об улучшении производительности, повышении качества кода и об интернационализации контента. Мы собрали видео презентаций ниже.

image
Читать дальше →
Всего голосов 12: ↑7 и ↓5+2
Комментарии0

Magento 2: рендерер для ячейки грида

Время на прочтение5 мин
Количество просмотров3.1K

Выход версии 2.3.0 приблизил использование PWA на фронте Magento-приложений на расстояние вытянутой руки. И если для фронта видны какие-то подвижки в применяемых технологиях, то с админкой всё гораздо стабильнее — старый добрый лабиринт из различных типов файлов, которые нужно поредактировать, чтобы на UI проявилось что-то полезное, усовершенствовать не планируется. В этой статье я описываю создание собственного рендерера для колонки грида в админке — вещи довольно несложной и, в то же самое время, довольно полезной при правильном применении. Например, рендерер для формирования в гриде заказов ссылки на карточку клиента, оформившего заказ:


image

Читать дальше →
Всего голосов 10: ↑10 и ↓0+10
Комментарии0

Magento 2: импорт продуктов из внешних источников

Время на прочтение6 мин
Количество просмотров4.9K

Magento является e-commerce решением, т.е. больше нацелено на продажу продуктов, чем на сопутствующий продажам складской, логистический или финансовый учёт. Для сопутствующего лучше подходят другие приложения (например, ERP-системы). Поэтому достаточно часто в практике использования Magento возникает задача интеграции магазина с этими другими системами (например, с 1С).


По большому счёту интеграцию можно свести к репликации данных по:


  • каталогу (продукты, категории);
  • инвентарным данным (остатки продуктов на складах и цены);
  • клиентам;
  • заказам;

Magento для манипуляции с данными в базе предлагает отдельный класс объектов — репозитории. В силу специфики Magento добавление данных в базу через репозитории легко кодируется, но происходит, скажем так, небыстро. В данной публикации я рассматриваю основные этапы программного добавления в Magento 2 продукта "классическим" способом — с использованием репо-классов.

Читать дальше →
Всего голосов 17: ↑17 и ↓0+17
Комментарии6

7 ошибок одного Black Friday и как работает Magento Cloud — видео

Время на прочтение1 мин
Количество просмотров1.1K
Это доклады с Magento Meetup Kharkiv Online, где разработчики поделились опытом и рассказали, что такое Magento Cloud, чем хорош модуль Enhanced media gallery и как избежать ошибок в инфраструктуре, которые могут положить сайт в самый разгар сезона продаж.

Слайды хорошо видны, поэтому файлы презентаций сюда не добавляю. Если кто хочет поклацать презентации — пишите в комментарии.



Всего голосов 7: ↑7 и ↓0+7
Комментарии0

Magento 2: Настройки frontend оптимизации

Время на прочтение3 мин
Количество просмотров2.6K


В этой статье мы рассмотрим какие настройки и инструменты по оптимизации есть в Magento 2.

Версия Magento на момент написания статьи — 2.3.4

Производительность веб-сайта — очень важный аспект как и для поисковой системы (более быстрые сайты поднимаются в выдаче выше, чем медленные), так и для посетителей (медленный и тормозящий ресурс врядли будет обладать большой конверсией). В области e-commerce это особо важно.

Давайте посмотрим, что же может предложить нам Magento 2 «из коробки»:

  1. Настройки кеширования
  2. Настройки JavaScript
  3. Настройки CSS
  4. Настройки изображений


Настройки кеширования


Stores — Configuration — System — Full Page Cache

На выбор предлагается 2 опции: Built-in cache и Varnish cache



Built-in cache — встроенный кеш, Varnish cache — это HTTP ускоритель предназначенный для обслуживания динамических веб-сайтов, и сайтов имеющих API.
Читать дальше →
Рейтинг0
Комментарии0

Magento 2: Critical CSS

Время на прочтение2 мин
Количество просмотров4.4K


В этой статье мы рассмотрим, как настроить и включить critical css в Magento 2.

Что ты такое, critical css?


И HTML, и CSS замедляют вывод страницы. HTML-документ нужно обработать для создания модели DOM, без которой на странице не будет контента. CSS-документ необходимо сначала загрузить, а далее обработать (CSS Object Model).

Чтобы ускорить процесс, необходимо упрощать CSS и использовать media-запросы. Так же увеличению производительности способствует critical css.

Как мы уже говорили выше, все стили CSS, загруженные из внешних файлов, рассматриваются как блокирование рендеринга. Это означает, что веб-страница не будет отображаться, пока эти файлы не будут загружены. Используя critical css, мы предоставляем «критический CSS», встроенный в, и делаем загрузку всех остальных стилей асинхронной.

Асинхронная загрузка достигается путем добавления новой директивы preload в атрибут rel

Для поддержки кроссбраузерности rel=«preload» в Magento используется полифилл.

Важная особенность, в «критический css» входит только видимая часть страницы.
Читать дальше →
Всего голосов 2: ↑2 и ↓0+2
Комментарии0

Magento 2: Advanced Javascript Bundling

Время на прочтение2 мин
Количество просмотров3.3K


Большой размер JavaScript файлов в Magento2 — большая проблема, в этой статье мы попробуем Magento Advanced JavaScript Bundling. Рассмотрим инструменты, настройку и работоспособность.

Основная цель JavaScript-бандлинга состоит в том, чтобы уменьшить количество и размер запрашиваемых ресурсов для каждой страницы.
Читать дальше →
Всего голосов 3: ↑3 и ↓0+3
Комментарии1

Неочевидные факты о коллекциях в Magento 2

Время на прочтение9 мин
Количество просмотров4.9K

Привет! Меня зовут Павел и я занимаюсь бэкенд разработкой. Сегодня мы рассмотрим коллекции в Magento 2 (далее — M2). Несмотря на кажущуюся простоту реализации и интуитивно понятное назначение, эта сущность таит в себе несколько неочевидных подводных камней, которые влияют на производительность, а иногда и на саму возможность работы кода. 

Сегодня рассмотрим принципы работы коллекций, полезные фишки и лайфхаки их использования, а также оценим влияние разных нюансов на производительность. 

Погнали!

Читать далее
Всего голосов 5: ↑5 и ↓0+5
Комментарии2

Пример модуля для Magento 2

Время на прочтение6 мин
Количество просмотров22K


Данная статья устарела. Вот новая.



На неделе пощупал пример создания модуля для Magento 2. В ходе прощупывания пытался сформировать рабочее окружение по аналогии с выработавшимся у нас на данный момент окружением для разработки модулей под Magento 1.

  • размещение кода модуля в репозитории Github'а;
  • подключение модуля к Magento-приложению при помощи Composer'а;
  • автоматизация процесса развертывания девелоперской/тестовой версии Magento;

Под катом ссылка на github-проект с примером модуля под Magento 2 с (полу)автоматическим развертыванием среды для его разработки.
Читать дальше →
Всего голосов 9: ↑8 и ↓1+7
Комментарии9

Вышел Magento 2.0 Release Candidate

Время на прочтение2 мин
Количество просмотров17K
Magento 2.0 release candidate

5 ноября 2015 года после долгих месяцев разработки первый релиз кандидат Magento 2 опубликован на GitHub и ждёт как критики, так и активного соучастия в разработке от своего сообщества.
Под катом подробности из официального changelog
Всего голосов 22: ↑17 и ↓5+12
Комментарии18

Magento 2: cookies, registry, session

Время на прочтение3 мин
Количество просмотров8.4K

Иногда при обработке запросов в web-приложениях возникает необходимость в кратковременном сохранении промежуточной информации. Для записи информации в браузер клиента используется механизм cookies, для сохранения данных в пределах одного запроса — реестр, для сохранения данных между запросами — сессии. Под катом — примеры для Magento 2.

Читать дальше →
Всего голосов 6: ↑6 и ↓0+6
Комментарии4

Magento 2: добавление колонки к гриду админки

Время на прочтение6 мин
Количество просмотров9.7K

Под катом пример добавления в гриде админки Magento 2 дополнительной колонки с данными из таблицы, связанной с основной таблицей грида, и "грязный хак" для работы фильтра по дополнительной колонке. Допускаю, что это не вполне "Magento 2 way", но это как-то работает, а потому — имеет право на существование.

Читать дальше →
Всего голосов 6: ↑6 и ↓0+6
Комментарии14

Автоматическое изменение типов продуктов в Magento 2

Время на прочтение6 мин
Количество просмотров5.6K
Иногда по тем или иным причинам контент менеджерам необходимо конвертировать тот или иной продукт из Simple в Virtual или наоборот, сменить ему атрибут сет и так далее… Чаще всего это ложится на плечи разработчиков. И тут я хотел бы описать 1 новую и очень интересную особенность Magento 2, которая никак не описана в официальной документации.
Читать дальше →
Всего голосов 13: ↑13 и ↓0+13
Комментарии0