Разработка тем WordPress

PHP в WordPress ломается не там, где вы ищете: 5 типовых ошибок в теме

PHP в WordPress ломается не там, где вы ищете: 5 типовых ошибок в теме

Чаще всего проблемы в теме появляются не из-за «сложного PHP», а из-за мелочей: лишний вывод, неверные условия и работа с данными без проверки.

— Не вызывайте get_post() и the_post() там, где хватает уже подготовленного $post.
— Перед выводом всегда экранируйте: esc_html(), esc_attr(), wp_kses_post().
— Не полагайтесь на существование метаполя: проверяйте пустые значения и тип.
— Для пользовательского ввода не используйте его напрямую в SQL, атрибутах и классах.
— Логику шаблона не смешивайте с тяжелыми вычислениями: выносите в функции и хуки ⚙️

Отдельный источник багов — условные теги. is_front_page(), is_page(), is_single() работают по контексту запроса, поэтому в цикле и вне его могут давать разный результат. Если поведение «плавает», сначала проверьте, где именно вызывается код.

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

Держите PHP в теме коротким, предсказуемым и проверяемым: тогда большинство ошибок исчезает еще до запуска сайта.
Этот пост опубликован в Telegram-канале Разработка тем WordPress. Подписаться можно по ссылке: @wp_dev_deep_dive_ww.
tech

Свежие посты в категории «Tech Infrastructure»

Все каналы категории →

start

Готовы запустить рекламу через сеть public.tg?

Новый оффер, продукт, GEO, кейс, событие или партнёрский запуск — соберём маршрут под задачу и отдадим медиаплан.

Telegram для медиаплана: @AFFtop_connect. Быстрый тест: $20 за канал, $1000 за пакет по сети.