/ Ghost

Ghost CMS: abrir enlaces externos en nuevas pestañas

Algo de lo que adolece la plataforma de blogging Ghost, es que a la hora de añadir un enlace, lo ejecuta en la misma pestaña del navegador donde te encuentras. A efectos prácticos, es que al abrir un enlace externo, perdemos nuestro blog por la página que acabamos de abrir.

Una forma de superar esta restricción, es hacerlo manualmente en cada artículo cada vez que insertarmos un enlace externo. Sí, usando código html para el enlace e insertardo: el famoso target="_blank".

Aunque funcional, es un poco engorroso hacerlo de esta manera. Por eso hace tiempo que buscando por internet, encontre una solución más automática para este proceso (perdonad pero no recuerdo la fuente donde lo ley).

Para ello, vamos a insertar el siguiente código en la sección <> Code injection:

<script type="text/javascript">
var links = document.querySelectorAll( 'a' );
    for( var i=0, limit=links.length; i<limit; i++ ) {
        if(links[i].href.indexOf(location.hostname)===-1){
        links[i].setAttribute("target", "_blank");
      }
    }
</script>

La cosa debería de quedar algo como así:

ghost-enlace-externo

Ahora de aquí en adelante, los enlaces externos los abrirá en una nueva pestaña, pero respetará los enlaces interno abriéndolos en la misma pestaña actual.