Fungsi yang Anda gunakan, wp_link_pages
Codex , tidak memiliki fitur yang Anda cari secara default.
Namun Anda dapat dengan mudah memperpanjangnya dengan menggunakan fungsi panggilan balik, terdaftar sebagai filter pada argumen fungsi itu:
add_filter('wp_link_pages_args', 'wp_link_pages_args_prevnext_add');
Filter kemudian akan memodifikasi parameter yang digunakan dalam fungsi tersebut sambil jalan dan menyuntikkan tautan yang hilang ke prev
dan next
argumen yang ditampilkan di sisi kiri dan kanan daftar tautan bernomor ( next_or_number' => 'number'
):
/**
* Add prev and next links to a numbered page link list
*/
function wp_link_pages_args_prevnext_add($args)
{
global $page, $numpages, $more, $pagenow;
if (!$args['next_or_number'] == 'next_and_number')
return $args; # exit early
$args['next_or_number'] = 'number'; # keep numbering for the main part
if (!$more)
return $args; # exit early
if($page-1) # there is a previous page
$args['before'] .= _wp_link_page($page-1)
. $args['link_before']. $args['previouspagelink'] . $args['link_after'] . '</a>'
;
if ($page<$numpages) # there is a next page
$args['after'] = _wp_link_page($page+1)
. $args['link_before'] . ' ' . $args['nextpagelink'] . $args['link_after'] . '</a>'
. $args['after']
;
return $args;
}
Pemakaian:
wp_link_pages(array(
'before' => '<p>' . __('Pages:'),
'after' => '</p>',
'next_or_number' => 'next_and_number', # activate parameter overloading
'nextpagelink' => __('Next'),
'previouspagelink' => __('Previous'),
'pagelink' => '%',
'echo' => 1 )
);
Jika tema Anda selalu menggunakan tautan prev dan next, maka Anda dapat sedikit mengubah fungsinya untuk menjadikannya perilaku default setiap kali number
(default) digunakan, jadi Anda perlu menulis lebih sedikit dalam tema Anda.
Ini adalah implementasi yang sedikit berbeda seperti yang disarankan oleh Velvet Blues .
The
wp_link_pages()
Fungsi hanya menunjukkan baik teks atau nomor, tidak pernah baik. Jika Anda melihat kode fungsi, Anda akan melihat bahwa tidak ada opsi untuk membuatnya berperilaku berbeda dengan melewatkan parameter.Yang sedang berkata, ada tiga cara untuk melakukan ini tanpa plugin:
wp_link_pages()
. Retasan yang sangat tidak efisien.Saya telah menulis artikel tentang bagaimana melakukan ini di blog saya. Pada dasarnya, saya menggunakan filter wp_link_pages_args dan menambahkan fungsi dalam file functions.php yang menambahkan opsi baru 'next_and_number'.
Hack WordPress: Menampilkan Nomor & Tautan Berikutnya / Sebelumnya dengan wp_link_pages ()
sumber
Coba ini, Anda bisa lebih menyesuaikannya. Tapi itu harus dilakukan sesuai keinginan Anda :-)
sumber
Saya tidak mengerti apa masalahnya ... Apakah Anda memiliki kesalahan?
Ini seharusnya bekerja:
Anda tidak perlu menambahkan next_or_number karena angka sudah merupakan default.
sumber
next_or_number
untuknext
. Tapi itu hanya menampilkan tautan 'Berikutnya' dan 'Sebelumnya', bukan angka!Kode ini ada di loop posting? Pengodean tidak masalah bagi saya. Berikut adalah contoh Codex tentang cara menggunakan:
sumber
Jawabannya berbeda, tetapi terinspirasi @ 荒野 无 灯 yang memutuskan untuk menghapus jawabannya. Imho itu yang terbaik, sebagai solusi paling mudah dan fleksibel:
Solusinya tergantung pada
paginate_links()
. Satu-satunya hal yang perlu diketahui adalah bahwa itubase
akan menjadi URl dari awal, ditambahkan oleh%_%
, yang kemudian akan digantikan olehformat
. Jadi selama kita menggunakanget_permalink().'%_%';
, kita tahu bahwa kita akan tetap pada pos saat ini. Di dalamformat
,#
diganti dengan nomor halaman:sumber