Alles wat je moet weten over functions.php in een WordPress-thema
Het bestand functions.php
is een van de krachtigste en meest veelzijdige bestanden in een WordPress-thema. Dit bestand fungeert als een soort plugin voor je thema en stelt je in staat om functionaliteit toe te voegen of bestaande functies aan te passen zonder de kernbestanden van WordPress te wijzigen.
Wat is functions.php?
Het functions.php
-bestand is een essentieel bestand binnen een WordPress-thema. Het werkt als een op thema gebaseerde plugin waarmee je extra functionaliteiten kunt toevoegen, zoals het registreren van menu’s, widgets, aangepaste posttypes, en zelfs het toevoegen van extra scripts en stijlen. Elke keer dat een pagina van je WordPress-site wordt geladen, wordt het functions.php
-bestand van je actieve thema uitgevoerd. Dit betekent dat alle functies en aanpassingen die in dit bestand zijn opgenomen direct effect hebben op je website.
LET OP: voordat je de functions.php gaat aanpassen is het noodzakelijk dat je een zg child-theme aanmaakt. Aanpassingen in het functions.php bestand doe je dan ook in het child theme. Het voorkomt dat je aanpassingen worden overschreven wanneer en een update van je thema wordt doorgevoerd. Hoe je een child theme maakt lees je hier.
Waarom is functions.php handig?
1. Geen wijziging in de kernbestanden
Door aanpassingen via functions.php
door te voeren, hoef je geen wijzigingen te maken in de kernbestanden van WordPress. Dit voorkomt problemen bij toekomstige updates.
2. Geen onnodige plugins
Met functions.php
kun je je WordPress-site personaliseren zonder afhankelijk te zijn van extra plugins. Dit maakt je site lichter en efficiënter.
3. Alles op één plek
Alle aanpassingen en extra functionaliteiten blijven binnen je thema, wat het overzichtelijk houdt en eenvoudig te beheren is.
Interessante aanpassingen met functions.php
Hier zijn enkele nuttige en veelgebruikte aanpassingen die je kunt maken via functions.php
:
1. Scripts en stijlen toevoegen
Je kunt extra CSS- en JavaScript-bestanden laden met behulp van de volgende code:
function mijn_scripts_en_styles() {
wp_enqueue_style('custom-style', get_stylesheet_directory_uri() . '/css/custom-style.css');
wp_enqueue_script('custom-script', get_stylesheet_directory_uri() . '/js/custom-script.js', array('jquery'), false, true);
}
add_action('wp_enqueue_scripts', 'mijn_scripts_en_styles');
2. Aangepaste menu’s registreren
Wil je een extra menu toevoegen aan je WordPress-thema? Dat kan eenvoudig met de volgende code:
function registreer_mijn_menu() {
register_nav_menus(
array(
'hoofdmenu' => __('Hoofdmenu'),
'voetmenu' => __('Voetmenu')
)
);
}
add_action('after_setup_theme', 'registreer_mijn_menu');
3. Favicon toevoegen
Je kunt een favicon toevoegen via functions.php
zonder een plugin te gebruiken:
function voeg_favicon_toe() {
echo '<link rel="shortcut icon" type="image/x-icon" href="'.get_stylesheet_directory_uri().'/images/favicon.ico" />';
}
add_action('wp_head', 'voeg_favicon_toe');
4. Beperk het aantal revisies voor berichten
Om te voorkomen dat je database volloopt met revisies, kun je het aantal revisies beperken:
function beperk_revisies() {
return 5;
}
add_filter('wp_revisions_to_keep', 'beperk_revisies');
5. Aangepaste berichten typen registreren
Wil je een aangepaste post type toevoegen, zoals ‘Portfolio’? Gebruik dan de volgende code:
function registreer_portfolio_posttype() {
register_post_type('portfolio',
array(
'labels' => array(
'name' => __('Portfolio'),
'singular_name' => __('Portfolio Item')
),
'public' => true,
'has_archive' => true,
'supports' => array('title', 'editor', 'thumbnail')
)
);
}
add_action('init', 'registreer_portfolio_posttype');
6. Loginpagina aanpassen
Je kunt het logo op de WordPress-loginpagina vervangen door je eigen logo:
function mijn_login_logo() {
echo '<style type="text/css">
.login h1 a { background-image: url('.get_stylesheet_directory_uri().'/images/custom-logo.png) !important; }
</style>';
}
add_action('login_head', 'mijn_login_logo');
7. Afbeeldingsformaten toevoegen
Je kunt extra afbeeldingsformaten toevoegen met de volgende code:
function extra_afbeeldingsformaten() {
add_image_size('klein-vierkant', 200, 200, true);
add_image_size('breed-balk', 1200, 300, true);
}
add_action('after_setup_theme', 'extra_afbeeldingsformaten');
Conclusie
Het functions.php
-bestand is een essentieel hulpmiddel voor het aanpassen van je WordPress-thema. Het stelt je in staat om zonder extra plugins belangrijke functies toe te voegen, zoals aangepaste menu’s, extra afbeeldingsformaten, en het laden van scripts en stijlen. Door functions.php
verstandig te gebruiken, kun je je WordPress-site optimaliseren en aanpassen aan je wensen.