Sommige websites willen per pagina de afbeelding in de header kunnen wijzigen. De simpelste methode is die door per pagina een afbeelding te uploaden. We gaan er in deze howto van uit dat de div waarin de afbeelding geplaatst wordt als ID #headerImage heeft meegekregen.
Voor sommige websites is het wel eens nodig om een simpel uitschuifbaar submenu te maken voor de actieve pagina. Hiermee bedoel ik niet een drop-down menu waar al veel informatie over te vinden is. Maar een simpele versie bij voornamelijk verticale menus. In dit verticale menu willen we alleen de hoofditems weergeven. De subitems die onder deze hoofditems zitten mogen alleen zichtbaar zijn wanneer het hoofditem waar de subitems onderdeel van uitmaken actief is.
Om dit menu te maken ga ik er vanuit dat het menu geplaatst is in een div met het id “menu”. De code in bijvoorbeeld header.php ziet er dan als volgt uit:
[php]<div id="menu">
<?php
// main menu
wp_nav_menu(array(
’theme_location’ => ‘primary’,
));
?>
</div>[/php]
WordPress maakt nu een lijst met menu- en subitems aan. In dit menu willen we alleen de hoofditems laten zien: alle subitems moeten verborgen worden. Dit doen we met de volgende CSS code. Deze kun je plaatsen in style.css.
[css]#menu ul li ul {
display: none;
}[/css]
Maar nu zijn de subitems altijd verborgen. Als je op een pagina komt met subitems, wil je natuurlijk dat deze beschikbaar zijn. Hier komt jQuery om de hoek kijken. Plaats de volgende code in je header.php:
Door jQuery kunnen we snel de actieve subitems vinden en activeren. Je kunt eventueel ook animeren met de toggle() functie. Zie voor meer informatie de handleiding van jQuery.
Wij vinden backups belangrijk. Daarom maken wij bij Sensson elke 4 uur een backup van al uw data, dus ook uw databases. Toch bent u zelf verantwoordelijk voor uw data. Het maken van backups is daarom verstandig. Maar hier kunnen we bij helpen, wel zo gemakkelijk.
De onderstaande code maakt een backup van uw database en slaat deze op als .tar.gz in dezelfde directory als waar het script zich bevindt. Deze code maakt gebruik van de HTTPSocket class welke vrij beschikbaar is via GitHub. Deze class moet opgeslagen worden als httpsocket.php in dezelfde directory als waar u het onderstaande script plaatst.
[php]
//set variables
$username = "username"; // directadmin user
$password = "password"; // directadmin password
$domain = "domein.nl"; // your domain
$database = "username_db"; // database name
// include socket and build class
include_once("httpsocket.php");
$sock = new HTTPSocket;
// open connection and authenticate
$sock->connect($domain, 2222);
$sock->set_login($username, $password);
// get the backup file
$sock->query("/CMD_DB/{$database}.gz");
$data = $sock->fetch_body();
// store the backup file
$backupfile = fopen("{$database}.tar.gz", "w");
fwrite($backupfile, $data);
fclose($backupfile);
echo "Done";[/php]
De bovenstaande code is natuurlijk aan te passen aan uw eigen wensen. Zo kunt u meerdere databases tegelijk bewaren of het bestand laten e-mailen. Met deze code hopen wij u een idee te geven van de mogelijkheden. Door gebruik te maken van cronjobs kunt u dit bijvoorbeeld geautomatiseerd laten uitvoeren.
Heeft u vragen over deze code? Laat ze achter in de comments of e-mail naar info@sensson.net.