PHP в WordPress ломается не из-за языка, а из-за хаоса в теме
В теме WordPress PHP чаще всего ломают три вещи: смешение логики и разметки, запросы к базе внутри шаблонов и отсутствие проверок перед выводом. Когда в header.php, single.php и parts начинают жить и цикл, и SQL, и форматирование, отладка превращается в поиск иголки.
Рабочее правило простое:
• вывод — в шаблонах
• подготовка данных — в функциях
• сложные запросы — в отдельном слое, а не в HTML-файле
• перед echo всегда проверяй, что переменная существует и не пустая
Если код зависит от ACF, меню, изображений или таксономий, не верь данным «по умолчанию». Для каждого значения нужен fallback: пустая строка, заглушка, безопасный текст или ветка if. Иначе одна пустая настройка ломает весь блок на странице.
Ещё одна частая ошибка — писать PHP ради PHP. Если блок можно собрать через get_template_part, а повторяющуюся логику вынести в helper-функцию, тема становится короче, понятнее и проще в поддержке 🛠
Держите в теме правило: чем ближе код к разметке, тем меньше в нём логики; чем сложнее логика, тем дальше она должна быть от шаблона.
Разработка тем WordPress
@wp_dev_deep_dive_ww
PHP в WordPress ломается не из-за языка, а из-за хаоса в теме
Этот пост опубликован в Telegram-канале Разработка тем WordPress. Подписаться можно по ссылке: @wp_dev_deep_dive_ww.