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="https://jmacuna73.blogspot.com/feeds/posts/default"/><br/>
<label for="article">Url del post:</label> <input type="text" id="article" value="http://jmacuna73.blogspot.com/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.

Word Count Post











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




0 comentarios: