Problemen met email

Het lijkt erop dat de mailserver van KPN gemarkeerd staat als spammer op blacklists. Daardoor kunnen emailberichten niet goed worden verzonden waardoor er foutmeldingen teruggestuurd worden.

WordPress Archive Page with Transients

I recently discovered transients, a caching method that you can use to save queries in the database or object cache (if used). It can save a lot of time to gather the information for a page to load and it can descrease the amount of load on your database / PHP.

I use two files for this short tutorial. This code is used on the archive page for www.maartenvandekamp.nl/archief/. It’s generated once and only changed when a post is saved. This way, it’s only regenerated when needed.

<ul>
<?php
$posts = all_posts_archive_page();
if( $posts->have_posts() ) : while ($posts->have_posts() ) : $posts->the_post();
printf('<li>%1$s &mdash; <a href="%2$s" title="%3$s">%4$s</a></li>',
esc_html( get_the_date( get_option( 'date_format' ) ) ),
esc_url( get_permalink() ),
esc_attr( the_title_attribute( 'echo=0' ) ),
get_the_title()
);
endwhile; endif; wp_reset_query(); ?>
</ul>

I copied the template from an existing page and instead of showing the_content(). I pasted this code and saved the template. I called it template-archive.php.

You may have noticed, I fill the variable $posts with the function all_posts_archive_page();. This function is located in the file functions.php, which comes with every theme used by WordPress.

This is the code that retrieves the posts from the database and stores them in the database or object cache (if used):

function all_posts_archive_page() {
if ( false === ( $all_posts_for_archive = get_transient( 'all_posts_for_archive' ) ) ) {
$query = array( 'nopaging' => true );
$all_posts_for_archive = new WP_Query($query);
// transient set to last forever until another post is saved - all_posts_archive_page_transient_flusher takes care of the flush
set_transient( 'all_posts_for_archive', $all_posts_for_archive );
}
// do normal loop stuff
return $all_posts_for_archive;
}
/**
 * Flush out the transients used in all_posts_archive_page()
 *
 * 
 */
function all_posts_archive_page_transient_flusher() {
delete_transient( 'all_posts_for_archive' );
}
add_action( 'save_post', 'all_posts_archive_page_transient_flusher' );

The second function (all_posts_archive_page_transient_flusher()) deletes the transient when a new post is saved, so when a post is edited or published, the cache will become expired and will be rebuild when a visitor visits the archive page again.

Statistieken februari 2013

Er is weer een maand om en het was een korte maand deze keer, want het is februari.

De statistieken zijn wederom positief, behalve dan die van het aantal bezoeken. Omdat het maar 28 dagen zijn, is er groei van slechts 0.14% in het aantal bezoekers..

Het is merkbaar dat er 2 / 3 dagen ontbreken, anders had het aantal pageviews mogelijk 20% of hoger kunnen worden.

Maand Bezoeken Pageviews Percentage bezoeken Percentage pageviews
Oktober 2012 2626 6734
November 2012 3268 8170 + 24.45% + 21.32%
December 2012 3864 10 332 + 17.5% + 26%
Januari 2013 4946 13 640 + 28% + 32%
Februari 2013 4962 16 139 + 0.14% + 18%

Nieuwsbrief

Op de website kunnen mensen zich inschrijven voor de nieuwsbrief. Op dit moment zijn er 110 mensen die de nieuwsbrief ontvangen.

MvandeK.nl wordt blog.mvdk.me

De website MvandeK.nl heeft nooit een belangrijke rol gespeeld tijdens het gebruik ervan. Sinds vandaag is mvdk.me op mijn naam geregistreerd en nu was het een goed moment om er een blog te plaatsen, als subdomein.

Vandaar dat alle bezoekers vanaf nu doorverwezen worden naar blog.mvdk.me als je MvandeK.nl bezocht.

Nieuw domein: mvdk.me

Mijn initialen zijn mvdk en alle reguliere extensies met de domeinnaam mvdk zijn al geregistreerd. mvdk.me was nog vrij en voor slechts 25.50 is deze nu van mij!

Het kan nooit kwaad om een 4 letterig domein in je bezit te hebben.

Weg met sociale media op een website

Op heel veel websites kom je ze tegenwoordig tegen: sociale media knoppen. Laat al je Facebook, Twitter, Linkedin of Google vrienden weten dat je iets gelezen hebt en het leuk vindt of aan wil raden. Misschien zijn zij er ook wel in geïnteresseerd!

Maar wie vraagt daar om? Ik las pas een artikel waarin verteld werd dat mensen niet graag iets delen, ze willen het graag voor zichzelf houden. En waarom moet de content op een site per se gedeeld worden op een sociaal netwerk?

Ik toonde op MaartenvandeKamp.nl een Twitter-feed van mijn Twitter account en mensen konden een artikel delen op Twitter en Facebook. Dat werd totaal niet gebruikt.

Toen ben ik gaan kijken naar andere sites en hun toepassing van sociale media knoppen. Ik zag dat er enkele sites waren die verwezen naar Facebook of Twitter, maar niet in de vorm van een Like of Twitter knop.

En die Twitter-feed die de voorpagina stond zorgde alleen voor extra links die geïndexeerd werden en uiteindelijk toch weer naar mijn eigen site verwezen. Dat had ook weinig meerwaarde..

Daarom heb ik besloten om alle verwijzingen naar sociale media weg te halen. Alleen onderaan de pagina staat een verwijzing naar de Facebook pagina en daar blijft het bij.

Als mensen iets willen delen dan doen ze dat ook wel, maar je moet het ze niet op willen dringen door allerlei knoppen neer te zetten en ze te smeken of vragen om het alsjeblieft sociaal te maken. Maak dan een pagina aan die ze kunnen liken…

Statistieken januari 2013

De maand december was al een heel succesvolle maand met bezoekersaantallen en bekeken pagina’s. De groei van december was al ongeveer 25% ten opzichte van november, maar januari heeft dit ruimschoots beter gedaan dan de vorige maand, want er is een groei van 28% in bezoekersaantallen en er zijn 30% meer pagina’s bekeken ten opzichte van december 2012! De grootste groei ooit.

Maand Bezoeken Pageviews Percentage bezoeken Percentage pageviews
Oktober 2012 2626 6734
November 2012 3268 8170 + 24.45% + 21.32%
December 2012 3864 10 332 + 17.5% + 26%
Januari 2013 4946 13 640 + 28% + 32%

Persoonlijk ben ik erg blij met deze groei en ik had het ook zeker niet verwacht. Sowieso is het leuk om een vaste groep terugkerende lezers te hebben, daar kan ik op bouwen en van die feedback kan ik leren!

Korte downtime

Vanmiddag is het domein razem.nl, blog.casakampa.nl en ihavetheknowledge.nl een half uur offline geweest ivm vervanging van een wasemkap, waardoor de server uit moest. De server staat weer aan en ook de nieuwe wasemkap werkt als een zonnetje.

WordPress Bookmarks list with description

I saw this piece of code in a file from a theme and I wanted to share it with you. It’s a very nice piece of code that shows all the links per category, with description. So good, you don’t even have to change it any more.

Here’s the code:

<?php $args = array(
'title_li' => false,
'title_before' => '<h2>',
'title_after' => '</h2>',
'category_before' => false,
'category_after' => false,
'categorize' => true,
'show_description' => true,
'between' => '<br />',
'show_images' => false,
'show_rating' => false,
);
wp_list_bookmarks( $args ); ?>

You can find a working example here.