Trusted WordPress tutorials, when you need them most.
Beginner’s Guide to WordPress
Puchar WPB
25 Million+
Websites using our plugins
16+
Years of WordPress experience
3000+
WordPress tutorials
by experts

Jak dodać efekt płynnego przewijania do góry w WordPress przy użyciu jQuery

Uwaga redakcyjna: Otrzymujemy prowizję z linków partnerskich na WPBeginner. Prowizje nie mają wpływu na opinie i oceny naszych redaktorów. Dowiedz się więcej o Proces redakcyjny.

Chcesz dodać efekt płynnego przewijania do góry strony na twojej witrynie internetowej WordPress?

Efekt przewijania do góry jest świetny, gdy masz długą stronę i chcesz dać swoim użytkownikom łatwy sposób na powrót do góry. Pomaga to poprawić komfort korzystania z twojej witryny internetowej.

W tym artykule pokażemy, jak dodać efekt płynnego przewijania do góry w WordPressie za pomocą jQuery i wtyczki.

How to scroll to top effect using jQuery

Czym jest Smooth Scroll i kiedy należy go używać?

O ile witryna nie ma przypiętego menu nagłówka, użytkownicy, którzy przewijają do dołu długiej strony WordPress lub wpisu, muszą ręcznie przesuwać lub przewijać z powrotem do góry, aby poruszać się po witrynie.

Może to być naprawdę irytujące i często użytkownicy po prostu naciskają przycisk Wstecz i wychodzą. Dlatego potrzebujesz przycisku, który szybko przekieruje użytkowników na górę strony.

Możesz dodać tę funkcjonalność jako prosty odnośnik tekstowy bez użycia jQuery, tak jak poniżej:

<a href="#" title="Back to top">^Top</a>

To wyśle użytkowników na górę, przewijając całą stronę w milisekundach. Działa, ale efekt może być drażniący, podobnie jak w przypadku wyboju na drodze.

Płynne przewijanie jest tego przeciwieństwem. Przesunie użytkownika z powrotem na górę z przyjemnym wizualnie efektem. Korzystanie z takich elementów może drastycznie poprawić wrażenia użytkownika na twojej witrynie.

To powiedziawszy, zobaczmy, jak można dodać efekt płynnego przewijania do góry za pomocą wtyczki WordPress i jQuery.

Jak dodać efekt płynnego przewijania do góry za pomocą wtyczki WordPress?

Ta metoda jest zalecana dla początkujących, ponieważ można dodać efekt przewijania do góry do witryny internetowej WordPress bez dotykania ani jednej linii kodu.

Pierwszą rzeczą, którą musisz zrobić, to zainstalować i włączyć wtyczkę WPFront Scroll Top. Jeśli potrzebujesz pomocy, zapoznaj się z naszym przewodnikiem na temat instalacji wtyczki WordPress.

Po włączaniu możesz przejść do Ustawienia ” Scroll Top z twojego kokpitu WordPress. Tutaj można skonfigurować wtyczkę i dostosować efekt płynnego przewijania.

Najpierw musisz kliknąć pole wyboru „Włączone”, aby włączyć przycisk przewijania do góry na twojej witrynie. Następnie zobaczysz opcje edycji przesunięcia przewijania, rozmiaru przycisku, krycia, czasu zanikania, czasu przewijania i innych.

Edit WPfront scroll top settings

Jeśli przewiniesz w dół, znajdziesz więcej opcji, takich jak edycja czasu automatycznego ukrywania, włączanie opcji ukrywania przycisku na małych urządzeniach i ukrywanie go na ekranie wp-admin.

Można również edytować sposób działania przycisku po jego kliknięciu. Domyślnie będzie on przewijał do góry strony, ale możesz zmienić go tak, by przewijał do konkretnego elementu wpisu lub nawet odnośnika do strony.

Istnieje również opcja zmiany lokalizacji przycisku. Domyślnie pojawi się on w prawym dolnym rogu ekranu, ale można go również przenieść do dowolnego innego rogu.

More edit WPfront scroll top settings

Wtyczka WPFront Scroll Top oferuje również filtry umożliwiające wyświetlanie przycisku przewijania do góry tylko na wybranych stronach.

Normalnie pojawi się on na wszystkich stronach twojego bloga WordPress. Możesz jednak przejść do sekcji „Wyświetlanie na stronach” i wybrać, gdzie chcesz wyświetlać efekt przewijania do góry.

Choose where to display the effect

Wtyczka oferuje również gotowe projekty przycisków do wyboru. Powinieneś być w stanie łatwo znaleźć projekt, który pasuje do twojej witryny.

Jeśli nie możesz znaleźć gotowego przycisku obrazu, który działa dla Ciebie, istnieje możliwość przesłania własnego obrazka z biblioteki multimediów WordPress.

Choose an image button

Po zakończeniu kliknij przycisk „Zapisz zmiany”.

Możesz teraz przejść na swoją witrynę internetową, aby zobaczyć przycisk przewijania do góry w działaniu.

Scroll to top button preview

Dodawanie efektu płynnego przewijania do góry za pomocą jQuery w WordPress

