Разработка & Интеграция

Создание сайтов, магазинов, разработка различных проектов, веб-приложений, плагинов, тем и шаблонов с использованием платформ WordPress и WooCommerce

robots.txt для WordPress — рабочий пример файла

Провел SEO-аудит сайта при помощи labrika.ru. Оказалось что много технических ошибок. Пришлось колдовать с файлом robots txt. Готового плагина для этих целей у меня нет. Потому пришлось решать вопрос программно.

MVC в WordPress — Models, Views, Controllers

У программистов часто возникает спор о том что такое MVC (Model, View, Controller)? Заметил что многие думают что если класс назвать Model то он станет Model, а если его назвать View, то он станет View. А если папочку назвать MVC…

Автоматический сброс кеша на стили (CSS), скрипты и картинки

Частая проблема в разработке это сброс кеша после изменение стилей, скриптов, картинок. Вы изменили что-то, у вас на компьютере это выглядит по новому, а кто-то другой заходит, а у него старые версии файлов, все новшества ломаются. Начинаются удивления, шок, паника…

Журналы (Logs) данных и ошибок в WooCommerce

Начиная с версии 2.7 в WooCommerce внедрили новый метод логирования данных и ошибок. Это удобно для отслеживания процессов в системе и диагностики проблем. Использование Идем в консоль сайта, далее раздел WooCommerce / Статус. Далее вкладка Журналы (Log). Выбираем нужный журнал.…

Отключаем сообщение «JQMIGRATE: Migrate is installed, version 3.3.2»

В WordPress по умолчанию активирован плагин jQuery.Migrate. Это нужно для совместимости со старыми компонентами. Но в 80% случаев в нем нет смысла. Зато он пишет в консоль свое сообщение и доставляет страдания внутреннему перфекционисту. Программное решение через код Либо добавить…

Отладка кода через бэктрейс — debug_backtrace()

Возникла ситуация, при которой метод get_term вызывался 20 000 раз. Причем даже на чистой установке WP. Базовая причина была ясна — у нас было 60 постов на странице и у каждого поста около 1000 категорий. Что конечно не очень правильно,…

Вывод типа поста Продукт в топ поиска на Сайте

Возникла задача выводить вверх поиска продукты из WooCommerce. Чтобы они были выше чем посты в блоге. Проблема — часто заходишь на сайт, чтобы найти какой-то продукт в каталоге. Но поиск постоянно сверху выдавал посты из блога с похожими словами. А…

Интервью с WordPress-специалистами — 7 активистов русскоязычного сообщества

WordPress это платформа №1 в мире. Она позволяет делать очень крутые сайты и веб-приложения. Используется отдельными людьми или известными мировыми брендами. Однако само наличие платформы не дает супер результатов. Это как гитара — наличие гитары даже самой крутой марки в…

WordPress — это просто?

Часто в разговорах можно услышать фразу «знающих программистов» о том что WordPress это просто, оно для школьников, чайников, домохозяек (нужное подчеркнуть). А вот «крутым программистам» на таком работать позор. В этих словах есть доля правды, как и целый пласт заблуждений…

Как изменить ссылку логотипа на странице входа WordPress? (wp login)

Иногда бывает нужно изменить ссылку у логотипа на странице входа WordPress. По умолчанию она ведет на официальный сайт WordPress. Эту задачу можно решить плагинами стилизации или кодом (программно). Плагины раз два Без плагина Можно добавить в файл дочерней темы functions.php

Создание эндпоинта и хак сброса пермалинков

В последнее время все чаще сталкиваюсь с задачами где нужно применять ендпоинты в WordPress. Например через ендпоинты собран раздел личного кабинета WooCommerce (My Account). Все подразделы личного кабинета — это ендпоинты. Хотя выглядит как подстраницы. Также часто нужны корневые эндпоинты…

Универсальные методы подключения файлов компонентов для тем и плагинов

В мире WP есть различные методы для получения путей к файлам без хардкода. Это важно, тк папки зависят от опций и могут меняться. Если путь к какому-либо файлу «захардкожен» — мы можем получить разные неожиданные ошибки. А далее каждый раз…

Пример массовой обработки постов в WordPress с прослушкой через Hearbeat API

Задача Реализовать массовое обновление всех постов на сайте. С рекурсивной обработкой и прослушкой состояния через Hearbeat API. Решаемые проблемы Ошибка сервера по таймауту Если данных много, в нашем случае постов около 50 000 штук. То попытка обработать их за один цикл…

Используйте get_post() вместо global $post

Часто разработчики WordPress используют объявление глобальной переменной $post для доступа к данным текущего поста. Но разработчики ядра уже давно отказались от этой идеи и почти везде заменили ее на $post = get_post();

Как настроить отдельный домен второго уровня для сайта в сети WordPress (multisite) на хостинге reg.ru

Появилась задача прикрутить специальный домен к сайту, который размещен в сети сайтов WordPress Multisite. Исходная ситуация 1. Домен куплен и зарегистрирован на reg.ru 2. Хостинг на hosting.reg.ru 3. Панель ISP Manager. 4. Настроен сайт в режиме сети WordPress Multisite с возможность…

Поиск, обработка и замена текста между тегами на PHP

Сегодня возникла задача обработки уведомлений по шаблону с ключевыми словами. К примеру «Здравствуйте [[name]]!». Где name нужно заменить на имя пользователя в письме. Нашел статью… Сегодня я постараюсь объяснить как найти, обработать и заменить текст между тегами используя PHP функции.…

Чек лист для блога на базе WordPress

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

Понимание и работа с данными в WordPress

Данная статья является переводом первой статьи Rachel McCollin из цикла о данных в WordPress. В ней по полочкам разложена структура данных, типы контента и их взаимосвязь в WordPress. Будет полезна в первую очередь новичкам, но и профессионалы могут найти для…

Как добавить доп. ссылку для плагина в списке плагинов консоли?

Добавление ссылки на страницу настроек плагина, в списке плагинов консоли WordPress существенно повышает удобство. Делается достаточно просто. Берем хук фильтр plugin_action_links. Добавляем код в корневой файл плагина. Вот так: После этого ссылка должна появиться в списке у нашего плагина.

Как отфильтровать посты в WordPress по URL? (query_posts)

Год назад задался вопросом, а можно ли отфильтровать посты в WordPress по URL? Указать параметры запроса и получить результат. Мне сказали что можно делать запросы вида: /tag/a+b+c = отбор постов, которые соответствуют всем 3-м меткам /tag/a,b,c = отбор постов, которые…