Många av våra läsare har frågat om att ändra standard URL-sluggen för WordPress-sökning. Det är en vanlig förfrågan, eftersom standardformatet (http://example.com/?s=search-term) inte är särskilt användarvänligt eller SEO-optimerat.
Webbplatsägare föredrar ofta en renare struktur, som http://example.com/search/search-term, för bättre användarupplevelse och sökmotorsynlighet.
Vi har hittat 2 effektiva metoder för att anpassa sök-URL-sluggen i WordPress. I den här guiden kommer vi att gå igenom båda metoderna och hjälpa dig att skapa mer professionella och SEO-vänliga sök-URL:er för din webbplats. Låt oss komma igång!
Varför ändra standard URL-slug för search i WordPress?
Som standard använder WordPress en sökmotorsoptimerande URL-struktur för alla pages på din website. Vanligtvis ser sökmotorsoptimerande URL:er i WordPress ut så här:
http://example.com/some-post/
http://example.com/2018/03/news-article/
http://example.com/category/some-category/
Som du ser är dessa URL:er ganska lätta för besökarna att förstå. De kan helt enkelt titta i webbläsarens adressfält och se var de befinner sig i layouten på din site.
Dessa URL:er ger också sökmotorer användbar information om sidan så att de kan ranka den korrekt och visa den för personer som gillar content som ditt.
Men när en WordPress-användare gör en sökning på din webbplats ser webbadressen vanligtvis ut ungefär så här:
http://example.com/?s=search-term
De extra ?s=-tecken gör denna URL svårare att läsa och förstå, vilket kan förvirra både search engines och dina besökare. Genom att ändra den här URL:en kan du förbättra din search i WordPress och förbättra din sökmotorsoptimering.
Med det sagt, låt oss se hur du kan ändra sökadressen. Använd bara länkarna nedan för att hoppa direkt till den metod du vill använda:
Metod 1: Ändra WordPress Search URL Slug med hjälp av WPCode (rekommenderas)
Det enklaste sättet att ändra standard WordPress search slug är genom att använda WPCode.
WPCode är det mest populära code snippets plugin som används av över 2 miljoner WordPress websites. Det allow you to add code snippets in WordPress without having to edit your site’s functions.php file.
Det första du behöver göra är att installera och aktivera det gratis pluginet WPCode på din website. För mer detaljer, se vår Step-by-Step guide om hur du installerar ett WordPress plugin.
När du är aktiverad, gå till Code Snippets ” Add Snippet.
Då kommer du till sidan ”Add Snippet”, där du kan se WPCodes bibliotek med färdiga snippets.
För att lägga till ditt eget snippet håller du bara muspekaren över ”Lägg till din anpassade kod (nytt snippet)”. Klicka sedan på ”+ Add Custom Snippet” när det visas.
Därefter måste du välja kodtyp från de alternativ som visas. För den här poradniken klickar du på ”PHP fragment kodu.
På sidan ”Skapa anpassat fragment” kan du nu börja med att ange en titel för det anpassade kodfragmentet.
Det kan vara vad som helst som hjälper dig att identifiera snippet i WordPress admin area.
Du kan sedan gå vidare och klistra in följande i rutan ”Code Preview”:
function wpb_change_search_url() {
if ( is_search() && ! empty( $_GET['s'] ) ) {
wp_redirect( home_url( "/search/" ) . urlencode( get_query_var( 's' ) ) );
exit();
}
}
add_action( 'template_redirect', 'wpb_change_search_url' );
Detta code snippet ersätter ”/?s=search term”-tecknen med ”search”, så din slug kommer att se ut ungefär som: http://example.com/search/wordpress
Om du vill använda något annat än ”search” i din URL anpassar du bara kodavsnittet ovan.
När du är nöjd med koden är det dags att ändra var snippet körs genom att rulla till ”Insertion”-boxen.
För att börja, se till att ”Auto Insert” är valt. Öppna sedan dropdown för ”Location” och välj ”Frontend Only” eftersom vi bara kommer att använda den här koden på vår sites front-end som vänder sig till allmänheten.
När fragmentet kodu är konfigurerat som du vill ha det kan du aktivera det genom att klicka på ”Active”-knappen.
Glöm inte att klicka på ”Save Snippet”.
Nu besöker du din site och utför en search.
Om du tar en titt på adressfältet i din webbläsare ser du den nya sökmotorsoptimerande URL:en.
Metod 2: Ändra WordPress Search URL Slug via .htaccess-fil
Ett annat alternativ är att editera webbplatsens .htaccess-fil. Den här metoden är mer komplicerad, så den rekommenderas inte för Beginner. Det tillåter dig dock att ändra sök-URL-sluggen utan att använda ett code snippet plugin.
För att komma åt .htaccess-filen behöver du en FTP-klient som FileZilla, eller så kan du använda filhanteraren i cPanel på ditt WordPress webbhotell.
Om det är första gången du använder FTP kan du läsa vår kompletta guide om hur du ansluter till din site med FTP.
För exemplets skull kommer vi att använda Bluehosts app för filhantering. Om du är en Bluehost-användare, gå vidare och logga in på din webbhotell dashpanel. Navigera sedan till tabben ”Websites” och click ”Settings” för den site du vill edit.
Därefter går du till Quick Links section.
Där klickar du på ”File Manager”. Around the same area, you will also see your document root path (usually public_html), where you can find the .htaccess file.
Du bör nu vara inne i Bluehosts filhanterare.
När du har hittat .htaccess-filen i mappen public_html högerklickar du på den och väljer ”Edit”.
Klistra nu in följande kod längst ner i filen:
# Change WordPress search URL
RewriteCond %{QUERY_STRING} \\?s=([^&]+) [NC]
RewriteRule ^$ /search/%1/? [NC,R,L]
Detta kommer att ändra WordPress search slug till följande:
http://example.com/search/your-search-query/
Du kan ändra denna slug genom att customize code snippet.
När du har gjort det, glöm inte att clicka på ”Save Changes”.
Nu, om du utför en search på din webbplats, kommer du att notera att den använder den nya sluggen.
Bonus tips: Använd SearchWP för att skapa en customize WordPress Search Engine
Det built-in WordPress search block fungerar bra som search engine för din website. Men om du vill erbjuda en bättre search-upplevelse behöver du SearchWP.
Med detta plugin för WordPress-sökning kan du skapa customize sökalgoritmer och formulär som bäst passar dina användares och din websites behov. Till exempel kan du lägga till en funktion för search efter kategori så att dina läsare bara kan fokusera på att titta igenom content i en viss kategori.
För att lära dig mer om detta search plugin, kan du läsa vår fullständiga SearchWP review.
Vi hoppas att den här artikeln hjälpte dig att ändra standard URL-sluggen för sökning i WordPress. Du kan också gå igenom vår artikel om hur du anpassar sökresultatsidan i WordPress och vår nybörjarguide om hur du gör en smart WooCommerce-produktsökning.
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.
Syed Balkhi
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!
Brandon Boyd
Hi, I just came across this today and it’s been super helpful. Is there anyway to remove the ”You Search For” prefix in the page title when doing a search?
WPBeginner Support
That would be added by your specific theme first. We would recommend checking with the support for your theme to see if they have a built-in or recommended way for changing that without needing to modify your theme’s files.
Administratör
Kedar Bhogle
Thank you Respected Sir/Madam,
I am looking for such code because I want to use theme default theme’s search box using ”Google Custom Search Engine” for extra revenue. Finally I have done using this code (all credit goes to you Sir / Madam). I have basis knowledge about html ( I don’t learn @ any institution, I learned online….. Let’s go),
Very Very Thanks again…..
WPBeginner Support
Glad our guide could help
Administratör
mostafa elaissaoui
thank you
this is helpful
WPBeginner Support
You’re welcome
Administratör
Josh
Is there a way to change /search/ to /somethingelse/
WPBeginner Support
You would use the first method and replace the word search with the word you wanted
Administratör
Josh
Works great. Any idea why this might leave off closing / as in url.com/search/search-term instead of /search-term/
WPBeginner Support
For the first method, depending on your permalinks it may not automatically add a trailing slash, if you wanted one you would need to add the trailing slash to the wp_redirect function or modify your permalink settings.
Administratör
Carlos
Method 1 doesn’t work if I change ”/search/” for another term. I triead ”/busca/” that means search in portuguese…
Richard Talbot
Carlos is right. Same goes for method 2 (htacess method. The only word it will work for is ”search”. If you try any other word like ”result”, ”busca”, ”whatever”, etc, then you get a 404.
Very confusing as to why it only works for the word ”search”.
WPBeginner Support
You may want to ensure you cleared your caching if you’ve edited the code from the article for a word other than search for one possible reason.
Administratör
Allewar
These methods alone won’t work, they only make the «pretty» slug, but the keyword you need to change is the WP rewrite rule for the query.
You can use this code in your theme’s functions.hp to use any word you want (also includes the rule for the ’page’ slug):
function re_rewrite_rules() {
global $wp_rewrite;
$wp_rewrite->search_base = ’buscar’;
$wp_rewrite->pagination_base = ’pagina’;
$wp_rewrite->flush_rules();
}
add_action(’init’, ’re_rewrite_rules’);
Cristina
I’ve used the .htaccess metod and it works. Ths a lot!
Joseph
Do you meant that the search result page can be indexed by search engine?
However, the content in the search result page is a kind of duplicate content as what we can find in the archieve, category or tag pages.
PS. I am not an expert in SEO and might have wrong concept.
Linas
Thank You! Works great. Used 1st method with functions.php