Кожній сторінці – свій власний сайдбар/хедер/дизайн!

Не можу сказати, що я розбираюся в php, але принцип його функціонування мені зрозумілі. Принаймні в елементарних речах. Але за допомогою цих самих елементарних речей можна творити справжні дива!

Ви коли-небудь хотіли, аби ваш сайдбар виглядав неодинаково на всіх сторінках (наприклад, я не бачу сенсу показувати блок “Останні повідомлення” на головній сторінці, де й так видно останні публікації у всій красі – а от на сторінці окремого посту цей блок буде дуже доречним і дозволить вам зацікавити відвідувача і примусить побігати по вашому блогові. Але це тіки приклад – насправді використовувати прийом різних сайдбарів можна у безкінечній кількості варінтів – так, як вам буде зручно… ), чи, може, ви би хотіли щоб кожна категорія ваших записів мала тематичну картинку в шапці, а то і повністю інший дизайн? Бувало таке? Тоді читайте далі!

Цей спосіб придумав не я. Це звичана річ в php, але й в даному випадку я підгледів цю фішку у Макса в одній з його робіт.

А насправді все дуже просто:

1. Беремо файлик вашої теми дизайну sidebar.php (це в більшості випадків, але в деяких випадках він може називатися по-іншому. Але якщо ви не можете знайти, де заховано ваш сайдбар, то далі читати немає сенсу 🙁 )і копіюємо його вміст до блокнота. А на місце, де був код сайдбар, вставляємо:

 

2. Зберігаємо цей файл.
3. Код нашого колишкього сайбару зберігаємо як файл sidebar-default.php і заливаємо до папки нашої теми дизайну.
4. А тепер думаємо, де і який сайдбар ми хочемо показувати. Наприклад, якщо ви хочете на сторінці “Про мене” показувати інший сайдбар, ныж звичайно, то ви маэте створити копію sidebar-default.php і, назвавши її, скажімо, sidebar-about.php, також залити до папки теми. Залишається тепер лише в рядку elseif ( is_page(‘about’) ) require(‘sidebar-default.php’); замінити назву потрібного нам сайдбару (sidebar-about.php). От і все! Якщо ви внесете зміни в sidebar-about.php, то, зайшовши на сторінку “Про мене”, ви їх побачите!

Так само можна зробити і для інших сторінкок, а також категорій тощо. Можна також зробити підключення змінних сайдбарів для типів сторінкок, тобто для сторінок – свій, для рубрик – свій, при цьому налаштування для конкретних рубрик чи сторінок зберігаються. (В наведеному коді видно, що для всіх рубрик активується спільний сайдбар, проте для рубрики новин підключається власний сайдбар).

І головне! Я думаю, не довго потрібно думати, щоб здогадатися, що цю є схему можна використовувати і для інших, практично будь-яких елементів вашого сайту – будь-то зображення в хедері чи сам хедер, в якому підключатимуться різні стилі оформлення (CSS), тож, фактично, за допомогою наведено прикладу можна кожну сторінку вашого сайту зробити унікальною! Але не перестарайтеся! 🙂

  • Мабуть, не повіриш, але ніколи не розумів нащо одному сайту на всіх сторінках різний дизайн, сайдбар і т.і. і тому ніколи не хотів, проте повправлятися в пхп нікому не завадить 😀

  • прикольна штука 🙂 трохи поекспериментую, може і щось вийде з того 🙂

  • [R.I.P], ти неуважно читав мій пост! Я зовсім не казав, що потрібно робити окремий сайдбар для кожної сторінки! Я наводив приклад, де це може бути використано. Та й не в сайдбарах справа! Та такий-собі міні-фреймворк, який можна досить вдало застосовувати при виконанні сотень різнопланових завдань!

  • Цікаві люди мене читають, однак…
    1/ Я не Макс
    2/ Тут не йдеться про тему, а про її вдосконалення
    3/ Якщо цікаво, то нащо ж писати, що це не потрібно?
    І взагалі, з такими нікнеймами це більше схоже не на коментар, а на просунутий спам, який робиться вручну 🙂

  • >якщо можна скачати готову тему

    буду вдячна за лынк на готову тему ыз нормальним дизайном і динамічним сайдбаром

    p.s. яка б та тема не було все одно в ній захочеться щось поправити суто на свій смак, для цього і ця стаття.

  • Та Яно, шо ти пояснюєш, людина просто розставляє лінки на свій сайт про анальний секс 🙂 Тому і коментар такий брєдовий 🙂 Людина просто не знає, шо в коментарях вордпресу всі лінки мають rel=”nofollow”, який оминають пошуківки 🙂

  • та я догадуюся шо то спам 🙂 але все ж таки 🙂
    ти куди з аськи пропав?

  • Гороскоп

    Для чого взагалі це все потрібно, якщо можна скачати готову тему встановити і немати ніякого головного болю від цього.
    За статтю Максе тобі великий плюс. Цікава стаття – дякую.

  • Пора бы знать, что rel=”nofollow” не действует для яндекса 🙂

  • буду сьогодні за твоїм “рецептом” мучати один блог, сподіваюся щось толкове з того вийде 🙂

  • Можна робити все простіше… вірніше, принцип той самий, але не треба робити купу додаткових файлів.

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

    Типу, якщо сторінка така-то, то не викликаємо сайдбар такий-то, а тут же вставляємо його код, а якщо інша, то не викликаємо дефолтний сайдбар, а застосовуємо код такий-от…

    Сподіваюсь, ти зрозуміла 🙂

    Ну, в тебе ж з англійською все ок, почитаєш на офсайті про conditional tags 😉

  • смутно 🙂 але думаю розберуся, в будь-якому випадку дякую 🙂