Como hacer que si alguien copea y pega (Copy Paste) texto de mi blog a otro blog o cualquier otra pagina web (Facebook, twitter, etc), le aparezca automaticamnete informacion como mi link del blog, mi marca o mensaje de copyright.
Esta no es una forma de evitar que alguien nos copie contenido del blog, si no de agregar la URL de nuestro blog cuando alguien nos copie el texto de alguna entrada. Por ejemplo, si copias el texto del siguiente párrafo y lo pegas en el recuadro de abajo, aparecerá la URL de esta entrada así como el nombre de este blog.
En este caso verás que el enlace es sólo un texto, pero si quien lo copia lo pegara estando en la pestaña "Redactar" entonces se copiará como un enlace HTML.
Ciertamente quien copie podrá borrar esa información extra que hemos añadido, pero también existe la posibilidad de que la deje, o incluso que agregue una referencia más formal sobre el blog donde lo ha tomado y eso se transforma en más tráfico para el blog.
Este método usa jQuery para que pueda ser servible en todos los navegadores, y el código es mucho más corto que el que los servicios externos ofrecen.
Para ponerlo en tu blog sólo entra en Plantilla | Edición de HTML y antes de </body> agrega lo siguiente:
<script src="//ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<script>
//<![CDATA[
// Añadir información extra al hacer copy & paste // Visita: https://brayanrockerplus.blogspot.com
$("body").bind('copy', function (e) {
if (typeof window.getSelection == "undefined") return;
var miblog = document.getElementsByTagName('body')[0];
var seleccionar = window.getSelection();
if (("" + seleccionar).length < 10) return;
var nuevodiv = document.createElement('div');
nuevodiv.style.position = 'absolute';
nuevodiv.style.left = '-99999px';
miblog.appendChild(nuevodiv);
nuevodiv.appendChild(seleccionar.getRangeAt(0).cloneContents());
if (seleccionar.getRangeAt(0).commonAncestorContainer.nodeName == "PRE") {
nuevodiv.innerHTML = "<pre>" + nuevodiv.innerHTML + "</pre>";Si ya tuvieras jQuery en tu plantilla entonces omite la primera línea.
}
nuevodiv.innerHTML += "<br/><br/>Artículo original: <a href='"
+ document.location.href + "'>"
+ document.location.href + "</a><br/>©Nombre de mi blog";
seleccionar.selectAllChildren(nuevodiv);
window.setTimeout(function () { miblog.removeChild(nuevodiv); }, 200);
});
//]]>
</script>
tambien podras cambiar el Nombre de tu blog, (En ese apartado yo escribi lo siguiente: BrayanRocker Y en el texto pegado aparecera asi: ©BrayanRocker) y si lo deseas también puedes cambiar el texto que dice "Artículo original:", puedes ponerle "Más información en:" o lo que gustes.
El script tiene una condición, para cuando el texto que se copie sea muy corto entonces no se ejecute, por ejemplo, habrá quien sólo quiera copiar una palabra o dos, ahí no vale la pena mostrar la información de referencia ya que no está copiando como tal el contenido de tu entrada. Esta condición está determinada por el número de caracteres que se copien, que por defecto la hemos puesto en 10 ese valor lo puedes modificar por uno más alto o uno más corto.