Kait pandangan yang ingin Anda gunakan adalah hook_views_pre_build
yang dipanggil sebelum kueri dibuat. Sekarang ini dengan asumsi Anda memiliki beberapa pengalaman pengembangan modul dasar dan bahwa Anda terbiasa dengan pandangan api.
Anda harus dapat melakukan:
/*
* Implementation of hook_views_pre_build().
*/
function hook_views_pre_build(&$view) {
// Make sure this is only for the specific view you want to modified
if ($view->name == "foo_bar") {
// Get the x-y value from where you're storing it (in your example the node object).
$pager_count = get_count_for_this_node();
// Lets also make sure that this is a number so we won't destroy our view.
if (is_numeric($pager_count)) {
// Now lets set the pager item to what ever out count is.
$view->pager['items_per_page'] = $pager_count;
}
}
}
Di atas kami menggunakan hook pandangan yang dipanggil sebelum permintaan tampilan dibuat seperti itu pager dan segala sesuatu yang lain akan mencerminkan perubahan.
Peringatan: kait pandangan hanya boleh digunakan jika Anda mengerti apa yang sedang terjadi. Kode di atas ditulis untuk views-2.x.
Semoga ini membantu.
$view->items_per_page = $pager_count;
Untuk Drupal 7, Hanya harus menulis yang berikut ini:
Dalam contoh:
Saya menggunakan contoh kode oleh @ericduran.
sumber
Anda harus menggunakan fungsi preproses tampilan
sumber
Untuk memperbarui hasil tampilan dan pager di hook_views_pre_render, Anda dapat melakukan hal berikut:
Ini seharusnya bekerja !! ;)
sumber
Kode @tanmayk membantu saya. Dalam hook_views_pre_render ditambahkan hanya 2 baris kode ini
Tapi saya tidak perlu menambahkan hasilnya ke tampilan.
sumber