专题页面上线及清缓存步骤

整 理:晋哲
时 间:2015-12-23
说 明:PC端和WAP端专题页面上线步骤及清除缓存操作

---------专题页面上线步骤---------

一、PC端专题上线步骤:

步骤一:进入PC端根目录
1、进入相应服务器:202.102.90.111
2、跳转到相应目录:cd /opt/ci123/www/html/view/

步骤二:创建新的专题目录:mkdir 目录名

步骤三:新的专题目录添加到版本库
1、svn add 目录名
2、svn ci -m '备注' 目录名

步骤四:获取新专题的svn地址
1、进入新专题目录:cd 目录名
2、获取svn地址:svn info
3、复制URL路径

步骤五:在本地checkout新的专题目录
1、回到本地磁盘,在统一存放专题文件目录的文件夹内,如:D:\appserv\www\pc
2、右击选择【SVN Checkout】,在本地生成新创建的svn文件夹

步骤六:本地专题提交到版本库
1、将专题文件代码拷贝到生成的svn文件夹
2、右击选择【SVN Commit】提交

步骤七:从版本库把新专题Up到服务器新建目录下
二、WAP端专题上线步骤:与PC专题上线步骤基本一致。
不同之处:
第一步:WAP端的相应目录:cd /opt/ci123/www/html/m/special/
第五步:因为PC和WAP的专题文件命名一样,所以在右击选择【SVN Checkout】的时候WAP页面应在不同的文件目录下,如:D:\appserv\www\m

---------专题页面更新文件及清缓存步骤---------

> 更新文件

情况一:在本地更新上传文件

1、在本地专题文件目录下右击选择【SVN Update】,从svn控制中心更新最新的程序到本地

2、修改完文件保存之后,该文件的状态不再是绿色的勾号,右击选择【SVN Commit】提交到svn版本库,状态也随之改变

3、回到linux界面,追溯至该专题文件目录下,将文件更新上传到svn版本库。执行:svn up 修改的文件名

情况二:在linux界面中直接修改文件

1、vim编辑修改文件后将文件更新,上传到svn版本库;

2、将改动过的内容提交到svn版本库,需填写本次修改的备注
执行:svn ci -m '填写修改备注' 修改的文件名
注:只有执行此提交操作后,在本地执行【SVN Update】才能更新到最新程序

如果更新的文件是CSS样式文件和图片,即会产生缓存。必须再执行清缓存操作

> 清缓存步骤

一、PC端专题清缓存步骤:

步骤一:dig项目域名得到前端代理的IP

步骤二:ssh 跳转到代理服务器

步骤三:打开nginx配置(squid等),获取静态文件缓存目录,查看IP端口号
1、打开nginx配置:vim /opt/ci123/nginx/conf/vhosts/www.ci123.com
2、找到【location ~ ^.*\.(css|js|swf|gif|png|jpg|jpeg|ico)$】
3、获得缓存目录proxy_temp_path的值【/tmp/www.ci123.com_cache/】
4、看最末尾的【proxy_pass】的IP端口是否为88。若是,则找到其上一级IP;若不是,则退出此配置文件。

步骤四:找到相应缓存目录(缓存目录一般为固定地址,不需要每次都去配置文件中查找)
1、进入固定缓存目录:cd /tmp/www.ci123.com_cache/
2、找到需要清除缓存的专题目录:cd special/专题文件名

步骤五:清除样式缓存(清除图片缓存等同操作)
1、打开相应目录:cd styles/
2、清除文件缓存:rm -f style.css

步骤六:回到第二步,循环操作,每个解析获得的服务器IP中都需要登陆进去清除缓存。
除了解析出来的服务器IP,一般还需要注意以下四个IP地址中是否存在缓存:
202.102.90.108
202.102.90.109
202.102.90.117
202.102.90.118

二、WAP端专题清缓存步骤:与PC专题清缓存步骤基本一致
不同之处:
第一步:WAP端域名解析,执行:dig m.ci123.com
第三步:WAP端相应nginx配置文件,执行:vim /opt/ci123/nginx/conf/vhosts/m.ci123.com
第四步:WAP端固定缓存目录,执行:cd /tmp/m_cache/

