"WordPress, ты сволочь!" - кричал я, задыхаясь от бешенства!

Всем привет в сегодняшней статье я расскажу о своем опыте взаимодействия с WordPress и о всех тех проблемах и методах их решения, что возникли в процессе выполнения заказа по доработке сайта компании Биопатриот.

"WordPress, ты сволочь!" - кричал я, задыхаясь от бешенства!

Задачи и тз по доработке сайта.

Стоит начать с описания работ. Мы составили договор на оказание услуг. Прописали следующие пункты внесения изменений в сайт:

1. Добавить страницу "Новости", вывести новости с этого раздела на главную где будут отображаться 4 самые новые. Тобишь дополнительный пункт - это фильтрация от самых новых к более поздним новостям.

2. Добавить страницу "Статьи" где будут отображаться актуальные статьи о компании Биопатриот.

3. Создать слайдер и разместить его на главной.

4. Разместить форму обратной связи, привязать к ней оплату и настроить отправку данных в Битрикс 24.

Итак более подробно о процессе реализации.

Вёрстка страница новости

"WordPress, ты сволочь!" - кричал я, задыхаясь от бешенства!

Вообщем то создать новую страницу на WordPress не является чем то сложным, но есть один нюанс о котором я узнал лишь в процессе работы. Дело в том, что те самые новости нужно добавлять через раздел "Записи".

Прежде всего создается рубрика в моём случае это была одноименная рубрика Новости.
Прежде всего создается рубрика в моём случае это была одноименная рубрика Новости.

Добавив все записи и разместив их в необходимый раздел. Следующее что нужно было это посмотреть как они выглядят в опубликованном виде. Какого же было моё удивление, когда в опубликованном виде не было абсолютно ничего... Кроме навбара и футера...

"WordPress, ты сволочь!" - кричал я, задыхаясь от бешенства!

Проблема оказалась вот в чём. Эта тема была создана с нуля и изначально не предполагала наличие статей. После некоторого времени блуждания по гуглу в поисках решения, я таки добрался до сути. Проблема оказалось довольно тривиальной, у страниц статей отсутствовала вёрстка. Иначе говоря нужен был файл single.php. Этот файл как раз таки и отвечает за вёрстку страниц статей.

Следующим пунктом было сделать фильтрацию статей от более новых к более поздним.

Для этого мне понадобился плагин Content Views Pro. Данный плагин имеет довольно не сложный и интуитивно понятный интерфейс. И как раз мог реализовать обе необходимые для меня задачи.

После всех необходимых настроек достаточно скопировать шорт код и вставить в необходимый раздел сайта. 
После всех необходимых настроек достаточно скопировать шорт код и вставить в необходимый раздел сайта. 

Но вот какой момент. Клиент попросил сделать так чтобы статьи отображались на главной странице с боку от основного контента сайта.

Здесь пригодились мои знания HTML, CSS. Всегда и всем говорю, что знания кода нужны всегда, даже на конструкторах сайтов и убеждаюсь в этом с каждым новым заказом.

В странице index-page.php добавил класс .wrapper которому добавил свойство display:flex; чтобы разместить основной контент и блок с шорт кодом для размещения новостей параллельно друг друга. Конечно такие изменения затронули основную вёрстку сайта и пришлось повозится чтобы настроить нормальное отображение сайта.

Спасибо тому кто придумал Dev Tools (инструмент разработчика)! Не знаю что бы я без него делал...

"WordPress, ты сволочь!" - кричал я, задыхаясь от бешенства!

Вёрстка страницы "Статьи"

"WordPress, ты сволочь!" - кричал я, задыхаясь от бешенства!

Здесь особо нечего говорить, принцип такой же как и со страницей новостей, дублируем или создаем новый вид в плагине Content Views Pro делаем необходимые настройки вставляем шорт кот.

"WordPress, ты сволочь!" - кричал я, задыхаясь от бешенства!

Единственное что я забыл упомянуть, что для каждой такой страницы (рубрики) также нужно делать вёрстку в отдельном php файле.

Слайдер

"WordPress, ты сволочь!" - кричал я, задыхаясь от бешенства!

Слайдер. Насчёт него у меня было несколько вариантов решений как реализовать его. Посмотрел не один ролик на ютубе, в основном все варианты сводились к использованию плагинов. Но я пошёл другим путём. Сделал слайдер с помощью кода. Где то около полугода назад в каком то ролике по вёрстке услышал про такую вещь как готовые шаблоны и различные решения с помощью кода которые можно найти на codepen.io. Чем я и воспользовался.

"WordPress, ты сволочь!" - кричал я, задыхаясь от бешенства!

Я нашёл подходящий под мои реалии слайдер, и всё что мне оставалось это внести некоторые небольшие изменения в HTML и CSS код.

Вёрстка формы обратной связи

"WordPress, ты сволочь!" - кричал я, задыхаясь от бешенства!

