WordPress


cms - это попытка сэкономить, так что там в целом низкий уровень, и это больно. Процедурщина сама по себе не плоха в маленьких количествах, точечно, но без контроля превращается в ад зависимостей и глобальных состояний. ООП там тоже есть, но скорее "типа ООП" - когда ад зависимостей и глобальных состояний оборачивается в классы. Это вообще офигеть, глаза вытекают, без отладчика лучше даже не подходить - не распутаешь.

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

Проблема в том, что конкретно на cms реально опытных 2,5 человека от всей толпы, а это страдания: сам за всех нормально не сделаешь, значит по факту работаешь с мешаниной вместо кода. Так что в этом плане фреймворки конечно получше - там в целом уровень лучше. Но не факт - писать говнокод никто не запрещает на любом уровне, просто меньше откровенных новичков.

Мне кажется тут еще сильно влияет порог входа: чем проще начать, тем хуже ситуация наблюдается. Например питон и php позволяют творить дичь, и люди её творят. Более строгие языки за дичь сразу по рукам бьют - там все более однообразно.

 

Полезные плагины

PODS - создание кастомных типов
ADMIN COLUMNS
dbDelta
payment-onlyne (bitza)
simple-table (bitza)
PublishPress Capabilities
PublishPress Permissions


#381 | 2023-01-20 12:58:53 Проверено

Иерархия и порядок подключения файлов страниц #

Кстати, про иерархию я уже записывал видеоурок.

Список ниже показывает приоритет задействования PHP-шаблонов файлов темы для отображения типа записей «Страницы».

  1. custom-template.php (если файл шаблона существует и выставлен для данной страницы в её настройках)
  2. page-{ярлык страницы}.php (если существует)
  3. page-{ID страницы}.php (если существует)
  4. page.php (наиболее распространённое решение практически во всех темах)
  5. singular.php (если page.php не существует)
  6. index.php (используется, если все вышеперечисленные файлы отсутствуют в папке с темой)
Здесь можно оставить комментарий!