Cum să modifici fișierul functions al temei pentru a personaliza paginarea?

3 sept. 2010, 21:13:43
Vizualizări: 7.73K
Voturi: 1

În mod implicit, când adaugi <!--nextpage-->, sunt afișate următoarele linkuri: Pagini: 1 2

Am nevoie să înlocuiesc "Pagini:" cu o săgeată grafică care să ducă înapoi la pagina anterioară și să adaug o săgeată grafică la sfârșitul linkurilor care să ducă la pagina următoare. Presupun că există o modalitate de a face asta în fișierul functions?

0
Toate răspunsurile la întrebare 2
0

Specificați o imagine ca "nextpagelink" și "previouspagelink" în loc de << sau >>:

<?php wp_link_pages(array('before' => '<div class="pagenav"><strong>Navigare</strong>', 'after' => '</div>', 'next_or_number' => 'number', 'nextpagelink' => __('<img src="PUNE URL-UL IMAGINII AICI" alt="Pagina următoare" title="Pagina următoare" />'), 'previouspagelink' => __('<img src="PUNE URL-UL IMAGINII AICI" alt="Pagina anterioară" title="Pagina anterioară" />'))); ?>

De asemenea, aveți dreptate că implicit sunteți limitați la link-uri de tip "Numere" sau "Următor/Anterior", dar un plugin poate extinde această funcționalitate: http://wordpress.org/extend/plugins/wp-pagenavi/

Bonus: Adăugați acest cod în fișierul functions.php și va adăuga un buton "Pagina următoare" lângă butonul "Mai mult" în editorul WYSIWYG:

// Adaugă butonul Pagina Următoare în Editorul TinyMCE
add_filter('mce_buttons','wysiwyg_editor');
function wysiwyg_editor($mce_buttons) {
    $pos = array_search('wp_more',$mce_buttons,true);
    if ($pos !== false) {
        $tmp_buttons = array_slice($mce_buttons, 0, $pos+1);
        $tmp_buttons[] = 'wp_page';
        $mce_buttons = array_merge($tmp_buttons, array_slice($mce_buttons, $pos+1));
    }
    return $mce_buttons;
}
4 sept. 2010 18:37:07
3

Trebuie să recunosc că <!--nextpage--> nu este o funcționalitate foarte bine documentată (nici măcar nu există un buton pentru ea în interfața editorului de articole!). Dar este în continuare incredibil de utilă și am folosit-o de câteva ori pentru a împărți articole mai lungi pe propriul meu site.

Conform documentației existente, această etichetă utilizează funcția wp_link_pages(). Această funcție acceptă câțiva parametri care îți permit să stilizezi afișarea după nevoie.

În cazul tău, ai vrea să folosești argumentele next_page_link și previous_page_link.

Deci în partea de jos a fișierului single.php, folosește următorul cod pentru a genera link-urile către pagini:

<?php 

wp_link_pages( array(
    'before' => '<p>',
    'after' => '</p>',
    'next_or_number' => 'next', 
    'previouspagelink' => ' &laquo; ', 
    'nextpagelink' => ' &raquo;'
    )
); 

?>

Aceasta va înlocui numerele paginilor cu săgeți << și >>. De asemenea, va elimina textul "Pagini:" păstrând totuși link-urile într-un bloc <p></p>.

Legături utile:

3 sept. 2010 21:32:16
Comentarii

Mulțumesc, @EAMann. Am nevoie doar de o mică clarificare. Vreau ca acest lucru să apară pe o „pagină”, nu pe articole și trebuie să fie repetabil de mai multe ori pe o anumită pagină (clientul dorește până la 8-10 divizări de pagină pe pagină).

Codul pe care mi l-ai dat pentru partea de jos a șablonului de pagină se va aplica pentru fiecare instanță de divizare a paginii pe o anumită pagină?

Ray Gulick Ray Gulick
3 sept. 2010 22:36:56

De asemenea, este „fie” numere, fie linkuri anterioare/următoare? Nu pot avea ambele?

Ray Gulick Ray Gulick
3 sept. 2010 22:42:18

Deci o mică cercetare îmi spune că este repetabil (în esență, aceasta este diferența dintre <!--more--> și <!--nextpage-->). Încă mă întreb dacă pot afișa numerele de pagină ȘI linkurile anterioare/următoare.

Ray Gulick Ray Gulick
3 sept. 2010 23:04:30