WordPress: тореадори і бики

Власник сайту змінює свій сайт, написаний на WordPress, як хоче. Але після “оновлення” WordPress‘у багато характеристик і особливостей сайту повертається до старих значень.
Десь власник сайту позмінював розміри фонтів, і самі фонти, десь ще щось змінив в дизайні.
Лише не оновлюй двигунець WordPress ! Оновив ? Тепер знову змінюй сайт, щоб він виглядав так, як хоче власник сайту, а не так, як хоче WordPress.

Трохи нагадує іспанську корриду. Досить тореадору заколоти одного бика, як на арену вибіжить наступний, такий самий бик.

Спочатку я терпів. Я уважно записував, які саме зміни я зробив на сайті, і після кожного “оновлення” я по своїх записах терпеливо повертав сайт до того вигляду, як хочу я, а не якийсь WordPress разом з його убогою  “темою”. Але терпіння моє закінчилось, коли цих змін після кожного пустопорожнього “оновлення” потрібно було робити занадто багато, щоб сайт вернувся до вигляду перед оновленням.
Довелось цей процес автоматизувати.

Отже, у мене є довжелезний список, в яких файлах мого сайту дещо потрібно змінити, там само написано, що саме і як треба змінити. Ось наприклад, кусочок тексту з одного з файлів від WordPress:

#bbpress-forums div.bbp-the-content-wrapper textarea.bbp-the-content {
width: 100%;
margin: 0;
font-size: 13px;
}
Здавалося б, нічого особливого, але я хочу font-size: 16px, бо мені так хочеться.
А також багато-багато незначних змін в різних файлах. Невже я буду терпіти знущання WordPress, який своїми “оновленнями” повертає тексти “як було” ?
Ні, терпів я недовго.

Просто придумав собі простий формат коректуючого файла, щоб по одному цьому файлу програма (не я, а програма) в кожну “нову версію” WordPress вставляла мої зміни.
Ось такий вийшов формат:

MarkerFileToChange а далі назва файла і шлях до цього файла. MarkerFileToChange – це такий маркер, який вказує, що зараз буде назва файла. Дубль всіх файлів з сайту через FTP-доступ чудово скопійований в якусь папку на мій комп’ютер, а тому повністю співпадають і назви файлів, і розміщення файлів по папках.
Ну, наприклад, такий текстовий рядок в тестовому коректуючому файлі:
MarkerFileToChange wp-admin/includes/bookmark.php
Цим рядком я вказую, що хочу щось змінити в файлі bookmark.php, шлях до файла
wp-admin/includes//bookmark.php.
Далі маркер початку зразка, який треба замінити:
MarkerChangeSampleOld
Далі я копіюю з потрібного файла мого сайту кусочок тексту, який я хочу навіщось змінити. Наприклад, щось таке:
function add_link() {
return edit_link();
}

І цей зразок я хочу замінити на інший, наприклад, на такий:
function add_linkzopa() {
return edit_link();
}
Перед цим новим зразком я ставлю маркер, який говорить про початок нового зназка. Що вийшло в сумі ? Ось такий текст:
MarkerFileToChange wp-admin/includes/bookmark.php (маркер назви файла)
MarkerChangeSampleOld (маркер початку зразка, який треба змінити)
function add_link() {  (скопіював зразок)
return edit_link();
}
MarkerChangeSampleNew (маркер нового зразка, який буде замість старого)
function add_linkzopa() {  (скопіював новий варіант зразка)
return edit_link();
}
Тобто я вказав, який файл буду змінювати, і де саме він лежить, вказав зразок, який я хочу замінити, і вказав зразок, НА ЯКИЙ я хочу замінити.

