Можно ли редактировать файлы в папке wp-includes?

Добрый вечер, друзья-товарищи!

Готовил к публикации статью на другую тему, но столкнулся с тем, что описываемые изменения опять затрагивали файл в папке wp-includes. Напомню, что в статье Изменяем порядок рубрик без плагина мы уже редактировали файл из этой папки –  /wp_includes/taxonomy.php. Тогда меня смутил этот момент и, вот, опять я пришел к этому. Поэтому, прежде, чем двигаться дальше – решил окончательно разобраться можно ли вносить изменения в файлы папки wp-includes?

Поиск дал однозначный ответ: Редактировать файлы в папке wp-includes НЕЛЬЗЯ!

В wp-includes расположены файлы ядра  WordPress и при обновлении могут быть обновлены или удалены, в зависимости от изменений, в очередной версии WP.

Конечно, вы можете внести изменения в системные файлы (код же открытый), но тогда у вас есть два варианта:

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

2. Вы фиксируете все изменения, внесенные вами в файлы ядра, и после обновления вновь повторяете эти правки. Тоже не хорошо. Если сразу не избавиться от этой вредной привычки – редактировать системные файлы, то изменений может накопиться очень много, и каждый раз повторять их –  это дополнительное и не очень интересное занятие, которое может привести вас к первому варианту – отказу от обновлений. И потом, даже если вам будет не лень каждый раз вносить ваши изменения в ядро, то после очередного обновления может случиться так, что ваш код просто не впишется в новое ядро, в виду каких-то глобальных изменений.

Вывод – нужно бросать эту вредную привычку раз и навсегда!

Каким образом? Повышать свой уровень знаний WordPress. Система создана таким образом, что всегда можно найти вариант изменений без вмешательства в ядро.

Наиболее легкий вариант решить существующую задачу – найти плагин с нужным функционалом. А раз есть плагин, то тоже самое можно реализовать и без плагина.

Например, как в статье Исполняемый php код в записях WordPress, мне код плагина Inline Php помог реализовать функционал плагина без его установки и активации.

Теперь, раз уж решили отказаться от редактирования файлов ядра, то   давайте вернемся к изменению порядка рубрик без плагина и исправим пункт 2, в котором вносились изменения в файл /wp-includes/taxonomy.php. А то и сам сделал неправильно и других научил плохому. =) (Некоторые читатели уже позаимствовали это решение. Ну, ничего – кто подписался на новые статьи блога или, хотя бы, на комментарии к той статье – узнают о правильном варианте).

Решение я опять подсмотрел в плагине (My Category Order).

Во втором пункте вместо внесения изменений в /wp-includes/taxonomy.php нужно добавить код в файл functions.php:

Функция get_terms_orderby передает поле для условия ORDER BY sql-запроса. А мы добавили дополнительный код к этой функции, в котором фигурирует наше поле для сортировки – sort.

В пунктах 1 и 3 остаётся все без изменений, и таким образом, мы реализовали пользовательскую сортировку категорий без использования плагина. Но, теперь наш код не боится обновлений WordPress. Сортировка будет работать для текущего шаблона, если захотите перенести в другой шаблон – нужно повторять пункты 2 и 3 для новой темы.

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

Надеюсь, вы последуете моему примеру и откажетесь от редактирования файлов ядра WordPress. Действительно – это очень нехорошая практика, особенно, когда делаешь не для себя, а выполняешь чей-то заказ. Ничего не подозревающий человек,  выполнит обновление WordPress и потеряет что-то полезное, за что было заплачено, и может, даже, не догадаться о такой “бяке”. Вернется к старой версии, откажется от обновлений и другим будет передавать свой негативный опыт.

Успехов в изучении WordPress! Берегите себя и клиентов от стрессов! =)

Понравилась статья? Не забудьте поделиться с друзьями и коллегами:

Вы можете пропустить чтение записи и оставить комментарий. Размещение ссылок запрещено.

1 комментарий к записи “Можно ли редактировать файлы в папке wp-includes?”

  1. Сергей

    а я бывала ковырялся там)

Оставить комментарий

Для размещения кода в комментарии используйте теги <pre> </pre>, например:


Подписаться, не комментируя