drupal-7 - Drupal 7 : allow only the homepage to anonymous visitors

标签 drupal-7

我正在drupal 7上构建一个管理系统。我不允许匿名用户查看已发布的内容(出于显而易见的原因),但我希望允许他们只查看一个页面,即主页,该页面受到欢迎消息和登录表单。我怎样才能做到这一点?

最佳答案

我通常为需要我使用的模块未提供的自定义功能的站点构建一个小模块,在这种情况下,您可以简单地在模块文件中使用以下内容构建一个模块。

mymodule_menu(){
  $items['homepage']=array(
    'title' => 'Home'
    'page callback' => 'mymodule_homepage',
    'access callback' => true,
    'type' => MENU CALLBACK,
  );
  $items['homepage/edit']=array(
    'title' => 'Edit Homepage'
    'page callback' => 'drupal_get_form',
    'page arguments' => array('mymodule_homepage_edit'),
    'access arguments' => array('administer site configuration'),
    'type' => MENU CALLBACK,
  );
}
function mymodule_homepage(){
  return variable_get('homepage_content',''); 
}
function mymodule_homepage_edit(){
  $form['body']=array(
    '#type' => 'textfield',
    '#title' => 'Body',
  );
  $form['submit'] = array(
    '#type' => 'submit',
    '#value' => 'Submit
  );
}
function mymodule_homepage_edit_submit($form, $form_state=array()){
  variable_set('homepage_content',$form_state['values']['body']);
}

你需要一个带有drupal的模块的.info文件,没有多余的装饰,如果你只是从另一个模块打开一个来看看它们的外观,它就很容易解释了。

以这种方式处理它的好处是可以灵活地将其他自定义功能添加到同一模块中。

关于drupal-7 - Drupal 7 : allow only the homepage to anonymous visitors,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5862901/

相关文章:

Drupal 7,如何为用户设置主题?

javascript - 如果 document.ready 不起作用怎么办

drupal - Commerce paypal WPS 无法转换不受支持的货币

mysql - 跟踪对 drupal 实体的更改

php - drupal数据库结构..无法获取它

html - Bootstrap 表响应滚动不适用于 ios(方向 rtl)

mysql - 不区分大小写的搜索

php - Custom Drupal 7 Field 只保存第一个字符

mysql - 将 MySQL 数据库的存储引擎从 InnoDB 转换为 MyISAM 并返回(特定于 Drupal 7)会产生什么后果?

drupal - 当网格流动时,如何强制使用桌面菜单?