我想写这个:
%meta{ :name => "keywords", :content => "#{@page_city}, #{truncate_words(@page_keywords, 7) || 'Meta, Words, Are, Dope, For, SEO'}"}
基本上它会查看是否存在具有页面城市或关键字的本地页面,并将其添加为元关键字。如果没有,它会说后者。
这有效,但唯一的问题是page_city出现后的第一个逗号。所以现在看来...... ..
<meta content=', Meta, Words, Are, Dope, For, SEO' name='keywords' />
有没有人知道如何将“,”包含在嵌入变量中?
答案 0 :(得分:2)
对于以下情况,您通常可以依靠数组:
- default_keywords = %w[ Meta Words Are Dope For SEO ]
- meta_content = [ @page_city, (truncate_words(@page_keywords, 7) || default_keywords) ]
%meta{ :name => "keywords", :content => meta_content.flatten.compact.join(',') }
Array#compact删除所有nil值以避免插入额外的逗号。
答案 1 :(得分:0)
你总是可以这样做:
#{@page_city + ', ' if @page_city}
就个人而言,我可能会采取不同的方法来解决这个问题:
@arg1 = 'foo'
@arg2 = 'bar'
@arg3 = 'baz'
[@arg1, @arg2, @arg3].join(", ") # => "foo, bar, baz"