Menggunakan modul yang sudah ada, Anda bisa melakukannya dengan Content Access , yang (ketika digunakan bersama ACL ) memungkinkan untuk mengatur izin untuk mengakses node untuk setiap pengguna.
Ini berarti bahwa Anda perlu mengatur izin akses secara manual untuk setiap node.
Jika Anda secara manual membuat node, dan kemudian Anda ingin memastikan bahwa hanya pengguna yang ditetapkan sebagai pemilik node yang dapat melihat (dan mengedit) itu, maka Anda dapat membuat modul khusus (yang berarti modul yang digunakan untuk situs Anda), dan terapkan hook_node_access()
sebagai berikut (kode telah ditulis untuk membuatnya lebih mudah dibaca):
function mymodule_node_access($node, $op, $account) {
// We are interested to existing objects. When the node is being created, Drupal passed the node type instead of the node object.
if (is_object($node)) {
$bool = (
($node->type == 'the node type you need to check') &&
(($op == 'view') || ($op == 'update'))
);
if ($bool) {
if ($account->uid == $node->uid) {
return NODE_ACCESS_ALLOW;
}
else {
return NODE_ACCESS_DENY;
}
}
}
return NODE_ACCESS_IGNORE;
}
Menggunakan implementasi pengait ini, Anda tidak perlu mengedit secara manual izin akses yang diberikan untuk setiap node dari jenis konten yang Anda buat. Mengubah pemilik node juga akan lebih mudah, karena Anda tidak perlu mengubah izin akses dari node itu; kode akan secara otomatis memberikan pembaruan dan melihat izin untuk pengguna yang ditetapkan sebagai pemilik (atau penulis) node.