Best way to allow client to do SEO on view files?

I'm about to start work on a project for a client that is huge into SEO
and conversion tracking, etc. One of the goals of the project is to make
sure that each (HTML) page's meta information can be tweaked separately.
But, I still want to make liberal use of layouts to keep with the DRY
philosophy (and because all his older projects used untemplated files
and were NIGHTMARES to try to work with)

Does anyone know of a good way of handling this? Are partials the best
way? Oh, and the client id comfortable with HTML, but Ruby might be a
stretch for him (though he can work his way around PHP pretty well).

In your view at the very top:

<% @page_title = 'My Page Title' -%>
<% @meta_description = 'My Meta Description' -%>
<% @meta_keywords = 'my key words' -%>

In your layout:

<title><%= @page_title ? @page_title : "Some Default" %></title>
<%= @meta_keywords ? "<meta name='keywords' content='#{@meta_keywords}' />" : "" %>
<%= @meta_description ? "<meta name='description' content='#{@meta_description}' />" : "" %>

Works great for us. It also allows us to set the @page_title and @meta_description to something relevant for instances of say /product/show/1 and /product/show/2 by using attributes of @product in the view...

-philip