Archief: vertalen
Elke taal een eigen sidebar
Gepost op 18 mei om 14:00u, door famire | geen reacties
Als je WPML gebruikt in een WordPress website met sidebars, dan wil je die sidebars ook graag mee veranderen als de bezoeker een andere taal selecteert. Om dit te realiseren zul je voor elke taal een eigen sidebar aan moeten maken. Nou kun je natuurlijk de code daarvoor vast in de functions.php zetten, maar als jij (of je opdrachtgever etc.) op een later tijdstip besluit om een taal toe te voegen of te verwijderen, dan moet dit ook handmatig gebeuren.Dynamische sidebars per taal
Het makkelijkst is dus om sidebars dynamisch aan te laten maken op basis van de talen die geactiveerd zijn. Dat doe je met de volgende code:<?php
/*
Register sidebars
*/
if ( function_exists('register_sidebars') )
{
// WPML is active
if ( function_exists('icl_get_languages') )
{
foreach ( icl_get_languages('skip_missing=0&orderby=name&order=asc') as $lang )
{
register_sidebar( array(
'name' => __(sprintf('%s Sidebar',strtoupper($lang['language_code']))),
'id' => 'sidebar-'.$lang['language_code'],
'before_widget' => '<li id="%1$s">',
'after_widget' => '</li>',
'before_title' => '<h4>',
'after_title' => '</h4>'
) );
}
}
// WPML is not active
else
{
register_sidebar( array(
'name' => __('Sidebar'),
'id' => 'sidebar-default',
'before_widget' => '<li id="%1$s">',
'after_widget' => '</li>',
'before_title' => '<h4>',
'after_title' => '</h4>'
) );
} // end if/else
} // end if
?>
Met bovenstaande code zorg je ervoor dat er een standaard sidebar wordt aangemaakt als er geen talen actief zijn.
Meerdere sidebars
Gebruik je meerdere sidebars en wil je die allemaal vertalen? Dan herhaal je de code binnen in deforeach (de register_sidebar functie dus) en maak je de benodigde wijzigingen (naam & ID van de sidebar).
Een voorbeeldje van meerdere sidebars vertalen (een standaard sidebar en eentje voor de blogs):
<?php
/*
Register sidebars
*/
if ( function_exists('register_sidebars') )
{
// WPML is active
if ( function_exists('icl_get_languages') )
{
foreach ( icl_get_languages('skip_missing=0&orderby=name&order=asc') as $lang )
{
register_sidebar( array(
'name' => __(sprintf('%s Sidebar | Default',strtoupper($lang['language_code']))),
'id' => 'sidebar-default-'.$lang['language_code'],
'before_widget' => '<li id="%1$s">',
'after_widget' => '</li>',
'before_title' => '<h4>',
'after_title' => '</h4>'
) );
register_sidebar( array(
'name' => __(sprintf('%s Sidebar | Blog',strtoupper($lang['language_code']))),
'id' => 'sidebar-blog-'.$lang['language_code'],
'before_widget' => '<li id="%1$s">',
'after_widget' => '</li>',
'before_title' => '<h4>',
'after_title' => '</h4>'
) );
}
}
// WPML is not active
else
{
register_sidebar( array(
'name' => __('Sidebar | Default'),
'id' => 'sidebar-default',
'before_widget' => '<li id="%1$s">',
'after_widget' => '</li>',
'before_title' => '<h4>',
'after_title' => '</h4>'
) );
register_sidebar( array(
'name' => __('Sidebar | Blog'),
'id' => 'sidebar-blog',
'before_widget' => '<li id="%1$s">',
'after_widget' => '</li>',
'before_title' => '<h4>',
'after_title' => '</h4>'
) );
} // end if/else
} // end if
?>
Sidebar laden
Nou heb je natuurlijk niet zo heel veel aan vertaalde sidebars als je niet ook de juiste sidebar kan laden op de site. Open je sidebar.php en vervang de huidige code om de dynamische sidebar op te halen met de volgende code:<?php
if ( function_exists('dynamic_sidebar') )
{
// WPML is active
if ( function_exists('icl_get_languages') )
{
// only load sidebar if it is active
if ( is_active_sidebar('sidebar-'.ICL_LANGUAGE_CODE) ) dynamic_sidebar('sidebar-'.ICL_LANGUAGE_CODE);
}
// WPML is not active
else
{
dynamic_sidebar('sidebar-default');
}
}
?>
Lees de rest van dit bericht »
Je WordPress website in meerdere talen
Gepost op 14 maart om 14:00u, door hiranthi | 1 reactie
Om je WordPress website makkelijk te onderhouden in meerdere talen heb je een plugin nodig, de plugin – van mijn voorkeur – hiervoor is WPML.
Lees de rest van dit bericht »
Je WordPress plugin vertaalbaar maken
Gepost op 24 november om 14:00u, door hiranthi | geen reacties
Als je een WordPress plugin maakt – voor jezelf, een klant of om in de WordPress Repository op te nemen – dan is het wel zo handig om deze beschikbaar te maken in meerdere talen. Of in ieder geval andere gebruikers de gelegenheid te geven om jouw plugin makkelijk te gebruiken in hun eigen taal.
Lees de rest van dit bericht »
Je WordPress theme vertaalbaar maken
Gepost op 27 april om 14:00u, door hiranthi | geen reacties
Om je WordPress website in meerdere talen beschikbaar te maken is alleen een plugin als qTranslate of WPML niet voldoende. In elke theme staat namelijk wel wat tekst dat door die plugins niet vertaald wordt (denk aan X reacties bijvoorbeeld).
Lees de rest van dit bericht »
Poedit gebruiken
Gepost op 26 april om 14:00u, door hiranthi | geen reacties
Poedit is een programma waarmee je – onder andere – je WordPress plugins en themes kunt vertalen. In deze tutorial leg ik uit hoe je Poedit hiervoor kunt gebruiken.
Lees de rest van dit bericht »

