Zaufane samouczki WordPress, kiedy ich najbardziej potrzebujesz.
Przewodnik dla początkujących po WordPressie
WPB Cup
25 milionów+
Witryny korzystające z naszych wtyczek
16+
Lata doświadczenia z WordPressem
3000+
Samouczki WordPress od ekspertów

Jak dodać efekt zanikania do ostatniego widżetu paska bocznego w WordPress przy użyciu jQuery

Ostatnio jeden z naszych użytkowników zapytał nas, jak dodać efekt zanikania dla ostatniego widżetu na pasku bocznym. Ten popularny efekt jQuery jest używany na wielu znanych stronach internetowych i blogach. Gdy użytkownik przewija stronę w dół, ostatni widżet na pasku bocznym zanika i staje się widoczny. Animacja sprawia, że widżet przyciąga wzrok i jest zauważalny, co znacznie zwiększa współczynnik klikalności. W tym artykule pokażemy, jak dodać efekt zanikania do ostatniego widżetu na pasku bocznym w WordPress przy użyciu jQuery.

Poniżej znajduje się demo tego, jak to będzie wyglądać:

Zanikanie ostatniego widżetu paska bocznego w WordPressie

W tym samouczku będziesz modyfikować pliki swojego motywu. Zaleca się wykonanie kopii zapasowej motywu przed dalszymi działaniami.

Krok 1: Dodawanie kodu JavaScript dla efektu zanikania

Najpierw musisz dodać kod jQuery do swojego motywu WordPress jako oddzielny plik JavaScript. Zacznij od otwarcia pustego pliku w edytorze tekstu, takim jak Notatnik. Następnie zapisz ten pusty plik jako wpb_fadein_widget.js na pulpicie i wklej do niego poniższy kod.

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;  
}
}
});
}
});

Najważniejsza linia w tym kodzie to var sidebarElement = $('div#secondary');.

To jest identyfikator elementu div zawierającego Twój pasek boczny. Ponieważ każdy motyw może używać różnych kontenerów paska bocznego, musisz znaleźć identyfikator kontenera, którego Twój motyw używa dla paska bocznego.

Możesz to sprawdzić, używając narzędzia „Zbadaj element” w Google Chrome. Kliknij prawym przyciskiem myszy na swoim pasku bocznym w Google Chrome, a następnie wybierz „Zbadaj element”.

Znajdowanie identyfikatora kontenera paska bocznego w kodzie źródłowym

W kodzie źródłowym będziesz mógł zobaczyć swój kontener bocznego paska. Na przykład, domyślny motyw Twenty Twelve używa secondary, a Twenty Thirteen używa tertiary jako identyfikatora dla kontenera bocznego paska. Musisz zastąpić secondary identyfikatorem swojego kontenera bocznego paska.

Następnie musisz użyć klienta FTP, aby przesłać ten plik do folderu js w katalogu motywu WordPress. Jeśli katalog Twojego motywu nie ma folderu js, musisz go utworzyć, klikając prawym przyciskiem myszy i wybierając „Utwórz nowy katalog” w swoim kliencie FTP.

Krok 2: Dodawanie skryptów JavaScript w motywie WordPress

Teraz, gdy twój skrypt jQuery jest gotowy, czas dodać go do swojego motywu. Użyjemy właściwej metody dodawania javascriptu do swojego motywu, więc po prostu wklej poniższy kod do pliku functions.php swojego motywu.

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

To wszystko, teraz możesz dodać widżet do swojego paska bocznego, który chcesz, aby pojawił się z efektem zanikania, a następnie odwiedź swoją stronę internetową, aby zobaczyć go w akcji.

Krok 3: Sprawienie, by ostatni widżet był lepki po efekcie zanikania

Często pożądaną funkcją z efektem zanikania jest sprawienie, aby ostatni widżet paska bocznego przewijał się wraz z przewijaniem przez użytkownika. Nazywa się to pływającym widżetem lub przyklejonym widżetem.

Jeśli spojrzysz na powyższy kod jQuery, zauważysz, że dodaliśmy klasę CSS wpbstickywidget do widżetu po efekcie zanikania. Możesz użyć tej klasy CSS, aby ostatni widżet był przyklejony po jego zaniknięciu. Wystarczy wkleić ten kod CSS do arkusza stylów Twojego motywu.

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

Zachęcamy do modyfikacji CSS, aby spełnić Twoje potrzeby. Możesz zmienić kolor tła lub czcionki, aby widżet był jeszcze bardziej widoczny. Jeśli chcesz, możesz nawet dodać efekt płynnego przewijania do góry obok ostatniego widżetu, co pozwoli użytkownikom szybko przewinąć z powrotem.

