这是在Drupal 7上。我有一些内容我想从匿名用户“隐藏”(而不是发布/取消发布)。
有人已经制作了一个复选框($hidden_value
)来执行此操作,但它会重定向到403.
$access = !$hidden_value['value'] ? user_access('access content') : !user_is_anonymous();
我想将此重定向到404页面,因此在hook_preprocess_page()
内我添加了:
if ($access === FALSE) {
drupal_not_found();
}
但这似乎不起作用 - 它仍然重定向到403.我也尝试drupal_exit
得到相同的结果。
有谁知道我能做些什么来解决这个问题?
答案 0 :(得分:0)
您可以使用hook_node_view()
function hook_node_view($node, $view_mode) {
if (!user_is_logged_in()){
drupal_not_found();
}
}
https://api.drupal.org/api/drupal/modules%21node%21node.api.php/function/hook_node_view/7.x