涉及知识点:
1、svn的常规使用
2、dig查找项目配置信息

其他:
1、svn的常规使用必须熟练,且注意几个比较容易犯错的地方。
2、常用的专题配置信息,一般很少更新,最好在本地做一些记录,不需要每次都去dig查找

sublime常用的插件介绍

整  理:肖雅君
时  间:2015-12-18
说  明:sublime常用的插件介绍

一、安装插件的基本条件

1. 前提

2. 两种安装方法

二、插件介绍

1. 插件emmet

2. Emmet LiveStyle

3. Bracket Highlighter插件

4. Trailing Spaces高亮空白区域

5. JsFormat:js格式化的插件

附:Barcakets插件安装:

插件位置:\\192.168.0.18\运维网络硬盘\y袁亮\p培训\55分享2015-12-16(前端)\sublime提高开发效率的几个插件

参考链接: http://www.cnblogs.com/hykun/p/sublimeText3.html

 

Sublime高效率前端编辑插件

一、安装插件的基本条件

1.前提:

(1)需要sublime text3

(2)安装任何插件都得先安装package control插件管理。

2.两种安装方法:

1)自动安装:先按键ctrl+` ,再将安装代码复制进去;

1

安装代码:import urllib.request,os,hashlib; h = 'eb2297e1a458f27d836c04bb0cbaf282' + 'd0e7a3098092775ccb37ca9d6b2e4b7d'; pf = 'Package Control.sublime-package'; ipp = sublime.installed_packages_path(); urllib.request.install_opener( urllib.request.build_opener( urllib.request.ProxyHandler()) ); by = urllib.request.urlopen( 'http://packagecontrol.io/' + pf.replace(' ', '%20')).read(); dh = hashlib.sha256(by).hexdigest(); print('Error validating download (got %s instead of %s), please try manual install' % (dh, h)) if dh != h else open(os.path.join( ipp, pf), 'wb' ).write(by)

(2)手动安装:

直接下载Package Control插件,放到sublime安装目录下的Installed Packages目录下,如下图:

23

二、插件介绍

1. 插件emmet

缩写+自动生成-提高开发效率,需了解简单的语法规律

Emmet语法:http://yanxyz.github.io/emmet-docs/abbreviations/syntax/

2. Emmet LiveStyle

实时刷新双向修改

(1)第一步:安装插件

法一:

自动安装:ctrl+shift+p打开安装包管理器,输入PCI后,输入LiveStyle:如下图

5

法二:

手动安装:同上将插件放到Installed Packages目录下。

(2)第二步:在浏览器上安装Emmet LiveStyle插件

6

(3)第三步:使用步骤

用sublime打开样式文件;浏览器打开html文件后F12,即可看到安装后的插件:勾选Enable LiveStyle for current page,再将样式文件的目录复制到liveStyle里即可。然后就能实行双向修改了。如下图:

7

3.  Bracket Highlighter插件

用于匹配括号,引号和html标签。

对于很长的代码很有用。安装好之后,不需要设置插件会自动生效.【安装过程同上】

图示:

9

如图:如果代码的标签是成对的,则会显示两个小图标;如果标签并不是成对的,则会显示”小问号“。

10

4. trailing Spaces高亮空白区域

此插件自动将无效的有空白区域的代码显示出颜色来。

一键删除所有空格设置:

需要配置快捷键:在preferences/key binding-user,加上如下代码:

{ "keys": ["ctrl+shift+t"], "command": "delete_trailing_spaces" }

操作如下图:

1112

5. JsFormat

js格式化的插件,安装方式同上,效果图如下:19

附:Barcakets开发软件的插件安装方法

(1)emmet 直接点击右边的小商品标志

13

输入插件名,自动安装完毕:

14

(2)显示小图标插件:Brackets Icons

效果图如下:

16

参考链接: http://www.cnblogs.com/hykun/p/sublimeText3.html

http://www.xuanfengge.com/practical-collection-of-sublime-plug-in.html

 

注:若是直接拷贝插件安装,需注意几个插件安放的位置不一样:

插件位置:\\192.168.0.18\运维网络硬盘\y袁亮\p培训\55分享2015-12-16(前端)\sublime提高开发效率的几个插件

(1)两个插件文件夹放在:Packages文件夹下,通过Preferences>Browse Packages打开:

17(2)非文件夹插件放在Packages上级的Install Packages目录下:

18

 

【前端技术文档】chrome调试功能

整  理:曹燕
时  间:2015-12-18
说  明:chrome调试功能的介绍

1.Elements面板——DOMchrome调试功能30

左侧展示了dom树,在某个dom节点上点击右键会出现操作菜单,常用功能:增加属性、编辑属性、以html形式编辑代码、复制css路径、复制Xpath路径、剪切/复制/粘贴/删除代码、设置断点。

左侧底部显示当前节点的所有祖先节点。

右侧面板主要包括5个功能块。①Styles:按权重从大到小顺序显示所选元素的css样式,可以进行修改,页面会实时响应变化;下方是盒模型图;②Computed:所选元素的最终样式,只可读不可修改;③Event Listeners:显示绑定到当前元素的事件监听函数;④Dom Breakpoints:显示dom中设置的断点,便于调试;⑤Properties:显示元素作为dom对象的各个属性。

2.Network面板——请求加载chrome调试功能359

上图分为7列,从左到右分别是Name、Status、Type、Initiator、Size、Time和Timeline。①Name表示加载的文件名;②Status表示状态码(200为请求成功,304表示从缓存读取);③Type表示文件的MIME Type的类型;④Initiator表示发出这个文件请求的发出者;⑤Size表示文件大小;⑥Time表示每个请求的总时长;⑦Timeline显示了请求和加载情况(Timeline中鼠标移到每个时间条上的时候,会显示整个请求的详细信息)。通过它可以看到哪些请求是同时发出的,哪些请求被阻塞了。Timeline中有一条蓝线和一条红线,蓝线表示DOM Content Loaded事件触发的时间,红线表示 Window onload事件触发的时间。

点击某个请求会显示该请求的具体信息:chrome调试功能725

顶部的选项卡将请求的文件进行了分类,便于查看,如:XHR、JS、CSS、Img、Media、Font、Doc、Websockets和Other。

底部显示了网页请求的整体加载信息,如:请求个数、传输大小、dom结构加载时长、页面加载完成总时长。

3.Sources面板——样式脚本chrome调试功能867

显示所有加载的html、css和js资源,可以实时编辑css或js文件。右侧显示监听、事件绑定以及断点信息。常用于设置断点来调试js。

设置断点调试js可参考:http://segmentfault.com/a/1190000004123527

4.Timeline面板——页面加载chrome调试功能1070

Timeline跟Network有类似的地方,他们都是按照页面的加载时间来统计数据的,不过Timeline统计的数据侧重点不一样。Timeline主要统计了三个数据:Loading,Scripting,Rendering。

点击时间线上的任意位置,可以查看在这个点的详细信息。

5.Profiles面板——CPU信息chrome调试功能1230

Profile记录的主要是CPU和内存占用的信息。点击start按钮,开始记录CPU使用信息,刷新页面,等页面加载完成之后点击stop按钮,完成录制。chrome调试功能1232

上图的左边两列是时间,第一列是self,第二列是total,self表示函数自己的运行时间,不包含调用其他函数的时间,而total表示这个函数运行的总时间。第三列是运行的函数。通过比较时间的百分比可以找出性能差的函数进行优化。

6.Resources面板——所有资源信息chrome调试功能1445

Resources显示所有加载的资源,除了Sources面板中的html/css/js文件外,还包括图片文件;并且还可以查看本地存储、会话存储、cookies信息、缓存等。

7.Audits面板——性能检测优化chrome调试功能1552chrome调试功能1554

Audits面板的作用于pagespeed、Yslow类似,用于检测页面的性能,提出优化建议。点击Run按钮,即可得到页面性能的检测结果和优化建议。

8.Console面板——控制台输出chrome调试功能1649

Cosole可以用于输出信息,常用于调试。支持的一些方法函数如下:

  • log(object[, object, ...]),使用频率最高的一条语句:向控制台输出一条消息。支持 C 语言 printf 式的格式化输出。
  • info(object[, object, ...]) ,向控制台输出一条信息,该信息包含一个表示“信息”的图标,和指向该行代码位置的超链接。
  • error(object[, object, ...])在控制台中输出一条错误信息。
  • warn(object[, object, ...])在控制台中输出一条警告信息。
  • assert([, object, ...]) ,断言,测试一条表达式是否为真,不为真时将抛出异常(断言失败)。
  • dir(object) 输出一个对象的全部属性(输出结果类似于 DOM 面板中的样式)。
  • dirxml(node) 输出一个 HTML 或者 XML 元素的结构树,点击结构树上面的节点进入到 HTML 面板。
  • trace() 输出 Javascript 执行时的堆栈追踪。
  • group(object[, object, ...]) 输出消息的同时打开一个嵌套块,用以缩进输出的内容。调用 console.groupEnd() 用以结束这个块的输出。
  • count([title]) 输出该行代码被执行的次数,参数 title 将在输出时作为输出结果的前缀使用。
  • clear() 清空控制台。

 

 

 

VIM PHP IDE的安装步骤

前言

操作文档的链接

文件包所在

\\192.168.0.18\运维网络硬盘\y袁亮\vim-php-ide
  • php-vim-fool.tgz是fool式安装
  • php-vim-full.tgz是full式安装

其实就是相差一个YCM插件,YCM插件需要clang编译,所以比较烦。

FOOL安装

最好要求php5.3.9以上版本,也最好安装php-xml

yum install php-xml

关于自动补全

  • 最好,也至少安装一下ctags不然很多东西用不起了。
  • yum install ctags
  • 如果没有权限安装,那也只能作罢。

fool版的代价是不太友好的自动补全,当然也没有路径补全了=_=

安装步骤:

  • 使用winscpphp-vim-fool.tgz上传到工作用户目录下。
  • 执行指令tar xzvf php-vim-fool.tgz -C ~/
  • 然后就ok了

关于配置文件

  • 位置在~/.vimrc
  • 打开vim ~/.vimrc,先使用zM折叠所有方便查找,za单独打开和关闭折叠。

full安装(其实就是自动补全的差距)

需要安装的外部依赖:

  • git是必须的yum install git
  • gcc gcc-c++ yum install gcc gcc-c++
  • clang 
    • 先添加epel源, yum install epel-release
    • yum install clang
  • python-devel yum install python-devel
  • cmake yum install cmake
  • ctags yum install ctags
  • 可能需要php5.3.9以上的版本,不然需要关闭phpmd检查

安装vim-php

  • 使用winscpphp-vim-full.tgz上传到工作用户的目录下,即~/下面,github太慢,还是直接压缩包来得好。
  • tar xzvf php-vim-full.tgz -C ~/
  • vim ~/.vimrc 查看有没有报错(一般没有),然后:PluginUpdate,时间可能有点久,这不是必要的,可以直接下一步。
  • 进入~/.vim/bundle/YouCompleteMe/, 执行./install.py编译一下,可能比较久。 
    • 提示缺少argparse 安装pip install argparse
    • 如果没有pip,安装yum install python-pip
  • 如果编译失败,请查看依赖有没有安装成功
  • 安装成功后可以在vim下键入:PluginUpdate vim-shippets更新模块。

VIM PHP IDE的基本操作

前言

 安装步骤的链接

关于安装步骤:

  • 分full和fool两个版本,版本差距在自动补全的插件。
  • 最好安装ctags,如果不安装ctags自动补全将不完善,tagbar也无法工作。
  • 可以考虑一下vim的练级攻略

语法检查

文件在保存时会检查语法错误和规范

一共有三种警告:

  • p> php的语法错误, 可以使用:Php主动检查
  • s> 不符合prs2规范, 可以使用:Phpcs主动检查
  • m> 质量检验, 可以使用:Phpmd主动检查

格式修复

vim-php-cs-fixer

nnoremap <silent><F7> :call PhpCsFixerFixDirectory()<CR>
nnoremap <silent><F8> :call PhpCsFixerFixFile()<CR>

F8可以修复一些不符合psr2的规范,但是存在一些问题,如果只是定义了函数名或是类名的一些没有实际作用的代码可能会被删除,安全性有待评估。

自动补全

YCM

full基本操作:

  • 两个字符后开始自动补全
  • tab键选择,shift-tab逆向选择
  • 可以使用ctrl-n向下,或是ctrl-p向上选择

如果是fool版:

  • 不能自动开启补全,不能像图中那样方便。
  • 必须使用<ctrl-x><ctrl-o>开启补全
  • ctrl-nctrl-p无法选择, tab可以使用
  • 其他相同

一般只支持系统函数补全,如果要支持自己编写的函数补全,需要如此:

  1. 在项目顶层目录下执行指令 ctags -R
  2. 必需在项目顶层目录,即ctags文件所在的目录打开vim
  3. 打开文件,不要退出vim,使用NERDTreectrl-p查找和打开文件,如果需要创建文件,可以使用ctrl-p打开文件。
  4. 如果创建了新的类,将必须在项目顶层目录执行ctags -R的指令,当然可以在vim执行:!ctags -R,在不退出vim的情况下更新ctags文件

可以通过tags来实现require的补全

对于composer的补全,默认composer是全局安装的,好像失败了。

代码块

u

已经将php的模板文件软连接到用户主目录下,可以自行查看修改 
vim ~/php.shippets

?-tab 可以生成这样的代码 <?php ?>

f-tab可以生成这样的代码

function ()
{

}

pub-tab可以生成

/*
 * undocumented function
 * @return void
 * /
public function name($param)
{
    return null;
}

c-tab

class filename
{

}

class-tab可以生成一个带注释的class

文件目录和代码浏览

NERDTree 
NERDTree

F2 打开文件目录 
在NERDTree中按?呼出帮助文档

tagbar

需要安装ctags 
tagbar
F3 打开代码浏览

模糊搜索

ctrl-p 
ctrl-p
基本不需要设置

ctrl-p 打开模糊搜索

ctrl-k  ctrl-j 可以在搜索结果中上下选择 
ctrl-t 在新标签页打开 
ctrl-v 分割打开 
ctrl-y 新建文件, 需要先敲入路径和文件名

html tag跳转

在一个html tag上使用%可以跳转与之匹配的tag

官方文档

将光标移动到需要查看的函数上,使用shift-k,就可以查看官方文档a。

符号补全

在使用', ", (, [, {时,会自动补全另一半,同时如果再按各个匹配的另一半,则会跳出。

 

全局搜索

可以使用命令

:CtrlSF param

也可以设置

nmap <leader><leader>f <Plug>CtrlSFPrompt

<leader>默认是\,所以快捷就是 \\f

因为是全局搜索,所以不要在太顶层目录使用,具体请查看CtrlSF

多光标

ctrl-n 开启选择/选择下一个 
下面操作需要在ctrl-n执行后 
ctrl-p 取消一个选择 
ctrl-x 跳过一个选择 
详细vim-multiple-cursor

PS: 可以通过结合全局搜索实现重构

注释

\cc 注释当前行 
\cu 反注释当前行 
可以通过shift-v实现多行操作

撤销树

此处输入图片的描述 
gundo

F4呼出撤销树,查看之前的撤销修改

其它一些插件

php.vim

更好的代码高亮

PHP-Indenting-for-vim

在php 和 html代码混杂在一起时提供更好的缩进

vim-airline

状态栏美化

vim-trailing-whitespace

显示多余的空格

 

服务化一般流程

编  写:袁亮
时  间:2015-12-16
说  明:服务化的一般流程

一、理清功能点

    1、找到业务对接人

    2、找同类功能,其他家比较好的是怎么做的

    3、确定功能,可能做什么,哪些不做,后期可能扩展


二、如果在已有的基础上升级

    1、理清原来代码

    2、什么地方,做了什么事

    3、有哪些代码是冗余的

    4、记录文档


三、数据字典设计

    1、根据功能设计数据字典初稿

    2、对照功能点,一个个的过,看是否能实现预期的功能

    3、如果后期要升级,是否好扩展

    4、业务方面能支持的情况下,看是否会有性能瓶颈

    5、是否需要增加冗余字典,查询优化


四、接口列表划分

    1、根据需求,罗列接口列表

    2、重新审查接口列表,是否有重复的

    3、不同接口之间是否有部分做的同样的事,是否需要抽离

    4、重新根据功能进行接口聚合,分类,整理完整列表

    5、拿着接口列表,分别看看需求和现有功能是否能满足

    6、给出完整确认的接口列表


五、定义接口

    1、根据接口列表写注释

    2、需要输入哪些参数,分别代表什么意思

    3、这些参数需要做哪些格式验证

    4、业务方面需要做哪些验证

    5、非查询条件,需要做哪些数据更新操作

    6、接口返回什么


六、根据接口定义写代码

    1、根据接口定义,编写代码

    2、写相应的demo,测试各种情况

    3、监控查看接口返回是否正常

    4、后期做成能自动监控


七、接口文档

    1、编写apidoc需要的注释

    2、生成apidoc文档

    3、更新到文档库

    4、查看文档是否有错误


八、旧项目升级

    1、如果是从旧项目升级,需要将旧数据,写脚本导入写服务中

    2、旧的代码中,所有涉及到这块的,根据之前列的文档,一个个的改成接口调用

    3、改动一处,即进行完整测试,并做相应标记

    4、全部改完之后,整体测试


九、上线

    1、代码上线前,将旧数据转换脚本启动,并跑完

    2、代码通过版本控制器上线,同时转换脚本开启,避免上线过程中产生的新数据未同步

    3、上线测试是否正常,并重点关注error_log

    4、查看旧数据库是否还有数据新增,以及新数据库数据增长是否正常

    5、查看接口监控日志,是否有异常调用

    6、关注用户反馈,自己多测几次正常流程,特别是涉及到改动的地方

移动端前端注意事项

整  理:晋哲

时  间:2015-12-09

说  明:移动端页面需要注意的细节问题


一、移动端固定<meta>标签
<meta name="viewport" content="width=device-width, initial-scale=1.0, minimum-scale=1.0, maximum-scale=1.0, user-scalable=no">
<meta name="apple-mobile-web-app-capable" content="yes">
<meta name="apple-mobile-web-app-status-bar-style" content="black">
<meta name="format-detection" content="telephone=no">

解释:
第一个meta标签表示:强制让文档的宽度与设备的宽度保持1:1,并且文档最大的宽度比例是1.0,且不允许用户点击屏幕放大浏览;
第二个meta标签是iphone设备中的safari私有meta标签,它表示:允许全屏模式浏览;
第三个meta标签也是iphone的私有标签,它指定的iphone中safari顶端的状态条的样式;
第四个meta标签表示:告诉设备忽略将页面中的数字识别为电话号码

二、细节样式处理,去除移动设备默认交互样式

1、解决 iPhone 横屏时默认会放大文字的问题,设为100%关闭字体大小自动调整功能
html{
 -webkit-text-size-adjust: 100%;
 -ms-text-size-adjust: 100%;
 text-size-adjust: 100%;
}

2、使用无衬线字体
body{font-family: "Helvetica Neue", Helvetica, STHeiTi, sans-serif;}

3、禁止选中文本(有无文本选中需求,此为可选项)
html, body{
 -webkit-user-select: none;
 user-select: none;
}

4、快速滚动和回弹的效果
body{-webkit-overflow-scrolling: touch;}

5、禁止长按链接与图片弹出菜单
a, img{-webkit-touch-callout: none;}

6、去除移动端点击事件出现的背景阴影,也可更换颜色
a, input{-webkit-tap-highlight-color:transparent;}
注:还有一种妥协的方法是把页面非真实跳转链接的<a>标签换成其它标签,可以解决这个问题。

7、移动端清除输入框内阴影
在iOS上,输入框默认有内部阴影,但无法使用 box-shadow 来清除,如果不需要阴影,可以这样关闭:
input, textarea{
 border: 0; /* 方法1 */
 -webkit-appearance: none; /* 方法2 */
}

8、输入框点击默认会有蓝色外边框线
input{outline: none;}

三、HTML 代码相关

1、自适应布局模式
在编写CSS时,不建议把容器的宽度、高度定死。为达到适配各种手持设备,建议使用自适应布局模式,保证页面在各类浏览设备上都能够正常的显示,无需再次考虑设备的分辨率。

2、块级化<a>标签,或按需求尽可能扩大<a>标签囊括的范围
在触控手机上,为提升用户体验,尽可能的保证用户的可点击区域较大。
p1
3、动画效果中,使用 translate 比使用定位性能高

四、JS 事件相关

1、jQuery文件过大,移动端优先考虑使用zepto.js。实际情况中使用jQuery插件不兼容zepto时再考虑使用jQuery

2、click 事件存在 300ms 的延迟
在手机上绑定 click 事件,会使得操作有 300ms 的延迟,体验并不是很好,通常会使用封装的 tap 事件来代替 click 事件。

五、图片相关

1、使用<img>标签时,需根据实际需求设置[width:100%;]自适应撑满区域,还是设置固定宽高。

2、使用背景图片时,需注意实际用图与移动端呈现尺寸的比例为2:1,所以移动端借助[background-size]属性进行比例缩小,相应的按比例缩小[width]、[height]、[background-position]的值。
p2
3、可以合并的图标图片,尽量整合一张,并进行压缩

4、合并Sprite图时每个图片之间必须留有间距

5、能用CSS样式实现的,代替使用图片

6、较大的背景图片、banner图片等尺寸宽度不需要超过640px,切图时先改变图像大小,再进行压缩。

linux上安装node.js

说明:

使用CentOS系统,进行node.js安装,node.js版本- v0.12.0。

1,先下载node.js:

# wget http://npm.taobao.org/mirrors/node/v0.12.0/node-v0.12.0.tar.gz

//用的淘宝镜像,更快

2,解压文件

# tar xvf node-v0.12.0.tar.gz

 

3,进入解压目录

# cd node-v0.12.0

 

4,检查所需要配置

# ./configure

 

5,如出现以下错误,安装gcc-c++ (安装较新的版本可能会出现)

注意:线上服务器请勿随意升级,建议尝试其他版本的 node.js!!!!!

出现错误提示:

WARNING: C++ compiler too old, need g++ 4.8 or clang++ 3.4 (CXX=g++)

# yum install gcc-c++

如无,请跳过

 

6,进行安装(时间比较长):

# make install

 

7,检查是否成功安装,输入命令:

# node -v

 

如果安装成功会输出相应版本号,如:

v0.12.0

 

8,现在可以创建一个test.js文件进行测试,文件内容为:console.log('Hello World.');

输入命令:

# node test.js

输出:

Hello World.

 

育网专题评论区改版

整    理:肖雅君

时    间:2015-12-04

更    新:2016-02-26

说    明:育网专题PC端和WAP端使用本公司开发的评论区修改步骤

 

一、PC端

1.公共头部

2.评论部分

二、WAP端

1.添加手机端评论样式

2.头部添加代码

3.底部添加代码

4.分享

 

PC端和WAP端评论区改版

头部+导航+底部+评论区

以前PC端和手机端的的评论部分都是用的“畅言”(畅言是搜狐推出的社会化评论及聚合平台)。但以后育网专题都会采用育儿网仿畅言做出来的评论。暂时尚未做成后台,所以需要前端手动添加各种文档、修改参数。

一、PC

  1. 公共头部

简介:育网公共头部,包含导航和登录的php文件以及头部样式引入。

添加方式:无需拷贝文件,无需改变路径,只需要在对应位置添加两串固定代码。

添加位置:  

<html>
<head>
<?php include "../global/meta.php";?>
</head>
<body>
<?php include "../global/header.php";?>
</body>
</html>

2.“评论”部分

(1)引入评论:

在<!DOCTYPE html>前添加如下代码:

<?php
include_once('../include/global.php');
$id = 11742336;//帖子ID
?>

(2)修改方式:

后台操作:

专题后台链接:http://www.ci123.com/special/sadmin/clearup_list.php?page=4

编辑那边通过后台发布的评论页面有可能是.html文件,(如:http://www.ci123.com/special/sadmin/recommend/recommend.php?code=piyao-ceqie.html),.html文件对应的是“畅言”的评论。

转成育网评论需在后台操作,步骤如下:

将“是否使用妈妈社区评论”选择“是”:

2

本地操作:

第一步:在index.php中添加两个样式文件(固定链接):

在index.php的<head>部分添加“左侧评论块”和右侧“专题推荐”部分的样式文件:

<link rel="stylesheet" href="http://www.ci123.com/special/dajiashuo-pc/styles/reply.css">

<link href="http://www.ci123.com/special/recommend/css/recom-wqhg.min.css" rel="stylesheet" type="text/css">

(*注:“dajiashuo-pc/styles/reply.css”是公共样式,部分专题都已使用这个样式,除非所有的专题评论区都存在共性的问题,否则不得直接修改这个样式文件。只能在自己写的样式文件里写入新样式覆盖dajiashuo-pc的样式。)

第二步:引入评论区:

在index.php的评论部分添加如下代码:

<?php include_once("../recommend/piyao-ceqie.php");?>

第三步:修改帖子ID【重要】

【重要】不同专题的帖子ID是不一样的。同一个专题的手机端和PC端的帖子ID是同样的。

 

二、WAP端

1.添加手机端评论样式

WAP端只需添加一个样式文件。

<link rel="stylesheet" href=" http://m.ci123.com/special/dajiashuo_wap/styles/reply.css">

2.顶部

包括:PC端/WAP端的链接跳转,育网APP分享,代码如下:

<?php
include_once('../inc/global.php');
if(getOsNew()== 'pc'){
header('Location:http://www.ci123.com/special/survey-ceqie/');//链接为专题PC端的链接
exit;
}
$post_id = 10724610;//帖子ID,重要!每一期都要修改
$url = '专题手机端的访问链接';
$share_pic = '专题分享图片';
$msg = '专题分享文案';
$title = '专题标题';
?>
<!DOCTYPE html>
<html>
</html>

3.底部

包括:评论部分+制作团队+“妈妈社区APP推广”+底部版权

重点是评论以及“妈妈社区”,代码如下:

<div class="weibo">
<div class="say"><i></i><span>大家都在说</span></div>
<?php include_once('../inc/reply.php');?>
</div><!--weibo-->
<div class="part-team">
</div><!-制作团队-->
<?php
if($_COOKIE['uid']>0&&strpos($_SERVER['HTTP_USER_AGENT'], 'MicroMessenger') === false){
?>
<?php } else {?
<a href="http://app.ci123.com/down/bbs.php?type=2" class="app_pro">
<img src="http://m.ci123.com/special/piyao-gudaiyunyu/images/download.png" width="100%">
</a>
<?php }?>
<div class="footer">
</div><!--版权所有-->

4.分享

简介:手机端另一个和往期专题不同变化是分享。

现在的分享采用两种方式,一种是在微信朋友圈推广,采用微信自带的分享方式。另一种是在妈妈社区APP或是育网APP上的分享按钮。

后端已对这两种方式进行了处理,只有在APP上才会显示分享按钮,微信上并不显示。

但是前端这两种方式都要顾及到,所以需要前端修改两个地方的分享文案

添加方式:

1.添加微信分享:

在index.php中添加如下代码:

<!--微信分享内容区域-->

<script src="http://res.wx.qq.com/open/js/jweixin-1.0.0.js"></script>
<script src="http://m.ci123.com/special/weixin/wx_share.js"></script>
<script type="text/javascript">
$.getJSON('http://m.ci123.com/special/weixin/getAuth.php?PackageUrl='+encodeURIComponent(window.location.href),function(data){
callWeiXin(data);
wxShare('侧切会影响产后“性福”?','顺产侧切真的会影响产后性生活吗?《育网辟谣》告诉你真相!','http://m.ci123.com/special/piyao-ceqie','http://m.ci123.com/special/piyao-ceqie/images/share1.jpg');
});
</script>
<?php include_once('../inc/app_share.php');?>

<!--end 微信分享内容区域-->