2010-09-23 6 views
6

Sono sorpreso che il creatore di Rails non ci abbia pensato, se qualcuno può aiutare, sarebbe fantastico.SEO/Rails - Come aggiungere il tag title a ogni "link_to"

Come possiamo fare per cambiare questo:

<%= link_to "My Title", :controller => "products" %> 

a questo automaticamente:

<%= link_to "My Title", :controller => "products", :title => "My Title" #basically a copy of the text %> 

penso che potrebbe aiutare SEO molto.

Grazie mille!

Alex

+4

Questo non aiuterebbe SEO a tutti - sarebbe del tutto superfluo. Aggiungerà brutte descrizioni di comandi ovunque e ripeterà molte informazioni agli utenti di screen reader. Utilizzare un attributo titolo quando è necessario fornire informazioni aggiuntive che non è possibile includere nel testo del collegamento o che non sono sufficientemente importanti per farlo. – Quentin

+0

Sono sorpreso che tu voglia farlo, il testo del collegamento non è abbastanza ...? –

+0

La risposta di David ha senso, ma ho avuto l'esperienza precedente. È meglio ripetere il testo piuttosto che lasciare il tag title vuoto. E non ho il tempo di specificare "ulteriori informazioni" su tutti i miei link. Grazie a tutti e due per l'interesse. – Alextoul

risposta

-4

provare qualcosa di simile

def link_to_with_autotitle(title, args = {}) 
    link_to_without_autotitle(title, args.merge(:title => title)) 
end 
alias_method_chain :link_to, :autotitle 

Non hanno testato il codice e non ricordo l'esatto spec link_to, ma penso che si ottiene l'idea

+0

Grazie, buona idea – Alextoul

+1

Args.merge (: title => title) non sovrascriverebbe effettivamente il titolo in args, nel caso ne fosse specificato uno? {: title => title} .merge (args) dovrebbe avere ragione. –

7

La tua domanda è valida e Non so perché sei sottovalutato, ma il creatore di binari in realtà ha pensato a questo. In realtà, si può fare in modo molto semplice modo invece di complicare utilizzare un metodo personalizzato:

<%= link_to "Link", { :action => "show" }, { :title => "Title" } %> 

È possibile infatti aggiungere qualsiasi parametro che ti piace, non è solo il titolo.

Spero che questo aiuti!