typo3开源代码,可以直接用下载

weixin_39820535 2019-09-03 11:00:22
完全开源的typo3 技术文档。找了好久才找到,现在拿出来跟大家分享。
相关下载链接://download.csdn.net/download/yuping_king/7195989?utm_source=bbsseo
...全文
38 回复 打赏 收藏 转发到动态 举报
写回复
用AI写文章
回复
切换为时间正序
请发表友善的回复…
发表回复
EvaBootstrap是一个基于Twitter Bootstrap(下简称TB)的修改定制版,主要解决了TB的侵入性问题,能使TB更好的与其他前端项目并存。简言之,EvaBootstrap提供TB的所有特性,并且不会修改你的CSS默认样式。 EvaBootstrap将作为EvaEngine项目的前端核心框架源发布,协议采用New BSD License。 目前EvaBootstrap基于Twitter Bootstrap v 2.2.1修改。 与Twitter Bootstrap的不同 技术上来讲,EvaBootstrap的实现原理就是在TB有侵入性的代码上加入了一些CSS Class命名空间,所以使用时会与TB有细微的差别: 文本排版 对于需要文本排版的元素,需要增加一个class .typo: 在Twitter Bootstrap中: This line of text is meant to be treated as fine print. 在EvaBootstrap中: This line of text is meant to be treated as fine print. 表单 对于希望采用TB样式的表单,增加一个class .form 在Twitter Bootstrap中: <form> ... </form> 在EvaBootstrap中: <form class="form"> ... </form> 移除TB font-face图标 TB的图标略显简陋,索性完全移除。如果想要使用图标,推荐更全更精致的Font Awesome,可以对应绝大多数项目需求。 新功能 中文排版 通过引入typo.css项目,提供更好的中文排版支持。 对于需要采用中文排版的元素,加上class .typocn 高级别CSS Reset TB的CSS Reset采用的是normalize.css,这种Reset以修复浏览器缺陷为主要目的,在实际项目中往往统一元素的初始状态,所以CSS Reset部分采用了更“高”的Reset,包括了元素样式级别的处理。 整个Reset部分可以选择加载,所以如果你的项目中已经有了Reset,只需引入evabootstrap-core即可。 新的LESS文件结构与函数 将TB的less源文件按功能分类存放,方便查找。同时加入了一些TB中没有包含的便捷LESS函数。 百分比Grid布局 作为TB Grid布局的一个补充,引入了一个非常小巧的百分比Grid布局 三栏式布局 如何使用 在页面中根据需求引入对应的CSS即可 evabootstrap-core.css EvaBootstrap的核心CSS,不包含Reset,不包含Responsive Layout,无任何侵入性 evabootstrap-fixed.css 在evabootstrap-core的基础上增加了Reset evabootstrap-full.css 在evabootstrap-fixed.css的基础上增加了Responsive Layout 更多情况可以直接采用LESS编写,按需求引入LESS源文件即可。 意见反馈 请在Blog留言或在项目页提交BUG 标签:EvaBootstrap  CSS框架
Hacker News本身也是源的,为什么还要做iNews?初衷是什么? 赵戈戈:Hacker News从功能和内容本身上来说是个很好的应用,我们最初也是想从源入手 —— 直接使用,不过HN是甚于Arch实现的,我们对Arch 并不熟悉,所以决定自己写,以便功能扩展。 关于初衷。从产品上讲,要从我和搭档 @sofish说起。我们都是苹果的忠实用户,经常会互相分享一些应用,久而久之也就萌发了这个念头:做一个分享苹果新闻和应用的社区,对于苹果在中国这几年设备数据大增,应该有很多人跟我们有同样的需求,于是就始做了;从技术上讲,它的结构类似于Hacker News,而外观应该更漂亮,并且要适合移动应用阅读。最终我们动手实现了它,并上线了http://inews.io。虽然现在还没有完全做到期望值,但最起码迈出了第一步;从程序本身来讲,上线了一段时间后,很多朋友看到都希望在自己站点上使用,后来越来越多的人寻求使用并提供建议,基于我们对源的放态度,最终决定放出来给大家使用。 iNews 在技术上是如何实现的? 赵戈戈:iNews基于PHP,使用Mysql存储,phpmig进行数据库版本管理。框架上,后端采用了我自己写的Restful框架 Pagon来发,前端使用了@sofish的 typo.css, validator.js等源库。第一版本上线前我们希望从最基本的功能始,上线 > 快速迭代。整个发过程非常快,只用了一天半的时间就实现了。后续做了些优化和修复就上线了。在服务上我们也采用一些不错的第三方服务:用SendGrid发送邮件,用NewRelic做应用监控,用Dropbox做数据库备份等等。 这里再补充一点:从技术选型上,技术适应产品才是最重要的,不要强迫自己使用的是PHP 、Node或者Ruby等。选择基于PHP的Pagon这个框架,让我们可以更快速实现iNews.io的功能。 总共有几名发人员?这种UGC项目的技术难点和重点是什么?你们是如何解决的? 赵戈戈:只有我和搭档@sofish两个人。源之后应该会陆续会有一些同学加入,实际上目前已经有一些同学在一起发。对于iNews来说,技术上基本没太多难点,主要有几个点需要关注:安全性、性能、易用、适配(Responsive)、社会化接入等。 安全性主要是XSS和数据库过滤。Pagon框架已实现自动XSS处理的,只要启了safe_query 的选项,在模板渲染的过程中会自动做XSS过滤。数据库方面使用的一个paris库,它本身使用PDO来处理SQL,PDO本身会对数据进行转义处理再存入。 性能其实是个很泛的话题,iNews.io数据样本太少,还不好看出性能到底如何,就目前的平均输出时间来看只有30ms左右,前端方面使用Google Pagespeed测试是:移动,85/100;桌面 95/100;这比很多网站分数都要高。高性能跟逻辑简单和实现方法都有关系,如果需要很好的性能需要考虑到方方面面,我这里先简单说PHP的基本观点:代码越简单越好,不要使用太多魔术方法,尽量使用PHP 内置的方法,使用最新的稳定版5.4,服务器安装APC扩展,使用Nginx FPM模式运行PHP。其次Pagon框架本身发过程也对性能有很高的要求,所以在代码质量和性能上也下了不少功夫,这也是应用性能的基础。在数据库方面只做了索引优化来达到更好的查询性能。性能还涉及到很多,做为一个刚初出茅庐的应用来说还没有足够完善也不需要把性能放到第一位,在这里就先不说还没有做到的。 而在前端,跨终端适配应该是现代应用最应该做的支持。@sofish 在这一块有很多的研究,所以我们的 iNews 是可以在移动设备上很好的访问的。 社会化接入这块其实也并不是什么难点,只需要有很好的封装就可以解决问题,重新发代价稍大。我觉得 PHP 第三方认证的库都做的很一般,但还是有个opauth的第三方认证库,封装有点凌乱,但凑合着能用。如果是Node的话,这一块有很多很不错的库,比如everyauth和passport,如果PHP社区可以像Node社区一样活跃那问题就可以更好解决了。 iNews在内容推荐上采用了什么样的机制或算法? 赵戈戈:iNews最初是参照Hacker News的算法来做的,后期将评论也加入了权重。因为觉得对于这种社区来说,评论是很重要的一块,评论代表着交流,有交流就证明内容的价值有可能存在,如果只有“顶”才算权重,那激烈的讨论可能会显得不太公平。但若是每个评论的权重和每个“顶”的权重一样,又显得不太合理,“顶”是认可的意思,评论是交流的意思,所以评论应该稍低于“顶”的权重,这样做才比较合理。最终是这么来做的。 iNews 有哪些创新性的东西? 赵戈戈:如果说创新的话,我想提一个设计模式:MOVE。应该有不少人看到过过这个设计模式,摒弃了MVC传统老套的做法。采用了Model、Operator、View 和 Event 来梳理编码流程。其中 Operator可能是大家最不解的一个地方,其实也是最具创新意义的地方,Opeartor从字面意思来理解就是:操作器。Opeartor的出现摈弃了控制器重用性和代码混杂的局面,将每个操作都拆分成一个独立的操作器,组织成一个树形的流程来封装使用,对于编码流程来说是一个梳理。iNews里面有一些对操作器的浅显理解和实现,但并没有完全使用操作器来做,还是主要使用MVC作为基础,这种尝试会慢慢变得成熟,并可能逐步完全采用这种模式来发。 标签:iNews

12,799

社区成员

发帖
与我相关
我的任务
社区描述
CSDN 下载资源悬赏专区
其他 技术论坛(原bbs)
社区管理员
  • 下载资源悬赏专区社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