Web-разработка
20.07.2019
Наша корзина сейчас довольно примитивная — не хватает возможности удалить товар и обновить содержимое. Давайте это исправим и начнем с обновления view-шаблонов страницы корзины и содержимого модального окна. Добавим ссылки для удаления товаров из корзины и форму — чтобы можно было изменить количество.
19.07.2019
Мы уже умеем добавлять новые настройки и группы настроек на одну из дочерних страниц пункта меню «Настройки». Таких страниц всего шесть: Общие, Написание, Обсуждение, Медиафайлы, Постоянные ссылки, Конфиденциальность. Но мы можем добавить еще одну такую страницу и разместить на ней настройки плагина.
17.07.2019
WordPress добавляет внутрь тега <head> множество служебных тегов, многие из которых бесполезны как для посетителей, так и для поисковых систем. Кроме того, некоторые мета-теги противоречат правилам безопасности. Например, мета-тег generator содержит информацию об используемой версии WordPress…
15.07.2019
API опций было добавлено в версии 2.7 и позволяет создавать как сами настройки, так и поля форм для сохранения значений в базу данных. Можно добавлять как отдельные настройки, так и целые секции настроек. И размещать элементы формы как на уже существующих страницах (Общие, Чтение, Медиафайлы), так и создавать…
14.07.2019
Теперь надо изменить форму добавления в корзину на странице товара. Но вот что плохо — после добавления товара в корзину происходит редирект на страницу корзины. Это не очень удобно, поэтому будем отправлять POST-запрос с использованием AJAX. И после добавления в корзину будем показывать модальное окно с содержимым корзины.
13.07.2019
Ну вот, добрались и до корзины. Перед тем, как писать код — несколько слов о том, что будем делать. Для начала создадим форму для добавления товара в корзину на страницах списка товаров категории. Контроллер будет принимать POST-данные и обращаться к модели, чтобы добавить товар в корзину. Саму корзину будем хранить в сессии.
12.07.2019
Сессия позволяет сохранять пользовательские данные между запросами. При использовании чистого PHP можно получить доступ к этим данным через глобальную переменную $_SESSION. Yii2 инкапсулирует сессию в объект, что дает возможность обращаться к пользовательским данным в объектно-ориентированном стиле.
10.07.2019
Давайте создадим плагин, который будет добавлять еще один виджет «Дерево категорий» к тем, что доступны изначально, сразу после установки WordPress. Виджет категорий блога уже имеется в поставке, но наше дерево категорий будет изначально свернуто, т.е. будут показаны только категории верхнего уровня, а все потомки скрыты.
07.07.2019
Давайте создадим плагин, который позволит подсвечивать php-код в записях блога. Для подсветки используем нативную php-функцию highlight_string(). Добавлять php-код в запись можно будет с помощью шорткода [php]. Практической ценности плагин не представляет, написан исключительно с целью изучения WordPress.
06.07.2019
У нашего поиска есть серьезная проблема — окончания слов. Например, в каталоге есть товар «Мужские зимние ботинки», а пользователь ищет «зимняя обувь». Этот товар не попадет в результаты поиска, потому что нет точного совпадения: в поисковом запросе используется слово «зимняя», а названии товара используется слово «зимние».