Questo articolo è una raccolta di utili snippet di codice che potete aggiungere al vostro tema di WordPress per potenziarlo con nuove funzionalità. Spero che troviate questi snippet utili.
Aggiungere il bottone di Google+ in automatico ai post
add_filter('the_content', 'wpr_google_plusone');
function wpr_google_plusone($content) {
$content = $content.'<div class="plusone"><g:plusone size="tall" href="'.get_permalink().'"></g:plusone></div>';
return $content;
}
add_action ('wp_enqueue_scripts','wpr_google_plusone_script');
function wpr_google_plusone_script() {
wp_enqueue_script('google-plusone', 'https://apis.google.com/js/plusone.js', array(), null);
}
Redirect dei feed RSS verso Feedburner
add_action('template_redirect', 'cwc_rss_redirect');
function cwc_rss_redirect() {
if ( is_feed() && !preg_match('/feedburner|feedvalidator/i', $_SERVER['HTTP_USER_AGENT'])){
header('Location: http://feeds.feedburner.com/nomefeed');
header('HTTP/1.1 302 Temporary Redirect');
}
}
Contare il numero di visite dei post senza plugin
Aggiungete il seguente codice al vostro file functions.php
:
function get_post_views($postID){
$count_key = 'post_views_count';
$count = get_post_meta($postID, $count_key, true);
if($count==''){
delete_post_meta($postID, $count_key);
add_post_meta($postID, $count_key, '0');
return "0 Visite";
}
return $count.' Visite';
}
function set_post_views($postID) {
$count_key = 'post_views_count';
$count = get_post_meta($postID, $count_key, true);
if($count==''){
$count = 0;
delete_post_meta($postID, $count_key);
add_post_meta($postID, $count_key, '0');
}else{
$count++;
update_post_meta($postID, $count_key, $count);
}
}
Quindi inserite il seguente codice nel file single.php
all'interno del Loop:
<?php set_post_views(get_the_ID()); ?>
Quindi inserite il seguente codice dove volete visualizzare il numero di visite:
<?php echo get_post_views(get_the_ID()); ?>
Visualizzare le query di Google
Potete usare il seguente codice in qualsiasi punto del tema per visualizzare le parole chiave usate dagli utenti di Google per arrivare al vostro sito:
<?php
$refer = $_SERVER["HTTP_REFERER"];
if (strpos($refer, "google")) {
$refer_string = parse_url($refer, PHP_URL_QUERY);
parse_str($refer_string, $vars);
$search_terms = $vars['q'];
echo 'Hai cercato i seguenti termini su Google:';
echo $search_terms;
}
?>
Visualizzare le anteprime dei siti
function bm_sc_mshot ($attributes, $content = '', $code = '') {
extract(shortcode_atts(array(
'url' => '',
'width' => 250,
), $attributes));
$imageUrl = bm_mshot ($url, $width);
if ($imageUrl == '') {
return '';
} else {
$image = '<img src="' . $imageUrl . '" alt="' . $url . '" width="' . $width . '"/>';
return '<div class="browsershot mshot"><a href="' . $url . '">' . $image . '</a></div>';
}
}
function bm_mshot ($url = '', $width = 250) {
if ($url != '') {
return 'http://s.wordpress.com/mshots/v1/' . urlencode(clean_url($url)) . '?w=' . $width;
} else {
return '';
}
}
add_shortcode('browsershot', 'bm_sc_mshot');
Quindi potete usare lo shortcode browsershot
passandogli come parametri l'URL del sito (url
) e la larghezza dell'immagine d'anteprima (width
):
[browsershot url="http://sito.it" width="300"]