SEO对网站推广的作用是至关重要的。Ruby on rails作为现代的专为web量身定制的框架,处理SEO相当便利。今天,我来分享一下在实际的ROR网站运营中的SEO的一些Tips。
1.页面基本元素SEO
页面基本元素设置是做页面级SEO中最基本,最简单,同时也是最重要的处理。页面基本元素的设置,简单的说就是 页面title,description,keywords的设置。
这些元素的的内容可以采用简单的方法直接设置,通常在controller的action里设置变量@title,然后在view中引用,例如下面的代码:
# 在 controoler action 中的代码
...
@title = "这是页面标题"
...
#在view中的代码
...
<title><%= @title %></title>
...
上面的方法简单明了。但是title等页面数据本属于view层的内容,放在action中设置并不直观,也不易修改,我使用的是另外一种方法,代码如下:
# 在 ApplicationHelper 中定义方法
#set the title for the page
def title(page_title)
content_for(:title) do
"#{page_title} - xx网"
end
end
#set the description for the page
def description(page_description)
content_for(:description) do
"<meta name=\"description\" content=\"#{page_description}\" />\n"
end
end
#set the keywords for the page
def keywords(page_keywords)
content_for(:keywords) do
"<meta name=\"keywords\" content=\"#{page_keywords}\" />\n"
end
end
#layout application 的代码
...
<title><%= yield(:title) || 'xx网'%></title>
<%= yield(:description)%><%= yield(:keywords)%>
...
# 具体页面view的代码
<% title "这个是页面title" -%>
<% description "这个是页面描述" -%>
<% keywords "ror页面seo" -%>
....
这样,每个页面的title等元素都是在自己页面view中,便于设置和修改。
2.去除干扰信息
SEO中一个重要的概念就是内容和主题(关键字)越契合,排名就可能越靠前。但是在页面显示内容是常常会显示一些不相关的内容,例如边栏工具条,广告内容等。
这个时候常常把这些内容写成javascript document.write输出,搜索引擎会忽略javascript中的内容,从而达到去除干扰信息的目的。
ror可以把这个方法很好的包装,以更方便的使用,看代码:
#在 ApplicationHelper中定义如下方法
#html to javascript
def document_write(options={},&block)
pos = output_buffer.length
block.call
str = output_buffer[pos..-1]
output_str = "<script type=\"text/javascript\">\ntry {\n"
str.each_line do |s|
output_str << "document.write(\"#{s.rstrip}\");\n"
end
output_str << " } catch(err) { } \n </script>\n"
output_buffer.replace("#{output_buffer[0..pos]}\n#{output_str}")
end
这个时候,view中希望以document.write输出的内容写成
...
<% document_write do %>
it is very good.
haha<%=Time.now%>
<%="very good"%>
这里面的文章将通过javascript输出
<input type='text' name='yes' value='hello'/>
<% end %>
...
实际输出html如下
<script type="text/javascript">
try {
document.write("");
document.write(" it is very good.");
document.write(" hahaFri May 29 00:20:06 +0800 2009");
document.write(" very good");
document.write(" 这里面的文章将通过javascript输出");
document.write(" <input type='text' name='yes' value='hello'/>");
} catch(err) { }
</script>
下篇讲一下如何做相关推荐,以及如何编织站内链接网,待续。
分享到:
- 2009-05-29 00:26
- 浏览 1457
- 评论(5)
- 论坛回复 / 浏览 (4 / 3660)
- 查看更多
相关推荐
Ruby on Rails Guides v2 - Ruby on Rails 4.2.5
ruby on rails社区网站开发源码
Ruby on Rails 实战圣经, PDF 档。
《Ruby on Rails Tutorial》中文版(原书第2版,涵盖 Rails 4) Ruby 是一门很美的计算机语言,其设计原则就是“让编程人员快乐”。David Heinemeier Hansson 就是看重了这一点,才在开发 Rails 框架时选择了 Ruby...
本书教您如何使用Ruby on Rails开发和部署真正的,具有工业实力的Web应用程序,Ruby on Rails是为诸如Twitter,Hulu,GitHub和Yellow Pages等顶级网站提供支持的开源Web框架。
Ruby on Rails 实战圣经(网页版) html
Ruby On Rails中文教材(PDF)
程序 博文链接:https://zhangjingqiang.iteye.com/blog/47041
ruby on rails视频教程 链接:https://pan.baidu.com/s/10eKsJLllLySXk-b5muV_Qw 密码见文件
Ubuntu系统ruby on rails安装 Ubuntu系统ruby on rails安装 Ubuntu系统ruby on rails安装 Ubuntu系统ruby on rails安装 Ubuntu系统ruby on rails安装 Ubuntu系统ruby on rails安装 Ubuntu系统ruby on rails安装 ...
ruby on rails对mongodb的操作ruby on rails对mongodb的操作ruby on rails对mongodb的操作ruby on rails对mongodb的操作
Ruby on Rails Web开发学习实录 内容简介: 在目前的主流web开发技术中,基于ruby语言的rails框架是做网站开发速度最快的工具。它可以达到j2ee框架开发速度的5~10倍,并且代码量也非常少。另外由于代码量的大幅度...
Web开发:Ruby on Rails.pdf
最终的示例程序将在外表上和一个同样采用 Rails 开发的微博网站十分相似2。虽然我们将主要的精力集中在这个示例程序上了,但是本书的重点却在于提供一些通用的方法,这样你就会具有坚实的基本功,不论开发什么样的 ...
学习Ruby on Rails 4.0的逐步指南。 它包括针对Ruby 2.0.0的基本教程,是为至少了解另一种编程语言并熟悉HTML的程序员编写的。
meta-tags, 用于 Ruby on Rails 应用程序的搜索引擎优化( SEO ) 元标记:使你的Rails 应用程序搜索引擎友好的gem 用于 Ruby on Rails 应用程序的搜索引擎优化( SEO ) 插件。Rails 上的 rubyMetaTags主分支完全支持 ...
Ruby on Rails中文指南
“The author is clearly an expert at the Ruby language and the Rails framework, but more than that, he is a working software engineer who introduces best practices throughout the text.” —Greg ...
Ruby On Rails 官方教程,这本书讲解如何使用 Ruby on Rails 框架开发应用,以及如何把应用部署到生成环境。本书使用 Rails 默认的开发工具栈开发了一个完整的社交应用(类似 Twitter)。读完本书后你将掌握如何使用...