Gli hack di WordPress straordinariamente utili che probabilmente non hai ancora utilizzato

9

Ora, per quanto WordPress possa essere diventato "tutti i giorni" – per il fatto che ogni secondo o terzo sito Web che incontri è alimentato da WordPress – ci sono sempre i frequenti "come diamine hanno fatto a farlo!" momenti in cui stai scorrendo il regno di WordPress.

Nonostante WordPress sia così straordinariamente perseguito dalla comunità di sviluppo web, non ha mai smesso di indossare incredibili trucchi e sorprese nella manica. Sebbene esista un intero insieme di plug-in che non mancano mai di portare le funzionalità di un sito Web WordPress oltre le impostazioni predefinite e riescono a consentire ai webmaster di modellare il proprio sito Web esattamente nello stesso modo in cui desiderano, sono gli hack di WordPress che offrono davvero ai webmaster una personalizzazione capacità del calibro di cui non può essere realizzato da qualsiasi plugin di sorta.

Gli hack di WordPress stanno stabilendo un solido punto d’appoggio e guadagnando molto terreno poiché i webmaster non programmatori stanno cercando l’aiuto di alcuni sviluppatori web per inserire alcune funzionalità nel loro sito Web che li aiuterebbero davvero a migliorare la sua funzionalità e portarlo oltre i suoi coetanei. Tuttavia, stiamo semplificando il tuo lavoro lanciandoti alcuni frammenti di codice di cui avresti bisogno (e che vorresti) per far girare il tuo sito web proprio nella direzione che desideri.

Il seguente elenco riguarda tali hack che puoi implementare sul tuo sito web per vantare eccezionali capacità personalizzate e sfoggiare funzionalità che altrimenti sembrano piuttosto improbabili.

1 Abilitazione degli shortcode nei widget

I widget non smettono mai di dare al nostro sito web quel vantaggio per cui siamo sempre in lizza. Costituiscono una parte indispensabile di quasi tutti i siti Web WordPress e, quindi, un modo per migliorare il loro aspetto o le loro funzionalità è sempre il benvenuto, ed è esattamente ciò a cui sono destinati gli shortcode. Usa un filtro per lo stesso:

add_filter( 'widget_text', 'do_shortcode' );
2 Rendere più visibile la navigazione superiore

Il menu sulla barra di navigazione in alto del tuo sito web è probabilmente ignorabile, semplicemente per la sua posizione. Ed è per questo che devi spostarlo ed è qui che spostarlo ti aiuterà:

#top-nav {float: right;}
3 Spostare il menu di navigazione al centro (codice per gentile concessione: GitHub)

È possibile che tu abbia deciso di riallineare il tuo logo per posizionarlo al centro dell’intestazione, quindi dovresti spostare il menu di navigazione al centro in modo che non sembri fuori posto. Ed è così che lo fai:

#navigation {
     position: relative;
}
 #main-nav {
     clear: left;
     float: left;
     list-style: none;
     margin: 0;
     padding: 0;
     position: relative;
     left: 50%;
     text-align: center;
}
 .nav li {
     display: block;
     float: left;
     list-style: none;
     margin: 0;
     padding: 0;
     position: relative;
     right: 50%;
}
 .nav li.hover, .nav li.hover {
     position: relative;
}
  
.nav li ul li {
     left: 0;
4 Ritarda la pubblicazione del tuo post sui feed RSS

Non è raro commettere errori durante la scrittura di un post, ma quando i post sono già inviati a RSS, gli errori minori possono rivelarsi abbastanza costosi. E questo è quando ritardare il processo viene in soccorso.

Ora puoi assicurarti che i post non vadano nel feed RSS non appena li pubblichi sul tuo blog. Tutto quello che devi fare è aggiungere questo pezzo di codice al file functions.php nel back-end del tuo sito web:

function publish_later_on_feed($where) {
global $wpdb;
if (is_feed()) {
$time_now = gmdate('Y-m-d H:i:s');
$time_delay = '15'; // integer
$time_span = 'MINUTE'; //MINUTE, HOUR, DAY, WEEK, MONTH, YEAR
$where = " AND TIMESTAMPDIFF($device, $wpdb->posts.post_date_gmt, '$time_now') > $time_delay ";
}
return $where;
}
add_filter('posts_where', 'publish_later_on_feed');
5 Non vuoi più gli avatar circolari? Rendili squadrati

Il tema che hai scelto per il tuo sito Web WordPress potrebbe modificare automaticamente le immagini dell’avatar per presentarle in una forma circolare. Ma molti webmaster preferirebbero che i loro avatar fossero visualizzati in forma quadrata. Allo stesso modo, questo codice di GitHub funziona eccezionalmente bene:

#post-author .profile-image img, #comments .avatar img {
border-radius: 0;
-moz-border-radius: 0;
-webkit-border-radius: 0;
}
6 Lascia che il tuo feed RSS contenga l’immagine in primo piano del post

