18.05.2026: ПоNETдельник!
А кто у нас сходит с ума? Дай угадаю… Мир? Хотя… Он вообще когда-нибудь был здравым? Конечно был. И раз уж я тут оказался, на какое-то время, то стоит чем-нибудь заняться.
Прекрасная штуковина — работа. Она снимает вопросы досуга как минимум на треть суток 5 дней в неделю. Знай себе работай. В перерывах можно, например, перекусить. На выходных — приходить в себя после работы. Красота!
- Если работы не хватает, есть ещё всякие хобби, сериальчики, книги, прогулки, путешествия.
- Если на всё это не хватает денег, можно просто спать или работать ещё больше.
- Если всё это вдруг становится невыносимым (но не физически) есть медитация, антидепрессанты, нейролептики, психологи и психиатрия.
В общем, всегда есть чем себя занять. Если не делом, то общением. Общение с Богом называется молитвой.
Говорят, что мой дед (по отцу) довольно часто напевал одну песню.
Молись в день радужного счастья, Пред трудным подвигом молись!
Молись, когда грозит несчастье, Когда смущаешься, молись!
Молись, когда обиду сносишь, Когда в опасности, молись! Молись, когда за милых просишь, За злого недруга молись!
Молись, когда слабеют силы, Когда возносишься – молись! Молись у дорогой тебе могилы, За жизнь рожденную молись!
Молись в минуту искушенья, Коль победил себя – молись!
Молись в печальное мгновенье, Чтоб Бог простил тебя – молись!..
Где-то слышал, что её написал князь Константин Константинович Романов (1858–1915). Так ли это, не знаю, но эта песня… Прекрасна. Мне такое не создать. Но это не точно.
Сегодня как раз и поработаю. Актуализация автотестов, подработки, стрим, всё-такое. I’m ON.
В перерыве обнаружил, что мой блог работает на PHP 7 и CMS начала на это ругаться.
Хостинг у меня удобный. Чтобы сменить версию PHP, нужно сделать пару кликов мышкой. Плёвое дело, после которого сайт познал PHP 8.3 и, подчёркивая важность этого исторического момента, торжественно рухнул. Ну а я проникся, и бросился всё это дело поднимать.
«Вертать всё в зад» конечно можно, но это не наш метод. Рефакторить код так и так придётся. Так чего откладывать?
Больше всего бесит, когда в коде происходит «долбанная магия». Ты вроде всё сделал как надо, но оно работает непредсказуемо. Ставишь die() после окончания цикла, и вёрстка не едет. Удаляешь код после окончания цикла, и всё расползается. Отчаявшись, начинаешь отлавливать проблему, убирая куски кода по очереди и проверяя как это отразится на сайте. И вот оно!
Больше всего проблем возникло с while(have_posts())
Вот так не работает:
<?php while(have_posts()) : the_post(); ?>
Вот так работает:
<?php while(have_posts()) : ?>
<?php the_post(); ?>
При этом, в соседнем файле «нерабочий вариант» никаких ошибок не вызывает. Вроде бы это связано с количеством пробелов или типа того. Я так и не понял, да и некогда было особо вникать.
Главное, что сайт починил.
Вот так, буквально на ровном месте, можно получить себе ещё работ и забот.
Чем заняться вне работы? Можно конечно отдыхать. Говорят это даже полезно. А можно глянуть чего нового прислал один старый клиент. Он не часто проявляется, но сотрудничаем довольно давно.
А заказчик хочет… Да не может быть! Он хочет доработку на сайте с CMS WordPress, который в данный момент работает на PHP 5!
Кто-то скажет: вот же геммор! Но… Ну да. Геммор и есть.
Если у меня после перехода с 7 на 8 были проблемы с кодом, то тут будет их старшая сестра. Пошёл знакомиться…
Переключить с 5 на 8 было легко. А вот дальше уже не сайт упал, а вся CMS. Но я то знаю что с этим делать, так что сразу же переименовал папку plugins, после чего таки-смог зайти в админку.
Или правильнее АД’минку?
И понеслась. Я обновил ядро, начал добавлять плагины по одному. Добавлял и обновлял.
Правда один из них сразу после копирования намертво убивал CMS. Скачал его новую версию через админку другого сайта, а затем тупо скопировал в нужное место по FTP.
В общем, админка работает, идём в UI. А там всё плохо. Какое-то время потратил на разгребание ошибок. И когда всё вроде бы должно было нормально запуститься, вдруг выяснилось, что новая версия плагина ACF не совместима с логикой работы шаблона сайта. Т.е. часть блоков не подтягивают нужные данные.
В новой версии функция get_field() для repeater полей возвращает строку вместо массива и вся логика вывода данных в блоках на странице перестаёт работать.
Не буду описывать правки шести модулей. Там список получился долгий.
Где-то пришлось переписать логику на прямой доступ к мета-данным через get_post_meta(), где-то have_rows() поменял на цикл for с индексами мета-полей, где-то поправил механизм получения данных repeater поля, а в одном месте просто добавил проверку is_array(), ибо PHP 8 теперь местами strict. До кучи пошаманил над вложенностью циклов WP_Query, разделил запросы к записям indexpage, добавил сбросы данных через wp_reset_postdata(), отловил синтаксические ошибки.
В общем, поправил и это вот всё. И ради чего? Ради того чтобы наконец то написать капчу для форм, ибо клиенту изначально оно и нужно было. Спамеры заели. Но я настоял, что если уж что-то делать, то сперва нужно навести порядок в версиях и прочем.
Сам настоял? Сам и делай. Я и сделал.
Готовую капчу брать не стал.
По хорошему конечно стоило бы взять reCaptca или ЯнедексКапча. Но блин! Уже столько раз обжигался на сторонних сервисах, да и заказчик хотел «что-нибудь простенькое для отправителей». Написал с нуля обычную качу с картинками, что показывают искажённые цифробуквы.
И фавиконку добавил.
А то чего они там как ламеры, без фавиконки?
Задолбааааался ли яяяяя? Ну а ты как думаешь? Кипит ли «разум возмущёёёёёённый! Нет. Не кипит. Он хочет спать. За окнами как раз поднялся ветер и набежали тучи.
Самое время пойти и поваляться с книгой.
А… Нет! Нужно готовиться к стриму. Сегодня снова буду пытаться управлять миром, не привлекая внимания санитаров.
Уже не терпится!
Стрим был замечательным. Я построил первый сегмент «суперпечи», я наделал кучу светильников. Сотни! Я выровнял почти всю деревню, построил ещё два дома… В общем, полный восторг.
После стрима продолжил сносить старые дома, потом рыбачил. В общем увлёкся и опомнился лишь в полпервого ночи.
Спокойно иду спать. I’m OFF.
Напишите комментарий