Wsparcie » Motywy » inny sidebar na kazdej stronie

  • Rozwiązano purzyk

    (@purzyk)


    Witam.
    Popelnilem w swoim zyciu dwie strony na wordpresie, w zwiazku z tym jestem raczej mocno poczatkujacy w temacie.
    Ale do sedna.

    chce stworzyc strone na wordpress dla mojego stowarzyszenia w ktorym dzialam

    narazie zrobilem prosty szablon w html, zeby bylo wiadomo o co chodzi

    http://ase.art.pl/www/

    jak widac na zalaczonej stronie, glowna tresc strony zostala podzielona na dwie kolumny – lewa wyswietlajaca zdjecia + filmy video
    prawa w ktorej bedzie opis danego projektu.

    Problem w tym ze tych projektow bedzie calkiem sporo – powiedzmy 20.

    Jak zrobic, zeby dla kazdego projektu wyswietlal sie inny sidebar?
    Oczywiscie moge zrobic 20 templatow i w kazdym bedzie inny get_sidebar – ale moze mozna to zrobic w jakis inny, lepszy sposob?

    Problem jest tez w tym, ze potrafie zrobic te sidebary „na sztywno” zeby wyswietlaly zdjecia + filmy – wiadomo zwykly html

    ale jak zrobic to, zeby uzytkownik strony mogl sam zmieniac tresc sidebarow na 20 podstronach? a moze mozna to zrobic bez uzycia sidebar tylko z poziomu pages?

    Please help 🙂

Viewing 4 replies - 1 through 4 (of 4 total)
  • Moderator amistad18

    (@amistad18)

    Możesz w pliku sidebar.php – albo jakimś innym, zrobić sobie 20 if’ów z funkcją is_page(), i teoretycznie będzie łatwiej. Można też stworzyć osobny sidebar z sekcją widgetów dla każdej strony – aby poprzez widgety ktoś tam mógł sobie dodawać treść. Można też w ogóle tego nie robić w oparciu o sidebara, tylko o custom fields – ale to np. jak by tam miały być same obrazki.

    Bardzo ładna (wizualnie/graficznie) strona.

    Ja mam jeszcze inny pomysł.

    Wg mnie sidebar jest jeden, zawsze identyczny: kolumna o ustalonej szerokości, jakimś tam tle, w niej nagłówek, a potem lista zdjęć.

    Teraz chodzi o to, żeby gdzieś w WP trzymać informację kojarzącą dany sidebar (czyli zbór zdjęć) z treścią danej strony. Czyli znaleźć schemat, którym można ogólnie opisać każdą taką (z tych 20-tu) stron.

    Gdyby w sidebarze były same zdjęcia, to bym spróbowała podejść do tego za pomocą stron (WP pages) i pluginu NextGen Gallery:

    Dla każdej strony tworzymy osobna galerię w NGG, przypisujemy ją do strony, w katalogu plugin/nextgen-gallery/view tworzymy własną templatkę do wyświetlania galerii (w formie sidebaru, czyli szary pasek w tle, tytuł (można wykorzystać pole Opis galerii jeśli ten tytuł jest różny dla rożnych stron), potem zdjęcia układane w pionie, jedno pod drugim)

    Strony tworzymy na zasadzie:
    Tytuł strony: Angelus silesius ensemble
    Treść: najpiewr pojawi się shortcode ([ nggallery id=x ]) który zamieni się w sidebar i trafi w miejsce lewej kolumny (w templatce wyświetlającej galerię trzeba go będzie oblec całość jakiegoś div’a i CSS-em „zepchnąć” go do lewej strony), a potem cała reszta tekstu, czyli wszystko, począwszy od „ANGELUS SILESIUS ENSEMBLE to grupa artystyczna z Wrocławia…”, która uformuje prawą kolumnę.

    Trzeba by było jeszcze zakombinować coś z fantem, że ze zdjęciami są wymieszane filmiki, ale generalnie chodziło mi o pokazanie idei.

    Nie jestem pewna, jak się ma ten drugi poziom menu (Kierownik artystyczny, Orkiestra, …) do całości, ale wydaje mi się, że można by do przedstawienie tego wykorzystać również hierarchię stron (podstrony).

    To dorzucę coś od siebie, jeżeli już tak bardzo się uparłeś na te sidebar-y to może takie rozwiązanie Ci podpasuje. Uprzedzam jest to szybka solucja:

    1. Rejestrujesz swoje sidebary

    if (function_exists('register_sidebar')) {
    		register_sidebar(array(

    2. Dodajesz do stron projektów custom filed
    'custom_sidebar’ 'nazwa_sidebara’

    3. W pliku sidebar.php

    <?php
    global $wp_query;
    $custom_sidebar = get_post_meta($wp_query->post->ID, 'custom_sidebar', true);
    if (!$custom_sidebar && $custom_sidebar == '') : ?>
                <?php if (!function_exists('dynamic_sidebar') || !dynamic_sidebar('Default')) ?>
                <?php else : ?>
                <?php if (!function_exists('dynamic_sidebar') || !dynamic_sidebar($custom_sidebar)) ?>
                <?php endif; ?>

    Gdzie 'Deafault’ jest twoim podstawowym sidebar-em.

    Thread Starter purzyk

    (@purzyk)

    Bardzo wam wszystkim dziekuje za rady i sugestie
    nie wiem czy nie zrobie tego po staropolsku czyli w takim stylu
    http://ase.art.pl/www4/

    jednak bedzie i latwiej przy zarzadzaniu trescia i przejrzyscie mysle

    tak czy siak bardzo wam dzieki!

Viewing 4 replies - 1 through 4 (of 4 total)
  • Temat ‘inny sidebar na kazdej stronie’ jest zamknięty na nowe odpowiedzi.