Mamy nadzieję, że ten artykuł pomógł Ci dodać efekt zanikania do ostatniego widżetu na pasku bocznym WordPress. Więcej poradników jQuery znajdziesz w najlepszych samouczkach jQuery dla WordPress.

Jeśli podobał Ci się ten artykuł, zasubskrybuj nasz kanał YouTube z samouczkami wideo dotyczącymi WordPressa. Możesz nas również znaleźć na Twitterze i Google+.

Ujawnienie: Nasze treści są wspierane przez czytelników. Oznacza to, że jeśli klikniesz w niektóre z naszych linków, możemy otrzymać prowizję. Zobacz jak finansowany jest WPBeginner, dlaczego to ważne i jak możesz nas wesprzeć. Oto nasz proces redakcyjny.

Ostateczny zestaw narzędzi WordPress

Uzyskaj BEZPŁATNY dostęp do naszego zestawu narzędzi – kolekcji produktów i zasobów związanych z WordPress, które powinien mieć każdy profesjonalista!

Interakcje czytelników

9 CommentsLeave a Reply

  1. Próbuję to zaimplementować na mojej stronie, ale nie działa

    2 pytania

    czy możesz sprawdzić moją stronę i zweryfikować identyfikator div paska bocznego?

    Czy enqueue script powinien być get_stylesheet_directory_uri() . a nie get_template_directory

    Dzięki – chętnie bym to uruchomił
    Roger

  2. Cześć, próbuję zaimplementować to na mojej stronie i nie mogę sprawić, by działało. Dodałem plik .js do folderu js mojego katalogu motywu i dodałem go do mojego functions.php, ale nie widać żadnego zanikania. Gdzie dokładnie powinienem go dodać w moim functions.php, ponieważ jest to duży plik.

    Używam motywu twenty fourteen, a mój identyfikator paska bocznego to „content-sidebar”, który zmieniłem w pliku .js. Mam kilka innych widżetów na pasku bocznym, więc może coś się kłóci?

    Każda pomoc jest mile widziana! Dzięki.

    • Oto mój kod JS

      jQuery(document).ready(function($) { /** * Konfiguracja * Kontener dla twojego paska bocznego, np. aside, #sidebar itp. */

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

      // Sprawdź, czy istnieje pasek boczny
      if ($(sidebarElement).length > 0) {

      // Pobierz ostatni widżet na pasku bocznym i jego pozycję na ekranie

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

      // Ukryj ostatni widżet $(lastWidget).hide();

      // Sprawdź, czy przewijanie użytkownika dotarło do góry ostatniego widżetu i wyświetl go $(document).scroll(function() {

      // Jeśli widżet został już wyświetlony, nie musimy dalej sprawdzać.

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

    • Spróbuj dezaktywować wszystkie swoje wtyczki i sprawdź, czy działa. Możesz również użyć narzędzia „Inspect Element”, aby sprawdzić, czy nie ma żadnych błędów.

      Admin

  3. Cześć wpbeginner, uwielbiam tę modyfikację i rozwiązania, które dajesz społeczności, dzięki wielkie! Mam pytanie, proszę, jak mogę zintegrować lub czy istnieje wtyczka/rozwiązanie, które można wykorzystać do zapytania o formularze zgłoszeniowe złożone przez kandydatów, a wyniki pojawią się w panelu administracyjnym, na przykład; ilu kandydatów ma poniżej 25 lat? i wtyczka powinna pobrać wyniki z bazy danych i wyświetlić odpowiednie szczegóły w ładnej tabeli, którą można wyeksportować do Excela. Możliwe? Proszę o poradę. Dzięki

    • Możesz to sprawdzić w Gravity Forms, ale będziesz musiał znać trochę PHP. W przeciwnym razie będziesz musiał zapłacić programiście, aby pomógł Ci osiągnąć to, czego potrzebujesz.

    • Czy to nie jest trochę poza tematem? Zrobiłeś to celowo? Jeśli masz pytanie do personelu WP, dlaczego nie skorzystasz z funkcji kontaktu, aby nie odbiegać od tematu wpisu na blogu?

Zostaw odpowiedź

Dziękujemy za pozostawienie komentarza. Pamiętaj, że wszystkie komentarze są moderowane zgodnie z naszą polityką komentowania, a Twój adres e-mail NIE zostanie opublikowany. Prosimy NIE używać słów kluczowych w polu nazwy. Prowadźmy osobistą i znaczącą rozmowę.