Code Monkey home page Code Monkey logo

simple_seo's Introduction

SimpleSEO

Descripción

El objetivo de este plugin es centralizar la administración del SEO básico (title, keywords y description) en los distintos idiomas de una aplicación en un único fichero yml.

Getting it

$ script/plugin install git://github.com/nickel/simple_seo.git

Uso

Metatag & title

Para poner en funcionamiento el plugin necesitaremos definir en el layout el metodo metatags. Este método recibe opcionalmente title, title_connector y title_reverse.

  • title define un title global para toda la aplicación independiente al definido el fichero yml.
  • title_connector define el conector entre el title global y el definido en el fichero.
  • title_reverse, con este parametro booleano podremos decidir en que orden van los titles antes explicados.

En nuestro application.html.haml (o en tu html.erb :), unos ejemplos:

!!!

%html
  %head
    = metatags
    or
    = metatags(:title => 'My master title', :title_connector => ' :: ')
    or
    = metatags(:title => 'My company', :title_connector => ' - ', :title_reverse => true)

YML File

El fichero donde configuraremos el SEO de nuestro site debe estar en config/seo.yml.

Default

Si no definimos el SEO para un controlador/acción concreto, la información bajo default será la seleccionada por defecto. Esta estrategia nos permite definir el SEO para todas aquellas páginas a las que no deseemos asignarle un SEO específico.

default:
  keywords: "default keywords"

  en:
    title: I need my seo, dear web developer
    keywords: "more keywords"
  es:
    title: Necesito mi seo, querido desarrollador web
  de:
    title: ...

Static controller

Bajo static podemos la lógica que utiliza la aplicación para servir contenido estático, en el caso que la aplicación usara este tipo de lógica. Un ejemplo:

static:
  controller: pages
  action: show
  view: name  # El parametro que indica el nombre del contenido estático.

pages_quienes_somos:  # "controller_#{name}"
  keywords: "waps"
  
  en:
    ...
  es:
    ...

Standard controller/action

Y por cada controlador/action añadiremos la siguiente configuración al fichero:

welcome_index:
  keywords: "website, web, rails, ruby"

  en:
    title: Home
    keywords: "site, car"
    description: "This is a description"
  es:
    title: Inicio
    keywords: "sitio, coche"
    description: "Esto es una descripción"
  de:
    ...

Otras opciones

Si tuviesemos que definer keywords de forma dinámica tenemos la posibilidad de definirlo con el método add_meta_for en el controlador de la siguiente forma:

def show
  add_meta_for(:keywords, :en => "yellow submarine", :es => "submarino amarillo")
  add_meta_for(:description, :en => "...", :es => "...")
end

License and copyright

This app is MIT licensed, wich basically means you can do whatever you want with it, and there's no warranty of any kind. Read the MIT-LICENSE file to get the details. However, if you like it I would like you to send me an e-mail letting me know, also I'd like to receive your feedback and suggestions.

Thanks!

(c) 2009, Juan Gallego (juan.gallego.iv AT gmail DOT com) http://juan.gg

simple_seo's People

Stargazers

 avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.