Kami memiliki modul layanan khusus dan situs di Drupal 7, dan saya mendapat tugas untuk menghapus cache setelah editor menambahkan konten baru atau memperbarui yang sudah ada.
Saya sudah membaca tentang modul yang disebut Tindakan Cache , tetapi, seperti yang saya katakan, saya perlu membuat fungsi pada modul kustom saya.
Juga, saya sudah mulai membaca tentang kait Drupal, tetapi masih belum memiliki petunjuk tentang bagaimana menerapkan tugas ini. Ada saran? Terima kasih.
Jawaban:
Sepertinya Anda sudah memiliki modul khusus, tetapi jika Anda belum melihat Panduan Pengembang Modul .
Kait yang Anda cari adalah
hook_node_insert()
danhook_node_update()
, dan fungsi untuk menghapus cache akan menjadicache_clear_all()
ataudrupal_flush_all_caches
. Yang pertama akan membuat Anda menghapus tempat cache spesifik (dan bahkan item cache tertentu), dan yang terakhir akan menghapus semuanya.Sebagai contoh:
atau untuk menghapus hanya cache halaman statis setelah sebuah node diperbarui:
sumber
Anda dapat dengan mudah menghapus cache node tertentu setelah memperbaruinya. Ex. :
Harap dicatat bahwa Anda harus menentukan
array('absolute' => TRUE)
.sumber