分类目录归档:WordPress

本站更换主题-zbench

一直在使用Inove这个主题,感觉不错。近来又发现一个很漂亮的主题Zbench。这个主题同样也是国人开发的,超喜欢这个主题,很适合我的性格。今天忙活了3个多小时,终于把这个主题弄好了。

Zbench虽然是国人开发似乎对中文没有特别的支持,今天特意进行了汉化(修改了部分小错误)。如果大家有喜欢这个主题的话,在此留言我可以提供汉化好的主题包。

javascript数组-DOM节点数组

最近发现JavaScript还是一门很有意思的语言,值得好好学习一下。前些天调试一个简单程序时,发现一个问题或者说自己犯了一个简单的错误。

下面我举一个简单的例子说明一下遇到的问题:

我有个HTML文档如下

tomheng
住在webfuns 趣味互联网

我想要删除里面的table节点元素,注意HTML文档中有两个以上的Table节点于是写了如下的代码。

  tb=document.getElementsByTagName("table");
  for(var i=0;i=tb.length;i++){
      document.body.removeChild(tb[i]);
  }

问题分析

有没有发现问题啊?上面的代码是没有错误的,但是就是不能实现我想要的效果,上面的代码不能删除最后一个元素。如果元素多了,你能想出他是怎样删除的吗?

我们都知道数组的复制在大多数语言中都是引用传值的,在JavaScript中也不例外,而且数组的存储结构一般都是采用栈的形式,所以上面的问题就很好解释了。tb变量实质上得到的是DOM中的Table节点数组的引用,我们在For循环中删除Table节点元素同样也会反应在tb这个数组中,这样以来,每删除一个元素数组的长度就会发生变化,根据栈结构的特点,元素自动向上弹出,所以我们使用这样的删除方式只能删除索引为奇数的元素。既然知道的了原因,那么解决起来就比较简单了。

正确代码如下:

   tb=document.getElementsByTagName("table");
  while(tb.length){
     document.body.removeChild(tb[0]);
 }
/*充分利用栈结构的特点,总是删除第一个元素,直到为空*/

关于SEO搜索引擎优化的一些思考和探索

最近一段时间在关注和学习SEO,有些有关搜索引擎的问题和思考的结论需要整理一下,特此记录,以备查询。

一、SEO是什么?是一种技术还是忽悠人的东西?

SEO中文译作搜索引擎优化,在国外已经比较成熟,在国内还处于成长期。正因为处于成长期,所以现在做SEO培训的应该是很有前景的一个项目。那么SEO究竟是什么呢?有人把它当技术来学习,有人把它看做一种思想或者观念,有的人甚至认为SEO就是忽悠人的东西。我暂时还没有资格去评价哪种观点正确。但是我可以表明我的观点,通过最近的学习和思考,在我眼中,SEO在浅层上和操作上确有些忽悠人的成分,但是在深层上和思想上却是很智慧的。之所以这样说是因为SEO在实现上,技术成分不多,或者说SEO做的都是一些细节的东西,是网站设计人员和网站编码人员所没有考虑到的地方;但是SEO需要一种思想,就是在网站建设和运营中要时刻记住网站内容的对象不但是用户,还有搜索引擎。我们不但要重视用户体验的提升,同时也要考虑对搜索引擎也是有好的。这两者应该在管理和规划中并重,更深层上来说网站最终是要对用户友好的,因为搜索引擎背后就是我们的用户,搜索引擎所面对和服务的也是用户,我们就是要通过优化从搜索引擎的广大用户群中发现我们自己的潜在用户,所以我们最终要思考的还是用户体验,但是这种体验有一部分是通过搜索引擎传递到我们的潜在用户那里的。所以一种搜索引擎手法到底对还是不对,最终评价的对象还是用户,只不过我们有时要靠搜索引擎代理用户来完成这个评价,如果这种手法对用户是有价值的,那么可以有90%的置信区间认为我们的手法是正确的;如果一种手法对用户没有价值或者妨碍了用户获取信息,那么这种手法有足够的理由遭到搜索引擎的惩罚。搜索引擎、用户、网站、SEO之间的关系式很微妙的,这个在这里就不去总结了(其实我也没有完全搞清楚)。

PS:SEO搜索引擎优化应该是网站质量建设中的一小部分,我们应该更多的从网站质量建设的角度去理解搜索引擎优化。

二、SEO技术细节的思考

1)keywords和 description的重要性不容质疑,我不同意这两个因素被削弱的观点

2)SEO主要工作是防止内容重复、减少网站死链、外链建设、站内优化

3)title属性(不是title标签)鼓励用但不宜滥用,用在链接的时候要和锚文本不同

