No es bueno copiar contenido de otros sitios sin citarlos o sin hacer mención del mismo y en mi opinión tampoco es bueno restringir la copia de todo tu blog con una restricción de selección de texto.
Las imágenes por ejemplo se restringen con evitar el hotlink pero de alguna manera (por que hay maneras) siempre te van a terminar copiando algo.
Aprovechando la situación de los copiadores profesionales o de los robots, que mejor que darles la oportunidad de hacerlo pero añadiendo una nota obligatoria al momento de que copien dicho texto.
No hay moral, solo hay scripts.
El código original no es mío. No tengo idea de quien es.
Script para agregar datos cuando te copien en Javascript
Código :
<script type="text/javascript"> function addLink() { var body_element = document.getElementsByTagName('body')[0]; var selection; selection = window.getSelection(); var pagelink = "<br /><br />Más información: <a href='"+document.location.href+"'>"+document.location.href+"[/url]<br />Copyright © <b>Psicomatico.net</b>"; var copytext = selection + pagelink; var newdiv = document.createElement('div'); newdiv.style.position='absolute'; newdiv.style.left='-99999px'; body_element.appendChild(newdiv); newdiv.innerHTML = copytext; selection.selectAllChildren(newdiv); window.setTimeout(function() { body_element.removeChild(newdiv); },0); } document.oncopy = addLink; </script>
Explicando el script
Es bastante cómico y parece ser magia negra, pero este sencillo script copiará junto con lo copiado una nota de copyright totalmente personalizable.
Si sabes algo de javascript lo entenderás y lo más probable es que dejes de leer a partir de aquí y te vayas a tu editor para probarlo.
Para aquellos que no tienen ni idea pero les gusta dicha idea, pruebenlo copiando cualquier texto (de preferencia la zona del script no) en el blog de la entrada original, haciendo clic aquí.
Bueno, más que nada no se está metiendo con el texto copiado ni con su computadora en sí, simplemente se agrega una variable al texto copiado cuando se selecciona cualquier texto.
Le asignan la variable a la selection
Código :
selection = window.getSelection();
Y al copiar (variable copytext) las juntan
Código :
var copytext = selection + pagelink
Lo que me gusta de este script es que se puede personalizar ya usando las funciones y variables del mismo.
Por ejemplo podríamos agregar una nueva variable y agregar texto personalizado antes y después del texto copiado, podemos eliminar el texto copiado y agregar un mensaje personalizado para que cuando lo peguen se sorprendan, etc.
Personalizando
En la parte de var pagelink ="..." puedes agregar tu mensaje personalizado que lo puedes estructurar con HTML y con variables en Javascript.
Si quieres agregar un mensaje antes del texto copiado sustituye la linea
Código :
var copytext = selection + pagelink;
Por la siguiente
Código :
var copytext = pagelink + selection;
Y si quieres agregar un mensaje antes y otro después del texto copiado asigna una nueva variable y agregala
Código :
var pagelinkantes = "Este mensaje esta antes del texto copiado";
Y si no te quieres confundir modifica la variable que viene por defecto y cambiale el nombre a la variable
Código :
var pagelink = "..."
Por la siguiente
Código :
var pagelinkdespues = "Este mensaje esta despues del texto copiado";
Y sustituye la linea
Código :
var copytext = selection + pagelink;
Por la siguiente
Código :
var copytext = pagelinkantes + selection + pagelinkdespues;
Usa tu imaginación, se puede hacer un montón de cosas.
Agregandolo a tu web
Funciona en todos los navegadores (corrijanme), no lo he probado en celulares ni en iPods, iPads, tablets, etc.
Simplemente agrega el código entre <head>Aquí merengues</head>.
Yo uso Wordpress y lo agregue en el archivo head.php al principio del head.
Si tienes algún problema con gusto te auxilio. Para aquellos que se les pueda complicar mucho agregarlo a Wordpress, haré un plugin más adelante el cual será publicado en Psicomatico.net, mi blog.
¿Sabes SQL? ¿No-SQL? Aprende MySQL, PostgreSQL, MongoDB, Redis y más con el Curso Profesional de Bases de Datos que empieza el martes, en vivo.
Por Freddie el 15 de Febrero de 2011
Igual imagino que hay gente que realmente odia que la copien.
BTW: Eres el post 95.000 de Cristalab, felicidades
Por XKlibur el 15 de Febrero de 2011
A veces si es molesto que te copien y no te citen, es una buena solución, gracias.
Genial que harás un plugin, seguro será muy utilizado
Por Kinduff el 15 de Febrero de 2011
Freddie :
¿Tendré una estrellita?
XKlibur-blog :
Gracias, les avisaré cuando logré hacerlo funcionar
Por NEO_JP el 15 de Febrero de 2011
Por CortesWD el 15 de Febrero de 2011
Por torrealbaruben el 15 de Febrero de 2011
Por noeki el 16 de Febrero de 2011
Por HernanDroid el 17 de Febrero de 2011
Por Dsandi el 22 de Marzo de 2011
Para las personas que usamos wordpress, hay un plugin que en lo personal yo uso y funciona muy bien,, No permite que copien el contenido de tu web y deshabilita el clic derecho..
Plugin: wp-copyprotect
Por Kinduff el 22 de Marzo de 2011
Dsandi-blog :
Es muy buen plugin, pero lo malo es que si quieres compartir código en tutoriales o manuales, resulta imposible. Lo bueno de este script es que es adaptable, liviano y puedes controlar donde y como actúa.
Por selvanet el 10 de Julio de 2011
Por JoseBarceloFoto el 14 de Septiembre de 2011
Por paulino el 10 de Abril de 2012
<script language="JavaScript">
var message="";
function clickIE() {if (document.all) {(message);return false;}}
function clickNS(e) {if
(document.layers||(document.getElementById&&!document.all)) {
if (e.which==1||e.which==2||e.which==3) {(message);return false;}}}
if (document.layers)
{document.captureEvents(Event.MOUSEDOWN);document.onmousedown=clickNS;}
else{document.onmouseup=clickNS;document.oncontextmenu=clickIE;}
document.oncontextmenu=new Function("return false")
function disableselect(e){
return false
}
function reEnable(){
return true
}
document.onselectstart=new Function ("return false")
if (window.sidebar){
document.onmousedown=disableselect
document.onclick=reEnable
}
</script>
Por jonasanx el 11 de Abril de 2012
Por Kinduff el 11 de Abril de 2012
jonasanx :
Sip. Eso es básicamente la filosofía del opensource y el software libre.
Por David el 12 de Marzo de 2013
Algunas veces el trabajo no es opensource y a nadie le gusta que otro se atribuya los méritos de algunos artículos (el que no corre vuela).
Un saludo y gracias otra vez!
Por Rossy el 25 de Abril de 2013
Por ErodioneM el 30 de Agosto de 2014
Por David el 04 de Octubre de 2015
Ok, si, copiar sin citar esta muy mal. Suelo regañar a mis colegas cuando hacen eso en nuestros proyecto
Por David el 04 de Octubre de 2015