Apakah DRUPAL_CACHE_PER_PAGE menghitung halaman halaman (mis. Halaman depan? Halaman = 3)?

8

Saya kira seluruh pertanyaan saya cukup banyak dalam judul ... Saya ingin tahu apakah blok yang menggunakan DRUPAL_CACHE_PER_PAGE di-cache di halaman pager (yaitu mysite.com/frontpage?page=3), atau jika permintaan pager diabaikan (jadi blok hanya akan di-cache sekali untuk frontpage, frontpage? page = 2, frontpage? page = 3, dll)?

Jordan Magnuson
sumber

Jawaban:

5

Iya.

Lihat drupal_page_get_cache()di bootstrap.inc:

if (drupal_page_is_cacheable()) {
  $cache = cache_get($base_root . request_uri(), 'cache_page');
  if ($cache !== FALSE) {
    $cache_hit = TRUE;
  }
  return $cache;
}

request_uri() mengembalikan seluruh jalur termasuk argumen GET.

Berdir
sumber
1
Astaga. Jadi jika saya memiliki frontpage? Page = 1, frontpage? Page = 2, frontpage? Page = 3 ... frontpage? Page = 100, maka blok akan di-cache 100 kali terpisah dalam db?
Jordan Magnuson
Sekali lagi, masih Ya. :)
Berdir