Sebenarnya saya ingin membuat daftar komentar untuk node sendiri (oleh Views, misalnya), jadi saya perlu menyembunyikan daftar komentar standar dari modul komentar inti. Saya bisa melakukannya seperti itu:
unset($node['comments']['comments']);
Tetapi itu tidak akan mencegah permintaan DB untuk komentar.
Jadi saya menemukan beberapa cara gila untuk mengelabui modul komentar. Misalnya, untuk menetapkan $node->preview
properti palsu , atau untuk membuat mode tampilan baru dan menimpa node/%node
panggilan balik standar .
Apakah benar-benar sangat sulit untuk menyembunyikan komentar di bawah simpul tetapi masih memungkinkan untuk menambahkan komentar baru, atau saya melewatkan sesuatu?
Perbarui tentang opsi "Tersembunyi"
Bagaimana dengan nilai "Tersembunyi" untuk jenis konten:
Saya perlu perilaku dekat / terbuka untuk komentar saya. Tetapi jika saya mengatur "Tersembunyi" untuk tipe konten saya, konten baru saya disetel ke "Komentar ditutup" alih-alih disembunyikan (di sini adalah kodenya ). Masalah lain adalah bahwa pengguna dengan izin untuk "memposting komentar" tidak dapat menambahkan komentar, jika komentar disembunyikan (di sini adalah kodenya ).
Jadi saya tidak bisa mendapatkan ide.
Menjawab
Solusi ditemukan dengan hook_module_implements_alter()
. Terima kasih banyak!