Для формы использовался плагин Contact Form 7. Похожа форма была уже реализована на другой странице сайта. Однако мне нужно несколько видоизменить её. А так же сделать так, чтобы данные с формы отправлялись в CRM Битрикс 24, а при клике на кнопку отправить перенаправляло на страницу оплаты записи на озоновые ванны.

И снова без кода никуда...

Так как форма создана в плагине Contact Form 7, не представлялось возможным прикрутить к кнопке ссылку на оплату, не изменив полностью вёрстку, из за чего стало бы невозможным отправлять данные с полей формы. Поэтому на этот раз пришлось прибегнуть к JavaScript, и с помощью скрипта добавить ссылку на оплату к кнопке формы.

"WordPress, ты сволочь!" - кричал я, задыхаясь от бешенства!

Самым сложным оказалось сделать отправку данных в CRM Битрикс 24 так как это считается интеграцией и относится к области Backend разработки, а я всё таки Frontend. Но как и у любого другого фрилансера, когда крутишься в этой сфере не один год, обзаводишься кругом знакомств, разных специалистов. На моё счастье у меня оказался очень хороший знакомый в области Backend разработки, Артём с более чем 7 летним стажем в этой области разработки. Который и помог мне понять каким образом решить эту задачу и написать php скрипт для отправки данных с формы в CRM Битрикс 24.

"WordPress, ты сволочь!" - кричал я, задыхаясь от бешенства!

Ну и на сладенькое как говорится)

Спросите почему же у статьи такое кричащее название?

Дело в том что я крайне негативно отношусь к WordPress и не очень люблю эту CMS, и в этот раз случился один неприятный момент, который чуть не довёл меня до инфаркта...

В процессе реализации текущих задач, я установил плагин Faster Cache, чтобы в самом WordPress чистить кеш, и не лазить постоянно в историю браузера, и чистить кеш там.

Каково было моё крайнее удивление и ужас, когда после нажатия на кнопку очистить весь кеш и перезагрузки страницы... Я увидел какую то стандартную страничку и что ВСЯ ВЁРСТКА СЛЕТЕЛА к чертям собачьим. Простите за мой французский, но этот случай до сих пор вызывает во мне бурные эмоции...

Немного отойдя от шока я начал всё проверять. К моему облегчению, все файлы остались на месте. Однако непонятно почему, но из за очистки кеша слетела тема. Как временное решение, я скопировал все файлы и перенес их в папку со стандартной темой Twenty Twenty Four.

К моему облегчению, сайт заработал снова. Но позже после общения с другим программистом этой компании выяснилось, что слетел файл style.css из за чего тема перестала отображаться в WordPress. После восстановления этого файла всё вернулось на круги своя и мы вернули сайт на ту тему которая была изначально.

В конце хочу сказать. Перед тем как делать изменения на сайте всегда держите его резервную копию, не полагайтесь на плагины резервного копирования, в моём случае это не помогло, так как плагин не сработал и выдал ошибку.

Путь разработчика долог и тернист, но как говорится - Не ошибается лишь тот, кто ничего не делает! Не бойтесь ошибаться — бойтесь повторять ошибки!

Фридрих Шиллер.

Благодарю вас за прочтение этой статьи. Буду рад любым вашим реакциям и комментариям)

По вопросам сотрудничества, пишите мне в телеграмм:

Ознакомиться с моим портфолио вы можете на моём сайте:

88
33
8 комментариев

Да не, WordPress отличная вещь, ну как минимум из-за того что больше половины сайтов на нём сделаны, и сложного там действительно особо нет. Просто есть такие индивидуумы которые начитаются не пойми чего и просят сайты вроде и на вп, но без плагинов на чистом коде, и шаблон также, а потом начинают удивляться почему часть функций стандартных не работает, но они везде присутствуют. Вот такой видимо и попался. Только для правок и редактирования они не возвращаются к первоначальному создателю их сайта, а ищут на стороне.

1
Ответить

Практически так всё и случилось, но не совсем так) Сайт и так выглядит как сборная солянка, так новые разделы которые я делал, в частности вывод статей сбоку на главной было просто их идеями которые они увидели где то на других сайтах и это всё никак не согласовывалось с дизайнером... И да без кода тут не обошлось...

1
Ответить

Вы считаете то что "больше половины сайтов на нём сделаны" это признак отличного продукта? А вдруг причина в его примитивности? Освоить ВП может любая домохозяйка

Ответить

Ну тут же дело то не в бобине. Задачи - тривиальные, реализуются легко.

Очень смешно видеть такие слова как "я фронтенд", а не "бэкенд".... Ты либо умеешь делать сайты, либо не умеешь, третьего варианта просто нет.

1
Ответить

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

Ответить

Просто интересно, а зачем вы взяли заказ у клиента если не разбираетесь в продукте?

Ответить

Я разбираюсь в ворд пресс, но невозможно знать всего. С php кодом не часто приходилось работать. Будь на месте этой темы не "самособранная", а даже та же самая Twenty Twenty Four от WordPress проблем было бы в разы меньше...

Ответить