跳转到主要内容
sina_光城-GCKDS 提交于 23 September 2016

原文地址:A new look for Drupal.org  译者:Francis  校对:龙马 Hestenet发布于2016年9月21日下午7点09分

正如你所看到的,Drupal官网换上新鲜的界面 - 但真正的改变是其内在。这一最新的首页更新是来自我们的设计系统的关键概念的最前沿:干净,现代,专业。

drupalorg-new-design-preview.png

标签
wtgg 提交于 23 September 2016
> 测试环境:php 5.5.17 + [Drupal 7.50](https://www.drupal.org/project/drupal/releases/7.50) 因为Markdown显示的问题,所以一些代码块和图片没有显示好。您可以转到[看云](http://www.kancloud.cn/wtgg/translations4drupal/213746) 查看优化版 安装好Drupal核心包之后,导入[官方汉化文件](http://ftp.drupal.org/files/translations/7.x/drupal/drupal-7.50.zh-hans.po)(.po格式) 在配置>地区和语言>翻译>概览 中看到Drupal7.50的官方汉化率为`4646/5071 (91.62%)` 之后我们在使用Drupal的过程中还会安装启用新的模块。虽然大多数模块都有对应的中文汉化文件。但是汉化率没有100%的。所以还需要我们自己继续翻译。关于Drupal翻译(汉化)的规范请参考:[Drupal 简体中文翻译规范指南 Translators’ Guideline](https://localize.drupal.org/node/5763) 本文介绍几种汉化的方法。
wtgg 提交于 23 September 2016
##### Drupal翻译中一些特殊字符的含义及处理方法 > 因为Markdown显示的问题,文中的代码引用显示不出来,您可以转到[我的看云](http://www.kancloud.cn/wtgg/translations4drupal/213747)查看优化版。 1. html标签: 保留html标签及属性值,只翻译标签内容 如`Blocks administration page` 译为`区块管理` `vocabulary`译为`词汇表` 2. `@`,`!`,`%`的翻译 >这3个符号是Drupal的占位符。出现在[bootstrap.inc](https://api.drupal.org/api/drupal/includes%21bootstrap.inc/7.x)页面的[format_string()](https://api.drupal.org/api/drupal/includes%21bootstrap.inc/function/format_string/7.x)函数中。(bootstrap.inc页面1788行左右)。
标签
云客 提交于 20 September 2016

Session在网站中扮演非常重要的角色,储存临时用户数据、登录数据等等都用到了它,Drupal8使用到了Symfony的Session组件,该组件非常强大灵活,drupal8在此基础上有所改造和扩展,要理解Symfony的Session组件让我们先从原生php的Session机制说起:

php原生的Session采用服务器文件系统储存用户会话数据,这对一般小型网站足够了,但php做的远非如此,它提供了一整套机制让用户可以自定义Session的实现,比如加密储存、数据放数据库等等,我们看一看Session是如何实现的:

云客 提交于 20 September 2016

要理解这一部分推荐先了解RFC2616文档,RFC文档就是互联网技术的魂,该文档定义了http协议,里面详细阐述了各类http头的使用,作 为补充材料可以看一看上野宣所著的《图解HTTP》一书,于均良翻译,(题外话:日本人写的技术书籍大多比较踏实,印象深刻的是远山启写的《数学与生活》 简述极限概念的时候比国内高等教育教科书好太多,希望国内多出好书,)

Drupal8使用了symfony框架的http-foundation组件,里面定义了响应对象,文件路径为\vendor\symfony\http-foundation,默认有五个响应对象:

Response:通用响应对象,用于处理一般响应,也是用的最多的响应对象

以下四个用于特殊目的,他们都继承自Response:

BinaryFileResponse:文件响应

JsonResponse:json响应

RedirectResponse:重定向响应

StreamedResponse:流媒体响应

以上四个响应类对基本的Response进行了扩展或修正,这里主要讲述Response:

云客 提交于 20 September 2016

drupal8是建立在Symfony组件之上,Symfony认为网站系统无非就是一个将请求转化为响应的系统,并以此设计执行流程,drupal8也是如此,所以整个系统运行之初就是建立请求对象,这个对象将贯穿整个程序,被各个模块访问。

建立请求对象也是为适应面向对象开发方式,这个对象将把以前面向过程式程序设计经常使用的系统输入、环境变量、cookies、session等等 数据封装起来,后续程序仅仅面对该对象即可,非常简洁,如无必要,不应该直接去操作$_POST、$_GET、$_COOKIE等等全局内容。为了方便使 用请求对象也加入了一些额外的功能,比如可以添加自定义属性,这样模块间可以很方便的共享一些数据,它就像一艘船,顺流而下,可以带上你给的数据被沿途的 处理节点看到。

一个根据外部输入产生的请求对象,系统根据它产生响应对象,响应可能包含很多块内容,为了产生每一块内容,在内部可以建立很多子请求对象,相对的由外部输入产生的请求对象称为主请求对象,主请求和子请求被放入请求堆栈中管理。

drupal8不经修改的完全使用了Symfony的请求组件,请求对象的类定义位于:\vendor\symfony\http-foundation\Request.php

下面来看看这个请求对象:

产生主请求:

云客 提交于 20 September 2016

自动加载器:

drupal8启动的第一步就是创建自动加载器,自动加载器是什么玩意?它是怎么产生的?

在面向对象的php程序开发的时候,要实例化一个类对象则需要先加载类定义文件,当 php发现并没有包含类定义文件时,并不会立即报错,它会去一个列队里面依次调用里面定义的函数或者方法,如果在这个过程中类定义文件被加载了,则返回继 续实例化对象,程序可以没有问题的继续执行,否则程序报错,那么这个列队里面的函数或方法是怎么来的呢?它是由用户定义好,然后通过 spl_autoload_register()注册进去的,这就是php的自动加载机制,spl_autoload_register()的使用方法请 见http://www.php.net/manual/zh/function.spl-autoload-register.php

云客 提交于 20 September 2016

前言

Drupal是一个非常优秀的网站系统,可以说她是一个网站应用开发框架,也可以说是一个cms,她在世界范围内被广泛使用,最为人所知的是美国白宫、联合国等知名机构的官方网站使用了她,随着Drupal8的来到,她又达到了一个全新的高度,全面的由面向过程开发转为面向对象开发,代码全部重写,实现几乎和以前的版本完全不同,所以她可以作为一个全新的起点去开始drupal之路,而不管之前是否是drupal的用户;drupal是一个积极融入php大社区的系统,大量采用php大社区已经存在的优秀的组件,使得你在学习drupal8的过程中收获颇丰。

drupal8的中文资料正在不断累计,国内社区在不断壮大,前天(2016年9月11日)我刚刚参加完drupal深圳社区的聚会,感受到社区的活跃,在聚会上做了一个Drupal8入门的分享,很大概的讲了一些内容:查看请点击

美音婚礼 提交于 17 September 2016

使用了100多个modules,其中主要有views, fancybox, date, 使用了picture提供移动端图片。 模块过多比较担心运行效率,经过优化速度还可以。优化了移动端体验,包括手机,平板系统。欢迎大家指正体验/功能方面存在的问题。 网站简介: 美音婚礼™ 精致时尚婚礼团队,注重从婚礼策划到婚礼创意实现,从婚礼司仪、婚礼跟妆、婚礼跟拍到婚礼筹备的每一个流程。从婚礼现场的设计搭建到完成婚礼的现场气氛营造,美音婚礼™ 全程贴心服务,精致于微处,为你呈现高品质的最具性价比的婚礼盛典。

订阅