Cum pot muta rezultatele căutării pe o pagină specifică?

21 feb. 2011, 17:13:47
Vizualizări: 21K
Voturi: 7

Mă întrebam dacă este posibil să afișez rezultatele căutării WordPress pe o pagină diferită?

În prezent, acestea sunt afișate la http://www.mysite.com/?s=searchterm dar aș dori să fie afișate pe pagina mea template search-results, deci la http://www.mysite.com/search/?s=searchterm.

Este posibil acest lucru?

Orice ajutor este apreciat, S.

0
Toate răspunsurile la întrebare 4
0

Ați creat o pagină cu slug-ul search pentru a "captura" acel URL, dar WordPress folosește implicit acel URL pentru rezultatele căutării. Deci ați avut "noroc" că acest lucru a funcționat pentru dvs., iar acesta este motivul pentru care metoda superioară de redirecționare menționată va funcționa.

Prin urmare, în loc să creați o pagină "falsă" pentru a ține șablonul, ar trebui pur și simplu să redenumiți șablonul în search.php, așa cum a sugerat tnorthcutt. Dacă doriți totuși să aveți conținut din pagina definită în zona de administrare, vă sugerez să redenumiți această pagină și să o obțineți prin get_posts() sau o altă metodă, deoarece bucla principală va conține rezultatele căutării, nu această pagină specifică.

22 feb. 2011 10:19:08
0

Am avut o problemă similară recent unde rezultatele căutării mergeau la root în loc de slug-ul /blog/ unde voiam de fapt să fie afișate rezultatele. Am rezolvat-o creând searchform.php și am scris un șablon personalizat pentru căutare:

<form role="search" method="get" id="searchform" action="<?php echo home_url( '/blog/' ); ?>">
    <div>
        <label class="screen-reader-text" for="s">Caută:</label>
        <input type="text" value="" name="s" id="s" />
        <input type="submit" id="searchsubmit" value="Caută" />
    </div>
</form>

Secretul stă în partea <?php echo home_url( '/blog/' ); ?>. În mod implicit WordPress va rezolva către directorul principal, astfel: <?php echo home_url( '/' ); ?>. Deci tot ce trebuie să faci este să specifici în ce director vrei să fie afișate rezultatele căutării. Dacă searchform.php există în tema ta, acesta va fi folosit. Dacă nu, se va folosi formularul implicit inclus în funcțiile de bază WordPress.

27 nov. 2012 01:50:59
0

Se pare că ar trebui doar să redenumești pagina de șablon. Încearcă să creezi un fișier șablon search.php: http://codex.wordpress.org/Theme_Development#Search_Results_.28search.php.29

21 feb. 2011 17:18:07
0

Încearcă acest plugin (sau citește codul sursă pentru a vedea cum este realizată redirecționarea - sunt doar câteva linii de cod).

http://wordpress.org/extend/plugins/nice-search/

21 feb. 2011 17:16:05