Tutorial WordPress affidabili, quando ne hai più bisogno.
Guida per principianti a WordPress
WPB Cup
25 Milioni+
Siti web che utilizzano i nostri plugin
16+
Anni di esperienza con WordPress
3000+
Tutorial WordPress di esperti

Come far apparire l'ultimo widget della barra laterale in WordPress usando jQuery

Recentemente uno dei nostri utenti ci ha chiesto come aggiungere un effetto di dissolvenza in entrata per l'ultimo widget nella barra laterale. Questo popolare effetto jQuery è utilizzato su molti siti web e blog conosciuti. Mentre l'utente scorre la pagina, l'ultimo widget nella barra laterale appare gradualmente e diventa visibile. L'animazione rende il widget accattivante e notevole, aumentando drasticamente il tasso di clic. In questo articolo, ti mostreremo come far apparire gradualmente l'ultimo widget della barra laterale in WordPress usando jQuery.

Di seguito una demo di come apparirebbe:

Dissolvenza dell'ultimo widget della barra laterale in WordPress

In questo tutorial, modificherai i file del tuo tema. Si raccomanda di eseguire il backup del tuo tema prima di procedere ulteriormente.

Passaggio 1: Aggiungere JavaScript per l'effetto di dissolvenza in entrata

Per prima cosa devi aggiungere il codice jQuery al tuo tema WordPress come file JavaScript separato. Inizia aprendo un file vuoto in un editor di testo come Blocco note. Successivamente, salva questo file vuoto come wpb_fadein_widget.js sul tuo desktop e incolla il seguente codice al suo interno.

jQuery(document).ready(function($) {
/**
* Configuration
* The container for your sidebar e.g. aside, #sidebar etc.
*/

var sidebarElement = $('div#secondary');


// Check if the sidebar exists
if ($(sidebarElement).length > 0) {

// Get the last widget in the sidebar, and its position on screen

var widgetDisplayed = false;
var lastWidget = $('.widget:last-child', $(sidebarElement));
var lastWidgetOffset = $(lastWidget).offset().top -100;
	
// Hide the last widget
$(lastWidget).hide();
	
// Check if user scroll have reached the top of the last widget and display it
$(document).scroll(function() {

// If the widget has been displayed, we don't need to keep doing a check.

if (!widgetDisplayed) {
if($(this).scrollTop() > lastWidgetOffset) {
$(lastWidget).fadeIn('slow').addClass('wpbstickywidget');
widgetDisplayed = true;  
}
}
});
}
});

La riga più importante in questo codice è var sidebarElement = $('div#secondary');.

Questo è l'id del div che contiene la tua barra laterale. Poiché ogni tema può utilizzare div contenitori della barra laterale diversi, devi scoprire l'id del contenitore che il tuo tema sta utilizzando per la barra laterale.

Puoi scoprirlo utilizzando lo strumento di ispezione elemento in Google Chrome. Fai semplicemente clic destro sulla tua barra laterale in Google Chrome e seleziona Ispeziona elemento.

Trovare l'ID del contenitore della barra laterale nel codice sorgente

Nel codice sorgente, sarai in grado di vedere il tuo div contenitore della barra laterale. Ad esempio, il tema predefinito Twenty Twelve utilizza secondary, mentre Twenty Thirteen utilizza tertiary come ID per il contenitore della barra laterale. Devi sostituire secondary con l'ID del tuo div contenitore della barra laterale.

Successivamente, devi utilizzare un Client FTP per caricare questo file nella cartella js all'interno della directory del tuo tema WordPress. Se la directory del tuo tema non ha una cartella js, devi crearla facendo clic con il pulsante destro del mouse e selezionando 'Crea nuova directory' nel tuo client FTP.

Passaggio 2: Accodare il tuo JavaScript nel tema WordPress

Ora che il tuo script jQuery è pronto, è ora di aggiungerlo al tuo tema. Utilizzeremo il metodo corretto per aggiungere il javascript nel tuo tema, quindi incolla semplicemente il seguente codice nel file functions.php del tuo tema.

wp_enqueue_script( 'stickywidget', get_template_directory_uri() . '/js/wpb-fadein-widget.js', array('jquery'), '1.0.0', true );

Tutto qui, ora puoi aggiungere un widget nella tua barra laterale che desideri appaia con l'effetto fade-in, quindi visita il tuo sito web per vederlo in azione.

Passaggio 3: Rendere l'ultimo widget fisso dopo l'effetto fade-in

Una funzionalità spesso desiderata con l'effetto fade-in è rendere l'ultimo widget della barra laterale fisso mentre l'utente scorre. Questo è chiamato widget fluttuante o widget fisso.

Se guardi il codice jQuery sopra, noterai che abbiamo aggiunto una classe CSS wpbstickywidget al widget dopo l'effetto fade-in. Puoi usare questa classe CSS per rendere il tuo ultimo widget fisso dopo che è svanito. Tutto ciò che devi fare è incollare questo CSS nel foglio di stile del tuo tema.

