Якими мають бути шаблони для BuddyPress 1
Одна і, на мій погляд, єдина неприємна зміна, яку зазнав BuddyPress на своєму шляху до версії 1.1, це задіяння на повну котушку вбудованого WordPress (починаючи з 2.7) механізму батьківських і дочірніх тем.
Спочатку поясню, що таке батьківська тема (далі РТ). Найяскравішими прикладами є шаблони: Carrington, WP Basis, Hybrid, Thematic та багато інших. Ідея РТ полягає в тому, що створюється так званий «движок» шаблону, який містить у собі весь функціонал, всю структуру блоків, всі найвитонченіші знахідки програміста, також у РТ включені всі основні стилі розмітки, адмінка та багато іншого. Але сам по собі при активації цей шаблон виглядає блякло - він не містить оформлення як такого, РТ - це функціональний скелет шаблону. А для «м'яса та шкіри» використовуються дочірні теми (далі ДП), які містять у собі всі малюнки, кольори, «фентифлюшки» оформлення. Навіть якщо зайти по фтп в папку РТ, то там ви побачите купу папок і багато-багато php- і js-файлів, у той час як у ДП - максимум 2 папки (одна з яких images) і буквально кілька php-файлів (ну , а також screenshot.png і style.css).
Що це дає вам, адміністраторам: вам треба буде завантажити 2 шаблони і обидва помістити в папку /wp-content/themes/, обидва активувати на сторінці «Адміністратор → Теми» та активувати лише ДП, тобто ту, в назві якої в адмінці не буде слова Parent :). Ви активуєте та використовуєте тільки дочірній шаблон, батьківський же в цей час може оновлюватися багато разів (оновлюючи РТ – ви тим самим додаєте щось нове до ДП). Вашим шаблоном для експериментів стає саме ДП - ви редагуєте її файли як хочете і можете не боятися, що зіпсуєте ваш шаблон, оскількийого ядро знаходиться в іншій папці. Ви можете скопіювати ДП, перейменувати папку та назву шаблону (в style.css) і почати створювати на основі готового движка шаблону щось абсолютно нове - і вам не треба буде думати про php і програмування в цілому, вашою турботою стає тільки дизайн і стиль сайту.
Тепер повернемося до BuddyPress та нових шаблонів у ньому.
Як я вже писав у попередньому записі, в якому ви можете завантажити правильний український офіційний BuddyPress 1.1, шаблони змінили свою структуру. Тепер немає окремого шаблону для основного сайту та окремо шаблону для сторінок профілю, груп, друзів тощо. Все поєднано в єдину тему - батьківську BuddyPress Social Network Parent Theme, а для красивого дизайну використовується BuddyPress Default.
Я підготував вам мануал, який допоможе вам правильно пристосуватися до нового формату. Так як послідовність ваших кроків на шляху до прогресу залежить від того, який шаблон використовувати з BuddyPress 1.0.x. Для початку:
- Зайдіть по фтп до папки: ваш_сайт/wp-content/plugins/buddypress /bp-themes/.
- Скопіюйте папки /bp-sn-parent/ та /bp-default/ до папки /wp-content/themes/.
А ось тепер розпочнеться рок-н-ролл...
Ви використовували старий стандартний шаблон без змін
Власне, ви щасливчик, тому що вам практично нічого робити не треба. Видаліть папку /wp-content/bp-themes/, все, що потрібно, ви вже скопіювали. Активуйте BuddyPress Default і все.
Ви змінили кольори та деякі стилі у старому стандартному шаблоні
Що ж, на вас чекає великий шматок роботи, яку необхідно зробити. В основному, це буде припасування стилів і дописування багато чого в style.css, адже у вас у папці WordPress теми були стилі лише длясторінок сайту, а не сторінок користувача. Що ж, приступимо:
- Зробіть бекап вашого початкового WordPress шаблону (про всяк випадок).
- Відкрийте папку /wp-content/themes/bp-sn-parent/ і скопіюйте звідти всі папки (самепапки !) і ці файли: «optionsbar.php», «userbar.php» і «plugin -template.php» — до папки з WordPress шаблоном.
- Тепер відкриваєте файл "header.php", в нього необхідно вставити цей код. Вставляєте в div не шапки, а в самому верху div безпосередньо контенту. Фактично вам просто треба експериментальним шляхом з'ясувати. Збережіть файл header.php.
- Переконайтеся, що ви зробили бекап папки /wp-content/bp-themes/. Видаліть папку.
- Тепер ви можете зайти на свій сайт і у вас має вийти наступне: при переході за будь-якою BuddyPress-посиланням (на снаницю профілю, наприклад) у вас відображається шапка і підвал вашого основного шаблону, але в цілому схема блоків BuddyPress буде виглядати непрезентабельно (скоріше всього).
- Ви можете спробувати додати стилі, які відповідають за структуру компонентів та блоків, із стандартного шаблону BuddyPress. Для цього відкрийте файл style.css вашого WordPress шаблону і додайте туди перед будь-якими іншими стилями: @import url(../bp-sn-parent/_inc/css/components.css)
- Тепер у вас повинна відображатися базова структура компонентів на сторінках користувача. Але вам, звичайно ж, доведеться дописувати багато стилів оформлення самостійно для доведення зовнішнього вигляду до пуття.
Якщо ж ви бачите, що вам важко адаптувати шаблон, ви можете повернутися до попереднього варіанту: просто відновіть папку /wp-content/bp-themes/. Це змусить працювати BuddyPress як сумісність. Ви не побачите деякі нові фічі, введені вверсії 1.1, але ви позбавите себе зайвого головного болю.
define( 'BP_ROOT_BLOG', [ID другого блогу, просто число]);
Ви використовували власні WordPress та BuddyPress шаблони
Тобто ви створили свій власний шаблон як для сторінок сайту, так і для сторінок користувача. Вам залишається просто поєднати їх в один шаблон.
Для цього вам знадобиться лише скопіювати всі файли (папки, малюнки, css, php) з шаблону BuddyPress в папку з WordPress темою.
Після цього зробіть бекап папки /wp-content/bp-themes/ та видаліть її. Таким чином, ви задіяєте новий шаблон (він вже буде активований).