Поиск по блогу
12.10.2019
React — JavaScript библиотека для создания пользовательских интерфейсов. Она позволяет собирать сложный UI из маленьких изолированных кусочков кода, называемых «компонентами». Прежде чем создать первый компонент, создадим чистый документ React, не содержащий компонентов.
09.10.2019
Кеширование данных позволяет ускорить работу сайта и существенно снизить нагрузку на сервер. В ядре WordPress существует три основных вида кеширования — кеширование страниц (page cache), кеширование объектов (object cache) и транзитное кеширование (transient cache).
04.10.2019
В принципе, наш фильтр уже работает и на этом можно было бы и закруглиться. Но URL страницы с результатми фильтрации выглядит страшно, потому что GET-параметр filter представляет собой вложенный массив. Давайте улучшим наш плагин и добавим ЧПУ, чтобы из URL сразу было понятно, где мы находимся.
02.10.2019
Хорошо, у нас есть возможность добавления фильтров и мы можем устанавливать значения этих фильтров. Теперь добавим форму фильтра на страницу архива записей типа product. Эта страница доступна по адресу /product/ сразу после регистрации нового типа записи. Если это не так — нужно в панели управления перейти на страницу настроек…
30.09.2019
Давайте напишем плагин, который позволит фильтровать пользовательский тип записи по произвольным полям. За основу возьмем плагин «Каталог товаров», чтобы не начинать с полного нуля. Добавим для этого плагина страницу настроек в панели управления, где можно будет создавать фильтры. А для страницы редактирования товара создадим метабокс…
29.09.2019
При редактировании с помощью WYSIWYG-редактора страницы сайта может возникнуть необходимость загрузки изображений, так что установим файловый менеджер ELFinder. Кроме того, создадим отдельную страницу 404 Not Found для панели управления, потому что сейчас используется страница 404 общедоступной части сайта, что не очень удобно.
22.09.2019
Сейчас для показа всех страниц в панели управления используется класс ActiveDataProvider и виджет GridView. Нам это не подходит, потому что страницы надо показывать с учетом иерархии. По аналогии с категориями каталога изменим метод контроллера actionIndex() и view-шаблон index.php.
20.09.2019
Добавлять мета-теги keywords и description для рубрик и меток теперь удобно, чего нельзя сказать о добавлении мета-тегов для постов и страниц. Мало того, что для каждой новой записи надо добавлять два произвольных поля, так еще при смене тамы нужно вносить изменения в шаблон header.php. Давайте добавим метабокс для страниц…
18.09.2019
Код для работы со страницами уже работает, но нуждается в некоторой доработке. Нужно предоставить возможность выбора родителя для страницы, прикрутить WYSIWYG-редактор, добавить валидатор для slug, изменить надписи на кнопках и так далее. Все это мы уже делали для товаров, категорий и брендов, так что без подробностей.
17.09.2019
Перед удалением категории нужно выполнить две проверки. Первая — что категория не содержит товары. Вторая — что категория не имеет дочерних категорий. Если хотя бы одно условие ложно, категорию удалять нельзя. Добавим метод beforeDelete() в класс модели Category. И добавим аналогичную проверку перед удалением бренда.