2. May
2009
Trackback URL

En Wordpress-tutorial. Vi ser nå på hvordan vi kan tilpasse vårt tema til å ha flere dynamiske sidebars.

En WordPress widget er et lite programtillegg som kjører i sidebaren på en WordPress-blogg. De kan lastes ned og installeres via dashboard og de fleste WordPress-temaer er satt opp slik at man kan legge widgets til i sidebaren sin. Det som er bra med widgets er at brukere kan gjøre store endringer i dynamikken til bloggen sin uten å endre php-koden.

Å gjøre en sidebar “widget ready” er en ting, men hva om man har flere sidebars i sitt tema? Mange liker å ha forskjellige sidebarer når man for eksempel ser en enkeltpost eller en “page”. Dette er ikke helt intutivt.

For å gjøre en sidebar widget-klar er det et par steg man må igjennom:

1. I mappen til temaet som brukes ligger det en fil som heter functions.php (hvis ikke den finnes, opprett den som en blank php-fil), åpne denne i et tekstredigeringsprogram.

2. Legg inn følgende kode:

<?php
if ( function_exists('register_sidebar') )
	register_sidebar();
?>

3. Åpne filen sidebar.php som ligger i tema-mappen, og legg in følgende kode der du vil at widgets skal plasseres:

<?php 
if ( !function_exists('dynamic_sidebar')
	|| !dynamic_sidebar() ) : ?>	
<?php endif; ?>

Dette er alt. Etter at filene er lastet opp til serveren er nå sidebaren klar til å motta widgets via dashboardet:

Standard navn er Sidebar 1

Standard navn er Sidebar 1

Nå skal vi utvide vårt tema til å ha tre forskjellige dynamiske sidebars. En hoved-sidebar til bruk på forsiden og de fleste “pages”, en til å vise på enkeltposter og en som kun skal brukes på about-siden.

1. Åpne funcions.php igjen, slett alt innhold og legg inn følgende:

if ( function_exists('register_sidebar') )
    register_sidebar(array('name'=>'sidebar_main',
        'before_widget' => '',
        'after_widget' => '',
        'before_title' => '<h2>',
        'after_title' => '</h2>',
    ));
	
if ( function_exists('register_sidebar') )
    register_sidebar(array('name'=>'sidebar_post',
        'before_widget' => '',
        'after_widget' => '',
        'before_title' => '<h2>',
        'after_title' => '</h2>',
    ));
	
if ( function_exists('register_sidebar') )
    register_sidebar(array('name'=>'sidebar_about',
        'before_widget' => '',
        'after_widget' => '',
        'before_title' => '<h2>',
        'after_title' => '</h2>',
    ));

Det som her er interessant er navnet man gir de forskjellige sidebars: name:sidebar_main og at man kan legge inn hvilke HTML-tags, for eksempel, man vil ha før og etter titlene til widgets: ‘before_title’ => ‘<h2>’ og ‘after_title’ => ‘</h2>’. Navnene kan være hva som helst, og titlene bør være konform til temaets stilark. Jeg har for eksempel tilpasset <h2>-taggen til å være heading i sidebaren.

3. Åpne sidebar.php (hoved-sidebaren) og legg inn denne koden der hvor du vil ha widgets:

<?php if ( !function_exists('dynamic_sidebar')
	|| !dynamic_sidebar('sidebar_main') ) : ?>
<?php endif; ?>

Det som er forskjellen nå er at man spesifiserer navnet på den dynamiske sidebaren. Dette må være det samme som spesifisert i functions.php.

4. Åpne dine to andre sidebar-filer og legg inn samme kodesnutt der hvor du vil ha det dynamiske innholdet. I mitt tema heter disse sidebar-single.php og sidebar-about.php. Husk på at når du har flere sidebars i temaet må du spesifisere hvilken du vil inkludere hvis du vil ha en annen enn den som bare heter sidebar.php. For eksempel, i min single.php vil jeg hente sidebaren for singel-poster (sidebar-single.php), og det gjør jeg slik:

<?php
	get_sidebar('single');
?>

(Man må altså navngi sidebar-filene slik: sidebar-<navn>.php.)

5. Overfør filene til webserveren og gå til dashboardet. Under “widgets” kan man nå velge hvilke hvilke widgets man vil ha på hvilken sidebar:

Sidebarene vises i nedtrekksmenyen.

Sidebarene vises i nedtrekksmenyen.

Og dett var dett :-)


2 innspill til nå
5/12 2011
kl. 18:39 #

ovviamente come kstudio.no tuttavia è necessario verificare la correttezza di molti dei tuoi post. Un certo numero di loro sono pieni di problemi di ortografia e di trovare molto fastidioso per raccontare la realtà, tuttavia, sarò sicuramente tornare.

11/12 2011
kl. 15:07 #

hey kstudio.no e grazie alle vostre informazioni ho sicuramente raccolto nulla di nuovo da qui. Ho fatto in altra parte un’esperienza diversi punti tecnici l’uso di questo sito web, dal momento che ho vissuto per ricaricare le istanze sito molti precedenti ho potuto ottenere che sia caricata correttamente. Mi stavano pensando se il vostro host web è OK?

Vennligst vær hyggelig :-)


  • Takk for at du besøkte kstudio, Tormod Klingenbergs hjem på nettet.. Mer »
OBS: Meningene som kommer til uttrykk på disse sidene må ikke tas til inntekt for min arbeidsgiver, min familie, mitt land, mine slektninger eller noe annen gruppe jeg tilhører.
© kstudio 2006-2009 Some rights reserved
Blogglisten