概述
在我们使用drupal来做一些项目的时候,或多或少都会使用一些官网发布的贡献模块,而这些模块大部分也都有帮助文档(“Readme.txt”)或者相应的手册页面,这个对模块的使用非常有帮助,但是很多初学者使用起来相对吃力,可能也不是很方便,所以整理一些在项目中经常使用的一些模块,由于目前大部分的项目都是基于Drupal7来开发的,所以整理一些Drupal7方面的模块。
参与编写
下面只是列了一部分比较常用的模块,希望有这些模块使用经验,同时想与大家分享的朋友,一起参与到教程的编写中来,有兴趣的朋友请告诉龙马或者在QQ群(4362258)里说一下。通过大家的力量,把这个事情做好!编写一个教程,还是比较花时间的,所以需要您有一些耐心。文章里配备适当的截图,这样让读者看起来非常直观易懂!截图工具,可以使用FastStone_Capture,这个可以在QQ群1群(4362258)里下载。
示例
Drupal7下 CKEditor + IMCE 安装和配置图文教程
drupal8使用以下方法单独定义列表头和内容在CategoryListController.php文件
drupal_access_denied()替换为 AccessDeniedHttpException()
drupal_not_fount()替换为 NotFoundHttpException();
drupal7没有权限
drupal_access_denied();
drupal_exit();
drupal8替换为
throw new AccessDeniedHttpException();
drupal7没有找到
drupal_not_found();
drupal_exit();
drupal8替换为
throw new NotFoundHttpException();
别忘了调用类库:
use Symfony\Component\HttpKernel\Exception\AccessDeniedHttpException;
use Symfony\Component\HttpKernel\Exception\NotFoundHttpException;
几个核心控制类库位置 'entity class' => 'Drupal\Core\Entity\Entity', 'controller class' => 'Drupal\Core\Entity\DatabaseStorageController', 'list controller class' => 'Drupal\Core\Entity\EntityListController', 'render controller class' => 'Drupal\Core\Entity\EntityRenderController', 'form controller class' => array( 'default' => 'Drupal\Core\Entity\EntityFormController', ),
comment_form_node_form_alter两个变化:
1、$node的获取
drupal8
$node = $form_state['controller']->getEntity($form_state);
drupal7
$node = $form['#node'];
2、js的添加
drupal8
'#attached' => array(
'library' => array(array('comment', 'drupal.comment')),
),
drupal7
'#attached' => array(
'js' => array(drupal_get_path('module', 'comment') . '/comment-node-form.js'),
),
具体代码参考api
drupal8表单定义的变化:
扩展基础表单类EntityFormControllerNG来自定义表单
别忘了定义位置和调用核心类库
- 阅读更多 关于 添加第一个和最后一个区块
- 登录或注册以发表评论
- 阅读更多 关于 5.x的主题转换到6.x
- 登录或注册以发表评论