11 de agosto de 2014

Para el post perfecto el tamaño importa: contador de palabras


El algoritmo de Google conocido como Panda 4.0 (última actualización) que empezó a tener sus primeros efectos en mayo, favorece a los sitios web que publiquen contenidos de gran calidad y con una extensión por encima de las 800 palabras.


Un artículo muy interesante que vale la pena detenerse a leer y que describe los posibles cambios de este algoritmo, tiene como título Google Panda 4.0 ya está suelto. Comienza el baile de posiciones… de @miguelfloro.

Tratando de profundizar más en este asunto, diré que estudios recientes arrojan el siguiente resultado: un post popular, en promedio, tiene 1142 palabras de longitud. Fuente original: https://blogpros.com/blog/2014/05/makes-perfect-blog-post-infographic
@javiergosende en su artículo Crear un post perfecto para tu blog ¿el tamaño importa? nos sitúa en el contexto y nos detalla los aspectos más importantes.

Existen plugins para WordPress que añaden recuento de palabras y caracteres: https://wordpress.org/plugins/wordcounternet-word-and-character-counter/
Desafortunadamente, los que usamos otros gestores de contenido no disponemos de este tipo de herramientas.

Vamos a ser capaces de obtener el número de palabras que contiene nuestro post con sólo unas líneas de código html:

<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.1.1/jquery.min.js" type="text/javascript"></script>
<script type="text/javascript">
$(document).ready(function(){
 initializeFeed();
});
function initializeFeed(){
 var word = $('#wordCount'), loadImg = $("#loadingfeed"), url = $('#article').val(), output = '', entry;
 word.val('');
 loadImg.show();
 
 word.after('<br/><br/><div class="wordCount"><strong>0</strong></div>');
 word.bind('keyup click blur focus change paste', function(){
  var numWords = jQuery.trim($(this).val()).split(' ').length;
  if($(this).val() === ''){
   numWords = 0;
  }$(this).siblings('.wordCount').children('strong').text(numWords + ' Palabras');
 });
 
 var feed = $('#myfeed').val(); //feed url
 var xhr = createCORSRequest("GET","https://api.rss2json.com/v1/api.json?rss_url="+feed);
 if (!xhr) {
   throw new Error('CORS not supported');
 } else {
  xhr.send();
 }
 xhr.onreadystatechange = function() {
  if (xhr.readyState==4 && xhr.status==200) {
   var responseText = xhr.responseText;
   var result = JSON.parse(responseText);
   if(result.status != "error"){
    var entry = result.items;
    for(var i=0; i<entry.length; i++){
     if(entry[i].link == url){
      output += entry[i].content;
      break;
     }
    }
   }else{
    url = feed;
   }
   if(output.length){
    output = output.replace(/(<([^>]+)>)/ig,"");
    word.val(output);
    word.blur();
   }else{
    word.siblings('.wordCount').children('strong').text('Url inválida: ' + url);
   }loadImg.hide();
  }
 }
}
function createCORSRequest(method, url) {
    var xhr = new XMLHttpRequest();
    if ("withCredentials" in xhr) {
        xhr.open(method, url, true);
    } else if (typeof XDomainRequest != "undefined") {
        xhr = new XDomainRequest();
        xhr.open(method, url);
    } else {
        xhr = null;
    }
    return xhr;
}
</script>
<label for="myfeed">Feed del Blog:</label> <input type="text" id="myfeed" value="http://www.tecnoblog.guru/feeds/posts/default"/><br/>
<label for="article">Url del post:</label> <input type="text" id="article" value="http://www.tecnoblog.guru/2014/08/como-funcionan-los-buscadores.html"/> <input type="button" value="Enviar" onclick="initializeFeed()"/>
<textarea id="wordCount"></textarea>


Sigue las siguientes instrucciones:

  • escribe en la primera caja de texto un feed válido (Ejemplo: http://feeds2.feedburner.com/Wwwhatsnew)
  • en el segundo campo de texto, introduce la url o dirección del post a analizar (Ejemplo: http://feedproxy.google.com/~r/WwwhatsNew/~3/eOev3h0oi98/).
  • y pulsa el botón Enviar. Obtendrás el resultado en tiempo real.


Si lo prefieres, puedes pegar directamente el texto en éste campo (el de mayor longitud) y el programa devolverá su extensión en número de palabras. Así de fácil :)

Podéis ver el ejemplo en funcionamiento y copiar el código html en: http://rawgithub.com/jmacuna/word-count-post/master/Word-Count-Post.html

Nota: Los dominios de Blogger y Google Drive utilizan protocolo seguro (https) en sus comunicaciones y ello nos obliga a que las url introducidas tengan que usar el mismo protocolo para que el ejemplo funcione. Ésto no será necesario en cualquier otro entorno (si nos bajamos el código html para trabajar en local).


0 comments:

Publicar un comentario