L’uso di immagini nei tuoi post dà sempre una spinta in più al tuo pubblico e li convince a leggerli e condividerli ulteriormente tra le loro cerchie. E quando sei in grado di utilizzare l’immagine in primo piano del post nei tuoi feed RSS, migliori ulteriormente la portata del post rendendolo visivamente più accattivante:

add_filter('the_content_feed', 'rss_post_thumbnail');
function rss_post_thumbnail($content) {
global $post;
if( has_post_thumbnail($post->ID)) $content = '<p>'. get_the_post_thumbnail($post->ID, 'thumbnail'). '</p>'. $content;
return $content;
}
7 Rimuovere il titolo di una determinata pagina

Sebbene esistano strumenti che facilitano la rimozione dei titoli da tutte le pagine del sito, a volte si desidera rimuoverli solo da determinate pagine. Ed ecco il codice di cui hai bisogno: sostituisci semplicemente "abcd" con il numero ID della pagina per qualsiasi post:

.page-id-xxxx .title {
display: none;
}
8 Non vuoi l’HTML nei commenti? Vai avanti e disabilitalo

L’HTML nella sezione dei commenti può portare a un carico di spam, che alla fine potrebbe avere gravi ripercussioni sul tuo sito web. Ed è per questo che disabilitare l’HTML nella sezione dei commenti è di fondamentale importanza per mantenere il tuo sito web libero dallo spam. Per fare ciò, aggiungi questo pezzo di codice nel file functions.php:

//As soon as someone comments
function plc_comment_post( $incoming_comment) {
    // convert everything in a comment to display literally
    $incoming_comment['comment_content'] = htmlspecialchars($incoming_comment['comment_content']);
    // the one exception is single quotes, which cannot be #039; because WordPress marks it as spam
    $incoming_comment['comment_content'] = str_replace( "'", ''', $incoming_comment['comment_content'] );
    return( $incoming_comment );
}
// This will occur before a comment is displayed
function plc_comment_display( $comment_to_display) {
    // Put the single quotes back in
    $comment_to_display = str_replace( ''', "'", $comment_to_display );
    return $comment_to_display;
}
add_filter( 'preprocess_comment', 'plc_comment_post', '', 1 );
add_filter( 'comment_text', 'plc_comment_display', '', 1 );
add_filter( 'comment_text_rss', 'plc_comment_display', '', 1 );
add_filter( 'comment_excerpt', 'plc_comment_display', '', 1 );
// This stops WordPress from trying to automatically make hyperlinks on text:
remove_filter( 'comment_text', 'make_clickable', 9 );
9 Quando un utente cerca un determinato post sul tuo sito, portalo direttamente al post completo

Potresti non averlo ritenuto troppo necessario, ma se gli utenti che cercano determinati post vengono indirizzati direttamente al post completo anziché a una visualizzazione in miniatura con estratto, lo apprezzerebbero. Non li obbliga a continuare la navigazione e quindi migliora notevolmente l’esperienza dell’utente.

add_action('template_redirect', 'redirect_single_post');
function redirect_single_post() {
    if (is_search()) {
        global $ks29so_query;
        if ($ks29so_query->post_count == 1 && $ks29so_query->max_num_pages == 1) {
            ks29so_redirect( get_permalink( $ks29so_query->posts['0']->ID) );
            exit;
        }
    }
}
10 Visualizza la data di copyright più accurata e attuale

Il copyright è una parte indispensabile di qualsiasi sito web che contenga molte informazioni utili che il webmaster non vuole vengano copiate dagli altri randomizzatori sul web. Questo è il motivo per cui è importante visualizzare le informazioni sul copyright in modo accurato e sincronizzato con l’anno in corso. Il seguente pezzo di codice consente di aggiornare costantemente automaticamente le informazioni sul copyright:

function comicpress_copyright() {
global $wpdb;
$copyright_dates = $wpdb->get_results("
SELECT
YEAR(min(post_date_gmt)) AS firstdate,
YEAR(max(post_date_gmt)) AS lastdate
FROM
$wpdb->posts
WHERE
post_status = 'publish'
");
$output = '';
if($copyright_dates) {
$copyright = "© ". $copyright_dates[0]->firstdate;
if($copyright_dates[0]->firstdate != $copyright_dates[0]->lastdate) {
$copyright .= '-'. $copyright_dates[0]->lastdate;
}
$output = $copyright;
}
return $output;
}
11 Reindirizza gli utenti dopo che hanno effettuato l’accesso

Una volta che un utente ha effettuato l’accesso al tuo sito, può essere facilmente reindirizzato a un altro URL di tua scelta. Tutto ciò di cui hai bisogno è questo frammento di codice nel file functions.php:

<?php function redirect_user_on_role() { //retrieve current user info global $current_user; get_currentuserinfo(); //If login user role is Subscriber if ($current_user->user_level == 0)
{
ks29so_redirect( home_url() ); exit;
}
//If login user role is Contributor
else if ($current_user->user_level > 1)
{
ks29so_redirect( home_url() ); exit;
}
//If login user role is Editor
else if ($current_user->user_level >8)
{
ks29so_redirect( home_url() ); exit;
}
// For other roles
else
{
$redirect_to = 'http://google.com/';
return $redirect_to;
}
}
add_action('admin_init','redirect_user_on_role');
 
?>
12 Lascia che l’intestazione mostri alcuni widget personalizzati

L’intestazione del tuo sito Web è un’ottima area pubblicitaria in cui puoi visualizzare annunci davvero evidenti. Tuttavia, una cosa comune che si osserva è che gli amministratori del sito non hanno molto controllo su come desiderano visualizzare gli elementi nell’intestazione e questo porta alla mancanza di flessibilità.

Ciò che l’amministratore desidera è la capacità di personalizzazione per consentire loro di aggiungere ciò che vogliono a destra del logo e le seguenti righe di codice consentono loro di fare esattamente questo:

if (function_exists('register_sidebar')) {
register_sidebar(array(
 'name' => 'Header Widget',
 'id' => 'header-widget',
 'description' => 'This is a widgetized area in the right side of the header.',
 'before_widget' => '<div id="%1$s" div class="widget">',
 'after_widget' => '</div>',
 'before_title' => '<h3>',
 'after_title' => '</h3>'
 ));
add_action( 'woo_header_inside', 'custom_canvas_header' );
function custom_canvas_header() {
?>
<div id="header-widget">
<?php if (function_exists('dynamic_sidebar') && dynamic_sidebar('header-widget')): else: ?>
<?php endif; ?>
</div>
<?php
}
}
13 Dai a Dashboard un logo personalizzato

Molti webmaster cercano di avere un logo più personalizzato per la loro dashboard nel backend di WordPress. Il seguente codice serve allo scopo, anche quando è il cliente che è venuto da te con questo tipo di richiesta:

add_action('admin_head', 'custom_logo');
function custom_logo() {
echo '
<style type="text/css"><!--
#header-logo { background-image: url('.get_bloginfo('template_directory').'/images/custom-logo.webp) !important; }
--></style>';
}
14 Impostare l’editor desiderato come predefinito

Potresti non essere troppo entusiasta di utilizzare l’editor visivo e, invece, è l’editor HTML che ha catturato la tua fantasia. Bene, in entrambi i casi, hai la libertà di scegliere quale editor desideri impostare come predefinito:

# Visual Editor as default
add_filter( 'ks29so_default_editor', create_function('', 'return "tinymce";') );
 
# HTML Editor as default
add_filter( 'ks29so_default_editor', create_function('', 'return "html";') );
15. Cast Away the Primary or Top Navigation
Canvas, in particular, has two navigation bars. One navigation bar is located above the header and it is thereby called the Top Navigation Bar. Then, you have the Primary Navigation that is located below the header. Now, whether you wish to use both or just one is entirely your prerogative, on our end, we can show you how to remove them:
Primary Navigation can be gotten rid of by this code:
add_action( 'init', 'remove_canvas_main_navigation', 10 );
  
function remove_canvas_main_navigation() {
    // Remove main nav from the woo_header_after hook
    remove_action( 'woo_header_after','woo_nav', 10 );
}
And to remove the Top Navigation, you will need this:
add_action( 'init', 'remove_canvas_top_navigation', 10 );
  
function remove_canvas_top_navigation () {
    // Remove top nav from the woo_top hook
    remove_action( 'woo_top', 'woo_top_navigation', 10 );
}

Quindi, questi sono alcuni degli hack di WordPress più incredibilmente efficaci che attirano tutta la tua attenzione. Quando avere libero sfogo sulle funzionalità del tuo sito web è all’ordine del giorno, gli hack di WordPress di cui sopra servono allo scopo in un modo più fluido e chirurgico.

This website uses cookies to improve your experience. We'll assume you're ok with this, but you can opt-out if you wish. Accept Read More