4)内容为王,网站质量建设要重视内容建设

5)优化要有策略和计划,不可盲目行动

6)先做流量后做营销

7)网站内容既是给用户看的,也是给搜索引擎看的。应该在不影响搜索引擎的收录的情况下,更多的重视用户体验

三、最后总结一句

SEO是一种细节上的智慧,是网站质量建设的一部分。

设置页面内的所有链接在新页面打开(blank)

今天遇到一个需求,原先页面设计的时候,设计的一个页面是在同一个网页中打开,可是后来发生变化,要求页面中所有链接在新页面中打开。可是如果逐个修改页面中链接效率是极其底的,于是想到能否通过向css样式一样的方式来实现页内的所有链接全部在新页面内打开,在搜索引擎中搜索一下,果然有这样的解决方案。

最终发现了一个这样神奇的标签,只需在网页head加入如下代码。网页中所有的链接就可以在新页面中打开了。

<base target=”_blank”/>

经测试,这个方法在Firefox,Chrome,IE(ie6)内核的浏览器中都有效。

总结:

就是如此简单的base标签,就可以实现我所要实现的效果,着实减轻了我的负担。HTML中还是有很多标签功能是很强大的,过段时间有必要自习复习一下HTML中的标签。看来每一项看似简单的技术,真的要做的极致,确实是需要长时间学习的。

减少网页在IE中的错误–养成良好的编码习惯

相信凡是稍有实战经验的前端开发者,都对IE恨之入骨吧。虽然我不是专做前端的,但是也写过一些网页,调试过一些网页中常见的错误。IE的bug之多,我是领教过的。尽管如此,但是我们不能把我们在网页中的错误都归结于IE之过。毕竟IE早期的版本,开发的时间比较早,那时候网页开发的标准还不是很完善。有时候我们多注意些自身问题,也许就不会打开过多的IEbug的潘多拉魔盒。

总结的经验:

1)标签要正确的结束

在其他现代浏览器Firefox 、chrome等,如果网页中有未正确关闭的标签通常是不会破坏网页的布局的,但是在IE6中,如果有的标签没有正确的关闭,那么布局就会被打乱。所以如果遇到一个样式,无论自己怎么操作,IE6都置之不理的话,那么很可能就是标签未正确关闭所引起的。

2)尽量少的添加注释

在IE6中注释有可能触发一些样式错误,最常见的应该是li标签重复。所以添加注释虽然是一个很好的习惯,但是在HTML中添加注释的时候要小心一些。同时如果发现一些样式不是按自己的想法展现的,那么记住HTML中注释有可能触发IE6中的某些bug,从而引起样式的混乱。

3)body 中尽量不要添加内联样式

内联样式

<style type=”text/css”>

.webfuns.net{color:red;clear:both;}

</style>

以上这些IE错误我都遇到过,在这里总结出来。希望可以对刚进入前端开发的同学有些许帮助,尽量减少网页在IE中的错误。

参考文章:

1)Internet Explorer杯具历史

2)级联式样式表(CSS) 介绍

Ps:

同志们都积极的换IE8吧,因为做网页的需要我这里一直没有机会升级到IE8。

让我祈祷IE6早些死掉吧

wordpress 插件SEO Smart Links是否支持中文

wordpress 插件SEO Smart Links 的作用是为文章添加内部链接,是国外的开发者开发的,所以对英文的支持是很好的。但是因为中英文之间的差异,可能这个插件对中文的支持不是很好,甚至完全不支持都是有可能的。这篇文章的目的就是测试SEO Smart Links插件对中文的支持情况如何。

简单说一下这个插件的主要功能和特点。

1)完全自动添加内部链接

2)可以限定每篇文章自动添加的内链数目

3)自定义搜索关键词和链接地址

4)可以设定能够忽略的关键词

5)设定链接打开方式和nofollow属性

—————————————————————————–

SEO smart Links 插件中文支持情况测试开始:

准备

在SEO Smart Links 后台添加特定关键词和对应的链接。设定的为每个关键词只能添加一次链接。

这是一张图片,不影响测试。

示例:

tom heng 是一位 PHP 开发者,   百度  是一个中文搜索引擎。如果你不知道php是什么的话,请到百度中搜索相关关键词查询。用Google查询关于tomheng的相关信息。

结论:

SEO Smart Links 插件是不支持中文的。即使我再中文关键词两侧故意添加空格,这个插件也不能够识别中文关键词。但在中英文混合的情况下仍然能够分离出英文。所以目前这个插件应用在英文战中比较合适。

Download: SEO Smart Links

脚印:QQREADERCD84270303C310ED