Ta metoda nie jest zalecana dla początkujących. Jest odpowiednia dla osób, które swobodnie edytują motywy, ponieważ obejmuje dodawanie kodu do twojej witryny internetowej.

Będziemy używać jQuery, niektórych CSS i pojedynczej linii kodu HTML w twoim motywie WordPress, aby dodać efekt płynnego przewijania do góry.

Najpierw otwórz edytor tekstu, taki jak Notatnik i utwórz plik. Zapisz go jako smoothscroll.js.

Następnie należy skopiować i wkleić ten kod do pliku:

jQuery(document).ready(function($){
	$(window).scroll(function(){
        if ($(this).scrollTop() < 200) {
			$('#smoothup') .fadeOut();
        } else {
			$('#smoothup') .fadeIn();
        }
    });
	$('#smoothup').on('click', function(){
		$('html, body').animate({scrollTop:0}, 'fast');
		return false;
		});
});

Następnie możesz zapisać plik i przesłać go do katalogu /js/ w twoim katalogu motywu WordPress. Aby uzyskać więcej informacji, zapoznaj się z naszym przewodnikiem na temat korzystania z FTP do przesyłania plików do WordPress.

Jeśli twój motyw nie ma katalogu /js/, możesz go utworzyć i przesłać do niego plik smoothscroll.js. Możesz również zapoznać się z naszym przewodnikiem po plikach i strukturze katalogów WordPress, aby uzyskać więcej informacji.

Ten kod to skrypt jQuery, który doda efekt płynnego przewijania do przycisku przenoszącego użytkowników na górę strony.

Następną rzeczą, którą musisz zrobić, jest wczytywanie pliku smoothscroll.js w twoim motywie. Aby to zrobić, wywołamy skrypt w WordPress.

Następnie wystarczy skopiować i wkleić ten kod do pliku functions. php twojego motywu. Nie zalecamy bezpośredniej edycji plików motywu, ponieważ najmniejszy błąd może zepsuć twoją witrynę. Zamiast tego możesz użyć wtyczki takiej jak WPCode i postępować zgodnie z naszym poradnikiem dotyczącym dodawania własnych fragmentów kodu w WordPress.

wp_enqueue_script( 'smoothup', get_template_directory_uri() . '/js/smoothscroll.js', array( 'jquery' ), '',  true );

W powyższym kodzie powiedzieliśmy WordPressowi, aby wczytywał nasz skrypt, a także bibliotekę jQuery, ponieważ nasza wtyczka jest od niej zależna.

Teraz, gdy dodaliśmy część jQuery, dodajmy rzeczywisty odnośnik do naszej witryny WordPress, który zabierze użytkowników z powrotem na górę. Wystarczy wkleić ten kod HTML w dowolnym miejscu w pliku footer. php twojego motywu. Jeśli potrzebujesz pomocy, zapoznaj się z naszym poradnikiem na temat dodawania kodu nagłówka i stopki w WordPress.

<a href="#top" id="smoothup" title="Back to top"></a>

Być może zauważyłeś, że kod HTML zawiera odnośnik, ale nie zawiera tekstu kotwicy. To dlatego, że użyjemy ikonki obrazka ze strzałką w górę, aby wyświetlić przycisk powrotu do góry.

W tym przykładzie używamy ikonki 40x40px. Wystarczy dodać poniższy własny CSS do arkusza stylów twojego motywu.

W tym kodzie używamy ikonki jako obrazka tła przycisku i ustawiamy ją w naprawionej pozycji. Dodaliśmy również małą animację CSS, która obraca przycisk, gdy użytkownik najedzie na niego myszką.

#smoothup {
height: 40px;
width: 40px;
position:fixed;
bottom:50px;
right:100px;
text-indent:-9999px;
display:none;
background: url("https://www.example.com/wp-content/uploads/2013/07/top_icon.png");
-webkit-transition-duration: 0.4s;
-moz-transition-duration: 0.4s; transition-duration: 0.4s;
}

#smoothup:hover {
-webkit-transform: rotate(360deg) }
background: url('') no-repeat;
}

W powyższym CSS upewnij się, że zastąpiłeś https://www.example.com/wp-content/uploads/2013/07/top_icon.png adresem URL obrazka, którego chcesz użyć. Możesz przesłać swoją własną ikonkę obrazu za pomocą narzędzia do przesyłania multimediów WordPress, skopiować adres URL obrazka, a następnie wkleić go do kodu.

Mamy nadzieję, że ten artykuł pomógł ci dodać efekt płynnego przewijania do góry na twojej witrynie za pomocą jQuery. Warto również zapoznać się z naszą ekspercką listą najlepszych wtyczek WordPress dla małych firm i naszym przewodnikiem krok po kroku, jak założyć sklep internetowy.

If you liked this article, then please subscribe to our YouTube Channel for WordPress video tutorials. You can also find us on Twitter and Facebook.

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

Avatar