Я не хочу міняти лише один зразок, я хочу ще в одному файлі щось поміняти. Так що дописую ще кусочок тексту:
MarkerFileToChange wp-admin/css/colors/blue/colors-rtl.min.css   (тепер міняти в цьому файлі)
MarkerChangeSampleOld
div.dashboard-widget-submit  input:hover{color:#0096dd}input[type=checkbox]:checked:before (ось цей текст)
MarkerChangeSampleNew
div.dashboard-widget-submit lalalalalainput:hover{color:#0096dd}input[type=checkbox]:checked:before  (замінити на цей текст)

Я можу таким способом описати багато потрібних мені різних змін в різних файлах від WordPress. Залишилось придумати, хто зробить всі ці зміни. Це зробить моя простенька програма.
Ось і програма. Хто натиснув, той завантажив.
Програму кладу в ту саму папку з копією всіх фалів мого сайту, я їх взяв через FTP. Програма бажає файл з назвою MY-CHANGE.TXT, це звичайний текстовий файл в такому самому кодуванні, в якому всі мої файли сайту. Текстовий файл повинен мати кодування  UFT-8.
Подивимось на текст-зразок в цьому коректуючому файлі аж з двома замінами:
MarkerFileToChange wp-admin/includes/bookmark.php
тут якийсь зразок, він може бути із кількох рядків,
цей зразок в файлі буде замінений

MarkerChangeSampleNew
Ось на цей зразок буде замінено,
цей зразок також може бути із кількох рядків

MarkerFileToChange wp-admin/css/colors/blue/colors-rtl.min.css
MarkerChangeSampleOld
а в цьому файлі я міняю ось таких зразок
MarkerChangeSampleNew
на якийсь інакший зразок
MarkerFileTheEnd

Кожен блок “що на що міняти” має маркер імені файла і шляху до цього файла, маркер старого зразка, старий зразок, маркер нового зразка, новий зразок. Може бути не одна пара “старий зразок – новий зразок”, а таких пар в одному блоці може бути багато.
Таких блоків в тексті – скільки завгодно.
Останній рядок показує, що більше змін не треба.
Весь діалог в програмі я зробив англійський (який там діалог ! Просто програма підказує, ви немає десь синтаксичних помилок в файлі для такого “пакетного” редагування файлів від WordPress).
Програма максимально проста. Якщо треба в якомусь файлі зробити десять різних замін в десяти різних місцях, з різними зразками для заміни, я просто десять раз описую заміни цього файлу.
Один маркер MarkerFileToChange значить,
далі один маркер старого зразка MarkerChangeSampleOld,
далі зразок,
далі один маркер нового зразка MarkerChangeSampleNew
і новий зразок.
Зразок може складатись із багатьох рядків, це страховка від того, що програма знайде і замінить там, де не треба, якщо зразок занадто короткий.
Ми з вами розуміємо, що якщо зразок занадто короткий, то програма може знайти десь в іншому місці аналогічний зразок,  а в іншому місці, можливо, ми не хочемо міняти.
В кінці коректуючого файла – маркер MarkerFileTheEnd. Значить, зміни закінчились.Далі можна в тексті писати який-небудь допоміжний коментар, програма не стане його читати.

Тепер у вас серед великої кількості файлів для WordPress є кілька змінених. Щоб ви не заплутались, які файли змінені, а які – ні, програма створила піддиректорію FilesNewVers і туди дописала всі змінені файли.

Зрозуміло, що я для підстраховки зберігаю невідредагований варіант файлів, на випадок, якщо я щось наплутаю в коректуючому файлі MY-CHANGE.TXT.
Я вже не згинаюсь під безтолковими і частими “оновленнями” WordPress.
Я всі необхідні зміни після “оновлення” роблю своєю простою програмою, це займає не пів-дня, і не пару днів, а пару секунд.
Хто хоче, може і сам з допомогою моєї програми попробувати.

Є якісь запитання, поради, може щось незрозуміло – для вас є коментарі.

Всім бажаючим продаємо наш інформаційний архів

Ви можете замовити ВЕСЬ наш файловий архів, його об'єм - більше 12 Гігабайт. Отримати можна в вигляді бандеролі з чотирма DVD-дисками, на яких ВСІ наші схеми, мануали, вся додаткова інформація, або завантажити вказаний архів через Інтернет. При завантаженні через Інтернет - вартість замовлення 120 грн, при замовленні на DVD-дисках - вартість 180 грн при замовленні доставки звичайною Укрпоштою, або 200 грн при замовленні доставки Новою поштою. Оплата - після отримання замовлення.
Ось СПИСОК НАШИХ ФАЙЛІВ.
Для замовлення архіва треба перейти НА СТОРІНКУ ЗАМОВЛЕННЯ.
Схема мануал телевизора шасси, схему скачать бесплатно, ищу схему модулей, ищу шасси телевизора, схемы телевизоров, мануалы

Залишити відповідь (Leave a Reply)