Как программно добавить атрибут категории в Magento 2

Как программно добавить атрибут категории в Magento 2 Создать файл InstallData.php Мы начнем с класса InstallData, который находится в app / code / Mageplaza / HelloWorld / Setup / InstallData.php. Содержание для этого файла: <?php namespace Mageplaza\HelloWorld\Setup; use Magento\Eav\Setup\EavSetupFactory; use Magento\Framework\Setup\InstallDataInterface; use Magento\Framework\Setup\ModuleContextInterface; use Magento\Framework\Setup\ModuleDataSetupInterface; class InstallData implements InstallDataInterface { private $eavSetupFactory; public function __construct(EavSetupFactory $eavSetupFactory) { $this->eavSetupFactory = $eavSetupFactory; } } Определите метод install () <?php public function install(ModuleDataSetupInterface $setup, ModuleContextInterface $context) { } Создайте атрибут категории программно <?php namespace Mageplaza\HelloWorld\Setup; use Magento\Framework\Setup\InstallDataInterface; use Magento\Framework\Setup\ModuleContextInterface; use Magento\Framework\Setup\ModuleDataSetupInterface; use Magento\Eav\Setup\EavSetupFactory; class InstallData implements InstallDataInterface { private $eavSetupFactory; public function __construct(EavSetupFactory $eavSetupFactory) { $this->eavSetupFactory = $eavSetupFactory; } public function install( ModuleDataSetupInterface $setup, ModuleContextInterface $context ) { $eavSetup = $this->eavSetupFactory->create([‘setup’ => $setup]); $eavSetup->addAttribute( \Magento\Catalog\Model\Category::ENTITY, ‘mp_new_attribute’, [ ‘type’ => ‘varchar’, ‘label’ => ‘Mageplaza Attribute’, ‘input’ => ‘text’, ‘sort_order’ => 100, ‘source’ => », ‘global’ => 1, ‘visible’ => true, ‘required’ => false, ‘user_defined’… Читать далее »

Magento 1 и Magento 2 сеттеры и геттеры

      2 мин чтения    4.5/5    1 комментарий к записи Magento 1 и Magento 2 сеттеры и геттеры

Magento 1 и Magento 2 сеттеры и геттеры Для получения и внесения данных в сессию или атрибуты объектов в Magento используются конструкции get и set. Для этого мы программно устанавливаем некоторые значения для объектов и получаем их. В начале рассмотрим пример с сессиями. Сессия — это временный объект, который создается на сервере для каждого пользователя магазина Magento для хранения некоторых значений (например, товаров в корзине). Если вы хотите сохранить данные, которые нужно передать с одной страницы на другую для одного и того же пользователя, вам нужно сохранить их в сеансе. Для начала рассмотрим подробный пример на Magento 1.   $inputMessage = ‘Hello World’; Mage::getSingleton(‘core/session’)->setWelcomeMessage($inputMessage); $outputMessage = Mage::getSingleton(‘core/session’)->getWelcomeMessage(); echo $this->__($outputMessage); Все достаточно просто, данный код на Magento 1 можно вынести в Helper или использовать его в конкретном шаблоне если не требуется его повторения по всему проекту. Вторым примером рассмотрим использование сессии в Magento 2. class MyTestSession {     protected $session;     public function __construct(         \Magento\Framework\Session\SessionManagerInterface $session,         …     ){         $this->session = $session;         …     }     public function setValue($value){… Читать далее »

Создание Grid с редактирование и добавлением в Magento2

      25 мин чтения    4.5/5    Комментарии к записи Создание Grid с редактирование и добавлением в Magento2 отключены

Прежде чем начать раздел кода, давайте создадим структуру каталогов, которая понадобится для создания сетки редактирования сетки администратора и добавления сетки. app/code/Webkul/Grid app/code/Webkul/Grid/etc app/code/Webkul/Grid/etc/Adminhtml app/code/Webkul/Grid/Block/Adminhtml app/code/Webkul/Grid/Block/Adminhtml/Grid app/code/Webkul/Grid/Block/Adminhtml/Grid/Edit app/code/Webkul/Grid/Model app/code/Webkul/Grid/Model/ResourceModel app/code/Webkul/Grid/Model/ResourceModel/Grid app/code/Webkul/Grid/Setup app/code/Webkul/Grid/Controllers/Adminhtml app/code/Webkul/Grid/view/adminhtml/layout Теперь, когда мы подготовили структуру каталогов, теперь мы создадим файл в соответствии с требованиями модуля в заданной последовательности: 1. Создадим Module.Xml в App/Code/Webkul/Grid/Etc 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 <?xml version=»1.0″?> <!— /**  * Webkul_Grid Module  *  * @category    Webkul  * @package     Webkul_Grid  * @author      Webkul Software Private Limited  *  */ —> <config xmlns:xsi=»https://www.w3.org/2001/XMLSchema-instance» xsi:noNamespaceSchemaLocation=»urn:magento:framework:Module/etc/module.xsd»>     <module name=»Webkul_Grid» setup_version=»2.0.0″>     </module> </config> 2. Создадим Registration.Php в App/Code/Webkul/Grid 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 <?php  /**  * Webkul_Grid Module Registration  *  * @category    Webkul  * @package     Webkul_Grid  * @author      Webkul Software Private Limited  *  */ \Magento\Framework\Component\ComponentRegistrar::register(     \Magento\Framework\Component\ComponentRegistrar::MODULE,     ‘Webkul_Grid’,     __DIR__ ); 3. Создадим Menu.Xml… Читать далее »

Атрибут rel=»canonical» и ситуации в которых его следует использовать

      1 мин чтения    4.5/5    Комментарии к записи Атрибут rel=»canonical» и ситуации в которых его следует использовать отключены

Устранение проблемы дублирования страниц является одним из важнейших аспектов оптимизации сайта. В большинстве случаев для решения этой проблемы лучше всего использовать 301-редирект. Но, когда мы не можем использовать 301 редиректы, либо нам нужны страницы, которые будут просматриваться пользователями, тогда нам поможет атрибут rel=”canonical”. С помощью этого атрибута вы быстро сможете решить проблемы с дублированным контентом. Как установить rel=”canonical”?   На странице сайта (основной способ) Чтобы указать канонический URL-адрес для текущей страницы вам необходимо установить ниже указанный код, в разделе HEAD, поскольку, если вы случайно зафиксируете этот атрибут в другом разделе, то инструкция будет проигнорирована поисковыми системами. <link rel=»canonical» href=»https://site.com/canonical-link.html»/>   Через xml-карту сайта Для каждой страницы в xml-карте сайта вы можете проставить свою каноническую ссылку. Но в этом случае поисковые системы могут игнорировать эти рекомендации.   Через ответ сервера (лучше для не html-документов) Если вам нужно указать канонические ссылки для документов другого типа (не-html), например, для pdf-файлов, вы можете поставить каноническую ссылку в http-заголовке. В таком… Читать далее »

Что такое 301 редирект и когда его стоит использовать?

      2 мин чтения    4.5/5    Комментарии к записи Что такое 301 редирект и когда его стоит использовать? отключены

  Что такое редирект?   Это способ перенаправить посетителей веб-ресурса и поисковые системы на URL-адрес, отличный от того, который первоначально запрашивался. Самые используемые типы редиректов следующие.   301 Moved Permanently 301 редирект – это постоянная переадресация, которая передает приблизительно 90-99% веса ссылки. Такое перенаправление говорит, что страница была перенесена на новый адрес, а предыдущий URL-адрес должен считаться недействительным (устаревшим).   302 Found (HTTP 1.1) / Moved Temporarily (HTTP 1.0) 302 редирект означает временное перенаправление. Такая переадресация практически не передает ссылочного веса, и в основном её не следует использовать. Сегодня сеть Интернет работает на основе нескольких протоколов. Один из них – HTTP протокол, с помощью которого определяется, как управлять URL-адресами. В двух вариантах данного стандарта код ответа сервера будет отличаться: HTTP 1.0: 302 с ответом сервера “Moved Temporarily” (Временно перемещен) – веб-документ временно перенесен на другой URL-адрес. HTTP 1.1: произошло изменение в ответе сервера на «Найдено» – веб-документ был найден.   307 Moved Temporarily (HTTP 1.1 Only)… Читать далее »

MODX Revo — Микроразметка статьи

      5 мин чтения    4.5/5    Комментарии к записи MODX Revo — Микроразметка статьи отключены

Что такое «Schema.org» Каждый веб-разработчик хорошо знаком с HTML-тегами, т.к. от них зависит, как веб-страница будет выглядеть в браузере. Но независимо от того, какие теги веб- разрабочик использовались для её создания, любой пользователь, читающий эту страницу, сразу поймет смысл её содержимого. Это конечно хорошо, но кроме пользователей, веб-страницу посещают ещё и поисковые роботы, которые тоже хотят понять смысл её содержимого. И чем точнее поисковый робот сумеет распознать информацию, представленную на странице, тем более точный результат поисковая система может выдать пользователю. А чем более точный результат будет выдавать поисковая система, тем больше целевых пользователей перейдёт на Ваш сайт. Следовательно, при разработке сайта необходимо создавать такую разметку страницы, чтобы она не только хорошо отображалась в браузере, но была понятна и корректна для поисковым систем. Для этого в 2011 году компаниями Google, Яндекс, Microsoft и Yahoo! был разработан общедоступный словарь, который называется «Schema.org». Он используется для выполнения микроразметки (или семантической разметки) веб-страниц таким… Читать далее »

Устройство считывания жестких дисков

      5 мин чтения    4.5/5    Комментарии к записи Устройство считывания жестких дисков отключены
Устройство считывания жестких дисков

HDD (Hard Disk Drive — устройство управления жестких дисков), или винчестер, имеет также название накопитель для жестких дисков, просто жесткие диски, дисководы жестких дисков (на практике — винт), накопитель на жестких дисках (НМЖД), HMDD (Hard Magmetic Disk Drive) и предназначен для хранения основной информации пользователя. Первый жесткий диск имел 30 цилиндров и 30 секторов на цилиндре, поэтому назывался 30/30, по аналогии с автоматической винтовкой, почему и получил прозвище «винчестер», по названию патрона «30-30 Wincheste» которое прижилось до наших дней. Основным отличием жестких дисков от оперативной памяти является то, что при выключении компьютера данные сохраняются, а не уничтожаются, как в оперативной памяти. Одними из первых жестких дисков в компьютерах типа ХТ были диски емкостью 10Мб, сейчас выпускаются с емкостью, исчисляемой в терабайтах. Время доступа к данным при операциях чтения/записи медленнее, чем в оперативной памяти, но быстрее, чем у гиб­ких дисков. Некоторые компании-производители указывают емкость в Мегабайтах, из расчета, что 1 Мб=1… Читать далее »

Шины и интерфейсы

      3 мин чтения    4.5/5    Комментарии к записи Шины и интерфейсы отключены
Шины и интерфейсы

Шины, как известно, используются для передачи данных от центрального процессора к другим устройствам персонального компьютера. Для того, чтобы согласовать передачу данных к отдельным компонентам, работающих на своей частоте, используется чипсет – набор контроллеров, конструктивно объединенных в Северный и Южный мосты. Северный мост отвечает за обмен информацией с оперативной памятью и видеосистемой, Южный – за функционирование других устройств, подключаемых через соответствующие разъемы – жесткие диски, оптические накопители, а также устройств, находящихся на материнской плате (встроенная аудиосистема, сетевое устройство и др. ), и для внешних устройств – клавиатура, мышь и т.д. Схема системной платы показана ниже. Для связи процессора с мостами используется шина FSB (Front Side Bus) (наиболее часто используемые в настоящее время Hyper-Transport и SCI), северный мост (иногда называемый системным контроллером) позволяет функционировать наиболее производительным устройствам – видеоадаптеру с помощью шины PCI Express 16x и оперативной памяти через шину памяти. Южный мост обеспечивает работу менее скоростных устройств, подключаемых с помощью карт… Читать далее »

Платы расширения и шины

      1 мин чтения    4.5/5    Комментарии к записи Платы расширения и шины отключены
Платы расширения и шины

Многие дополнительные устройства компьютера  (сетевые карты, звуковая карта, видеокарта и др.) подключаются через разъем на материнской плате, часто называемый слотом расширения или просто слотом для расширения функционаьных возможностей  персонального компьютера. Эти устройства называются  картами расширения, также называемые адаптерами или интерфейсными картами. При этом на ней имеются разъемы для подключения информационных кабелей, которые выводятся на заднюю панель системного блока. Это могут быть разные устройства: звуковая карта, видеоплата, модем, сканер и пр. Характеристики таких устройств описаны в соответствующих разделах этой главы. Далее описаны основные, характерные для всех этих устройств принципы установки и виды слотов (разъемов), в которые они устанавливаются. Карты расширения характеризуются унифицированными размерами, фиксированным расстоянием до задней кромки системного блока, определенным расстоянием между слотами, геометрией и расположением фиксирующей скобки, привязкой к крепежным точкам. Размеры карт могут быть различными, а максимальная длина составляет 335 мм и платы ее не превышают. Как правило, платы имеют меньший размер, а указанную длину имеют только очень… Читать далее »

Процессор

      10 мин чтения    4.5/5    Комментарии к записи Процессор отключены
Процессор

Центральный процессор, далее процессор, является одним из главных компонентов компьютера. Часто его называют ЦПУ или CPU (Central Processor Unit — Центральное Процессорное Устройство), а также кристалл, камень, хост-процессор. Именно он выполняет все основные вычисления. И чем мощнее процессор, тем быстрее работает компьютер. Современные персональные компьютеры используют, как правило, определенный алгоритм обработки данных, называемый архитектурой Фон Неймана, когда инструкции и сами данные хранятся в одной памяти, а сам процесс обработки построен на циклической последовательной обработке данных. Правда, именно последовательность обработки является узким местом такой архитектуры, так как любое данное должно последовательно пройти через процессор, хотя само вычисление может быть однотипным. Из иных алгоритмов назовем Гарвардскую архитектуру, когда данные и программный код используют разную память.  Однако в этом случае сложно использовать методы программирования, когда нужно поменять код в процессе выполнения программы, нельзя оперативно перераспределять память и т.д. Используется в встраиваемых компьютерах. Другой алгоритм, параллельный, применяется в суперкомпьютерах для ускорения процесса вычисления. Существуют… Читать далее »