该仓库是软院网站的主站部分。
-
不要将照片放进仓库
-
不要将密码放进仓库
composer global require drush/drush:dev-master -vvv --profile
具体参见 http://docs.drush.org/en/master/install/
drush dl drupal --drupal-project-rename=sseweb
cd sseweb
git init
git remote add origin https://github.com/TJUSSE/sseweb
git fetch origin
/bin/rm .gitignore
git checkout -b master --track origin/master
git submodule update --init --recursive
# cd sseweb
drush dl \
node_export uuid \
file_entity title stringoverrides \
node_save_redirect \
ds login_destination \
boost expire \
workbench workbench_moderation \
linkit entityreference \
advanced_help image_url_formatter \
filefield_sources imce menu_force \
imce_mkdir imce_plupload plupload \
conditional_fields field_group link \
module_filter admin_views views_bulk_operations \
ckeditor_blocks-7.x-1.x-dev insert_block \
imagemagick devel globalredirect \
entity_translation i18n variable \
rabbit_hole date \
backup_migrate jquery_update ctools \
pathauto token panels ckeditor views \
term_reference_tree menu_fields zen \
adminimal_theme adminimal_admin_menu admin_menu \
entity libraries l10n_update
某些插件有兼容性问题,或需要增加新功能,需要手工打补丁。
- 修复 term_reference_tree 和 I18N 插件的兼容性问题
# cd sseweb
patch sites/all/modules/term_reference_tree/term_reference_tree.module < patches/term_reference_tree.module.patch
patch sites/all/modules/term_reference_tree/term_reference_tree.widget.inc < patches/term_reference_tree.widget.inc.patch
- 为 ImageMagick 插件提供生成渐进式图像的选项。载入此类图像时,会先显示模糊的图片再逐渐变清晰
# cd sseweb
patch sites/all/modules/imagemagick/imagemagick_advanced/imagemagick_advanced.install < patches/imagemagick_advanced.install.patch
patch sites/all/modules/imagemagick/imagemagick_advanced/imagemagick_advanced.module < patches/imagemagick_advanced.module.patch
- 修复 Entity API 中翻译检测问题
# cd sseweb
patch sites/all/modules/entity/includes/entity.property.inc < patches/entity.property.inc.patch
-
修复 node_export 批量导出问题
# cd sseweb patch sites/all/modules/node_export/node_export.module < patches/node_export.module.patch
具体参见 https://github.com/TJUSSE/sseweb-subscription 和 https://github.com/TJUSSE/sseweb-login
cd sites/default/modules/sse_subscription
composer install
cd -
cd sites/default/modules/sse_login
composer install
cd -
具体参见 https://github.com/TJUSSE/sseweb-theme/tree/0.0.2
cd sites/default/themes/sse_theme
cnpm install --unsafe-perm
gulp
cd -
# 以下是下载 banner images
cd sites/default/themes/sse_theme/img/banners
wget http://cdug.tongji.edu.cn/sse/banners.tar.gz
tar xzf banners.tar.gz
/bin/rm banners.tar.gz
cd -
基础数据库镜像中包含一些附件,如图片等。如果您希望添加,请执行如下命令:
cd sites/default/files
wget http://cdug.tongji.edu.cn/sse/files.tar.gz
tar xzf files.tar.gz
/bin/rm files.tar.gz
cd -
- 在初始化之前,您可能还需要配置 Apache 指向 Drupal 目录,例如:
<VirtualHost *:80>
DocumentRoot /Users/Breezewish/Development/SSEWeb/sseweb
ServerName ssedev.tongji.edu.cn
</VirtualHost>
<Directory "/Users/Breezewish/Development/SSEWeb/sseweb">
Options Indexes FollowSymLinks
AllowOverride All
Require all granted
</Directory>
-
访问相应地址,如
http://ssedev.tongji.edu.cn
。 -
选择「软件学院网站」作为 profile 安装。只需要设定数据库链接,并填写初始账户信息即可,其他字段使用默认参数不需要修改。
数据库中包含了设置、菜单项、节点项等信息。该数据库是调试数据库,不包含线上数据。
-
访问 http://pan.baidu.com/s/1i3Cizbf 下载最新的数据库快照。
-
访问 http://ssedev.tongji.edu.cn/admin/config/system/backup_migrate/restore ,点击「Restore from an uploaded file」,选择刚才下载下来的
.mysql.zip
快照文件。其中http://ssedev.tongji.edu.cn
是 Drupal 访问路径,请按照自己的配置进行修改。 -
点击 「Restore Now」。
网站使用了 ImageMagick 来处理上传的图片。
请在本地安装 ImageMagick 二进制,然后访问 /admin/config/media/image-toolkit
地址配置路径。
如果需要使用邮件订阅,请参考 https://github.com/TJUSSE/sseweb-subscription
如果需要使用同济大学统一认证登录,请参考 https://github.com/TJUSSE/sseweb-login
请在 issue 中创建建议。
- 安装完 Drupal 后出现错误
Notice: Undefined index: name in block_menu()
:
一般是因为 sites/default/themes/sse_theme/node_modules
下的 .info
文件没有删除
- 使用 Drupal 执行完更新后出现错误
Notice: Undefined index: .... in .... system.install).
一般是因为 SSE Profile 被 drush 奇妙地禁用了。请执行以下 SQL 命令:
UPDATE system SET status = 1 WHERE filename="profiles/sseweb/sseweb.profile"
再清空缓存:
# cd sseweb
drush cc all
如果有新的 Drupal 内核更新,您可以通过以下命令升级:
# cd sseweb
drush pm-update
git checkout -- .gitignore # 恢复本项目的 .gitignore 文件
若升级后,访问网站出现 Notice 错误,见 Troubleshooting #2。
如果该项目库有更新,您希望将更新应用到当前部署:
# cd sseweb
git pull
git submodule update
- admin_views: 提供更好的管理界面
- adminimal_admin_menu: 与 Adminimal 主题配合的后台菜单
- advanced_help: 更好的帮助信息
- backup_migrate: 备份迁移工具
- boost: Drupal 静态缓存
- ckeditor: 富文本编辑
- ckeditor_blocks: 在编辑器中可以选择 block 插入
- conditional_fields: 条件字段
- date: 提供日期时间类型的字段
- devel: 调试工具
- ds: 控制字段显示
- entityreference: 可引用的字段
- entity_translation: 翻译实体
- expire: 自动过期缓存
- field_group: 对字段分组
- file_entity: File as entities
- filefield_sources: 集成 IMCE 到内置字段
- globalredirect:
node/xx
重定向到其 alias 等 - i18n: 国际化,为内容编写中英文版本
- imagemagick: 使用 imagemagick 处理图片
- image_url_formatter: 提供图像链接格式化器
- imce: 文件和图片管理
- jquery_update: 更新 jQuery 版本
- link: 超链接字段
- linkit: 选择内部或外部链接
- login_destination: 登录跳转
- menu_fields: 允许菜单项中增加字段
- menu_force: 强制勾选「使用菜单」
- module_filter: 在模块页面提供筛选功能
- node_export: 导出节点
- node_save_redirect: 保存节点重定向
- panels: 自由布局
- pathauto: 自动按规则生成 URI alias
- rabbit_hole: 控制节点 / Taxonomy 的可访问性 / 重定向
- sseadmintype: 为各个节点类型显示管理菜单
- ssecontactfield: 联系方式字段
- ssemark: 在编辑器中添加高亮内容按钮
- ssetaxonomy: 修复 Taxonomy 地址
- term_reference_tree: 高级树形词汇表选项
- token: 提供 Placeholder 接口
- views: Views
- workbench: 草稿审核等
MIT