Meta tags title e description dinamici in rails

Creato il 12 dicembre 2011 da Mareika @mareikagiacobbi
Tutti noi sappiamo quanto sia importante avere i meta tag title e description pertinenti con il contenuto della nostra pagina, ci permettono di scalare la SERP senza troppa fatica a condizione che essi rappresentino il contenuto della pagina e non siano ripetuti nelle altre pagine del sito.    Una volta finita la nostra applicazione in rails ci prendiamo 30 minuti per cercare di capire come cambiare i meta tag in questione in modo dinamico e siccome siamo pigri lo vogliamo fare secondo la logica DRU :)   Questa che vi illustro è solo una delle tante tecniche a disposizione, ma è molto veloce da implementare, ovvio, i tag non si generano da soli sempre "a mano" dovremo scriverli ma non vogliamo andare ad intaccare in nostro template e quindi modificheremo i controllers.  

Nel nostro template layout/application.html.erb

<title>Il mio sito <%= @meta_title %></title>
<meta name="keywords" content="<%= @meta_keywords %>" />
<meta name="description" content="<%= @meta_description %>" />

 Nel nostro  application controller:

before_filter :meta_defaults
private

def meta_defaults
	@meta_title = "Home page"
	@meta_keywords = "le mie parole chiave"
	@meta_description = "il mio meta description"
end

In questo modo andiamo a scrivere dei meta tag di default nelle nostre pagine se poi vogliamo cambiare i tag corrispondenti alla view di una specifica azione possiamo fare così:

def show_item
    @post = Post.find(params[:id])
    @meta_title = "#{@post.name} - "
    @meta_description = @post.short_description
end

Questo potrebbe essere un buon modo per aggiungere meta tag al nostro blog o a pagine create dall'utente, per esempio, potremmo aggiungere al nosto modello 2 nuovi campi per la gestione dei meta tag title e description e farli compilare all'utente.

Spero sia un spunto gradito.


Potrebbero interessarti anche :

Possono interessarti anche questi articoli :