.wpbstickywidget { 
position:fixed;
top:0px; 
}

Sentiti libero di modificare il CSS per soddisfare le tue esigenze. Puoi cambiare il colore di sfondo o i font per rendere il widget ancora più evidente. Se vuoi, puoi persino aggiungere un effetto di scorrimento fluido verso l'alto accanto al tuo ultimo widget, che permetterà agli utenti di tornare rapidamente indietro.

Speriamo che questo articolo ti abbia aiutato ad aggiungere un effetto di dissolvenza all'ultimo widget nella barra laterale del tuo WordPress. Per altre chicche jQuery, dai un'occhiata ai migliori tutorial jQuery per WordPress.

Se ti è piaciuto questo articolo, iscriviti al nostro Canale YouTube per tutorial video su WordPress. Puoi anche trovarci su Twitter e Google+.

Dichiarazione: Il nostro contenuto è supportato dai lettori. Ciò significa che se fai clic su alcuni dei nostri link, potremmo guadagnare una commissione. Vedi come è finanziato WPBeginner, perché è importante e come puoi supportarci. Ecco il nostro processo editoriale.

Il Toolkit WordPress Definitivo

Ottieni l'accesso GRATUITO al nostro toolkit - una raccolta di prodotti e risorse relative a WordPress che ogni professionista dovrebbe avere!

Interazioni del lettore

9 CommentsLeave a Reply

  1. Sto cercando di implementarlo sul mio sito ma non funziona

    2 Domande

    riesci a controllare il mio sito e verificare l'ID della div della sidebar?

    Inoltre, lo script enqueue dovrebbe essere get_stylesheet_directory_uri() . e non get_template_directory

    Grazie – mi piacerebbe molto farlo funzionare
    Roger

  2. Mi stavo chiedendo se questo si potesse fare invece di dissolvenza in entrata per dissolvenza in uscita di un widget fisso??

  3. Ciao, sto cercando di implementare questo nella mia pagina e non riesco a farlo funzionare. Ho aggiunto il file .js alla cartella js della directory del mio tema e l'ho aggiunto al mio functions.php e non appare alcun effetto di dissolvenza. Dove esattamente dovrei aggiungerlo nel mio functions.php dato che è un file grande?

    Sto usando twenty fourteen e l'ID della mia barra laterale è "content-sidebar" che ho modificato nel file .js. Ho alcuni altri widget nella barra laterale, quindi forse qualcosa è in conflitto?

    Qualsiasi aiuto è apprezzato! Grazie.

    • Ecco il mio codice .JS

      jQuery(document).ready(function($) { /** * Configurazione * Il contenitore per la tua barra laterale, ad esempio aside, #sidebar ecc. */

      var sidebarElement = $(‘div#content-sidebar’);

      // Controlla se la barra laterale esiste if ($(sidebarElement).length > 0) {

      // Ottieni l'ultimo widget nella barra laterale e la sua posizione sullo schermo

      var widgetDisplayed = false; var lastWidget = $(‘.widget:last-child’, $(sidebarElement)); var lastWidgetOffset = $(lastWidget).offset().top -100;

      // Nasconde l'ultimo widget $(lastWidget).hide();

      // Controlla se lo scroll dell'utente ha raggiunto la parte superiore dell'ultimo widget e lo visualizza $(document).scroll(function() {

      // Se il widget è stato visualizzato, non abbiamo bisogno di continuare a fare un controllo.

      if (!widgetDisplayed) { if($(this).scrollTop() > lastWidgetOffset) { $(lastWidget).fadeIn(‘slow’).addClass(‘wpbstickywidget’); widgetDisplayed = true; } } }); } });

  4. Ciao wpbeginner, adoro questo tweak e la soluzione che offri alla community, grazie mille! Ho una domanda, per favore, come posso integrare o se esiste un plugin/soluzione che possa essere utilizzata per interrogare i moduli di candidatura inviati dai candidati e i risultati vengano visualizzati nella dashboard di amministrazione, ad esempio; quanti candidati hanno meno di 25 anni? e il plugin dovrebbe recuperare il risultato dal database e mostrare i dettagli pertinenti in un bel formato tabellare che possa essere esportato in Excel. Possibile? Per favore, consiglia. Grazie

    • Non è un po' fuori tema? L'hai fatto apposta? Se hai una domanda per lo staff di WP, perché non usi la funzione di contatto in modo da non portare fuori tema il post del blog?

Lascia una risposta

Grazie per aver scelto di lasciare un commento. Tieni presente che tutti i commenti sono moderati secondo la nostra politica sui commenti, e il tuo indirizzo email NON verrà pubblicato. Si prega di NON utilizzare parole chiave nel campo del nome. Avviamo una conversazione personale e significativa.