Editorial Staff at WPBeginner is a team of WordPress experts led by Syed Balkhi with over 16 years of experience in WordPress, Web Hosting, eCommerce, SEO, and Marketing. Started in 2009, WPBeginner is now the largest free WordPress resource site in the industry and is often referred to as the Wikipedia for WordPress.

Najlepszy zestaw narzędzi WordPress

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

Reader Interactions

24 komentarzeZostaw odpowiedź

  1. Syed Balkhi says

    Hey WPBeginner readers,
    Did you know you can win exciting prizes by commenting on WPBeginner?
    Every month, our top blog commenters will win HUGE rewards, including premium WordPress plugin licenses and cash prizes.
    You can get more details about the contest from here.
    Start sharing your thoughts below to stand a chance to win!

  2. Jiří Vaněk says

    Previously, I didn’t have a 'back to top’ button on the page, but as my articles became longer and longer, I didn’t want users to spend several seconds scrolling. I started using this exact plugin, and it’s fantastic. It significantly enhances user comfort, even though at first glance it might seem unnecessary. It isn’t.

  3. Marco says

    The Jquery method didn’t work for me using a Twenty-seventeen child theme. Oh well. The hyperlink version did work perfectly, thankfully, and it’s good enough for me.

    • Marco says

      One question…could one reason why this is not working for me (the jquery method) be because my WordPress installation is in a subfolder? It’s the only reason I can think of.

  4. Taffeltrast says

    Would love this, but it break the footer.php. The footer simply does not load.

    When i try ad it to footer.php i get „There is a syntax error on line 14. etc etc”, and when i try upload it anyway, the footer does not load.

  5. oliver says

    thanks a lot, simple and effective.
    my two cents, if you allready have a custom.js file in your theme you can simply add the jquery function in this file instead of creating a new file and enqueue again.

    Personnally i prefer to have all my small scripts in one file.

  6. Stuart says

    Child Theme Designed by Blank |

    <?php }
    add_action('wp_head', 'my_favicon');

    What am I doing wrong ? This is my funtions.php new to wp_enqueue_scripts.

  7. Stuart says

    Twenty Fifteen-Child Theme made a Js folder added all the wp_enqueue_script but no dice not sure what went wrong. I want to use less plugins as possible they seem to slow WordPress sites down. Added A favicon perfect wp_enqueue_script kind of new to me. Any help?

  8. Donald says

    Hi, does this still work? The icon appears (if I temporarily change the CSS to display:block), the script shows up as loaded in the Firefoxe developers’ toolbox console. However I get the following error message for line 1:

    'SyntaxError: missing ; before statement’

    I’ve copied the script as above:

    01 jQuery(document).ready(function($){
    02 $(window).scroll(function(){
    03 if ($(this).scrollTop() < 200) {
    04 $('#smoothup') .fadeOut();
    05 } else {
    06 $('#smoothup') .fadeIn();
    07 }
    08 });
    09 $('#smoothup').on('click', function(){
    10 $('html, body').animate({scrollTop:0}, 'fast');
    11 return false;
    12 });
    13 });

    Can anyone see what the problem might be?
    Donald

  9. jaybob says

    Hi, its working fine. Thank you for the tutorial but i only have just one problem, the image appears to quick. can i do something to appear later / a little bit down, after scrolling?

  10. Aaron says

    This is a very clean way to pull this off. By far my favorite I’ve found.

    Quick question… I have put it in my footer.php file… How can I get it to stop sticking at a certain point? For example, I have a footer that is 575px tall and I don’t want the icon going into that area. Basically stop the fixed position at say, 600px from the bottom of the page.

  11. emanuele says

    Hi,
    is possible to add smooth scroll in menu for scroll page?…i have create a one page template and i want to scroll it by menu…thank you

    • StefsterNYC says

      If I understand you correctly you want to add it to the main menu nav? Correct? Simply use the same selector name but change the css completely. So that the image won’t appear.
      Make sense?

  12. Paul says

    Thanks à lot for this tip ! However I’ve got a problem. When I reduce the size of the screen, my arrow go away while I want it in a specific place.

    Is there a way to fix that ?

    Thanks

    Paul

    • Paul says

      I found a solution for my problem. I just had to change my css to :

      #smoothup {
      top: 572px;
      left: auto;
      margin-left: -68px;
      }

  13. Steven Wolock says

    Thanks for this! It works great.

    Question: Is that closed bracket correct after -webkit-transform: rotate(360deg)?

    • WPBeginner Support says

      There could be any possible reasons. First make sure you have uploaded the image, then check that the background: url has the correct URL and that it leads to your image. Lastly check that jquery and your .js file is loaded. Lastly, try tweaking CSS values for display, position, and text-indent.

      Administrator

    • etech0 says

      I figured it out – I had to change the 40px height and width to conform with my image.
      Thanks for a great tutorial!

Zostaw odpowiedź

Dziękujemy za pozostawienie komentarza. Pamiętaj, że wszystkie komentarze są moderowane zgodnie z naszymi polityka komentarzy, a Twój adres e-mail NIE zostanie opublikowany. NIE używaj słów kluczowych w polu nazwy. Przeprowadźmy osobistą i konstruktywną rozmowę.