Mostrar anuncios aleatorios con código JavaScript

  • Autor Autor JuarbeAbraham
  • Fecha de inicio Fecha de inicio
J

JuarbeAbraham

No recomendado
Verificado por Whatsapp
¡Usuario con pocos negocios! ¡Utiliza siempre saldo de Forobeta!
Hace poco encontré un código que me permitía mostrar una imagen aleatoria de 3 disponibles cada vez que cargaba la pagina. Aquí les dejo el código:
JavaScript:
<script type="text/javascript">
  var imageURLs = [
       "https://od.lk/s/MzNfMTY1NzkxMzZf/Anuncio%20300x300.png"
     , "https://od.lk/s/MzNfMTY1ODI0MDdf/Anuncio%20300x300%203.png"
     , "https://od.lk/s/MzNfMTY1ODI0MDZf/Anuncio%20300x300%202.png"
  ];
  function getImageTag() {
    var img = '<img src=\"';
    var randomIndex = Math.floor(Math.random() * imageURLs.length);
    img += imageURLs[randomIndex];
    img += '\" alt=\"Some alt text\"/>';
    return img;
  }
</script>
<script type="text/javascript">
  document.write(getImageTag());
</script>

Habrá lo mismo para códigos script de anuncios? Lo que quiero es usar códigos de anuncios de diferentes compañías, para así mostrarlos aleatoriamente en un solo bloque, en lugar de llenar la web de anuncios por todas partes. Agradezco de ante mano 🤟🏻😎
 
Lo puedes hacer en el lado de php, haces una lista con todos los anuncios y las pociones, seleccionas aleatoriamente los índices de los que vas a mostrar y luego renderizas
 
Lo puedes hacer en el lado de php, haces una lista con todos los anuncios y las pociones, seleccionas aleatoriamente los índices de los que vas a mostrar y luego renderizas
Si lo haces con javascript te arriesgas a que tus anunciantes te penalicen, adsense por ejemplo pide que no cambies el javascript de ellos, pero con php no hay problema
 
Si, pero supongo que con PHP abría que añadir el código dentro del tema en wordpress, verdad? No uso adsense, uso adsterra y adskeeper.
 
Si, pero supongo que con PHP abría que añadir el código dentro del tema en wordpress, verdad? No uso adsense, uso adsterra y adskeeper.

Hola, puedes hacerlo de esta manera espero te pueda servir.

JavaScript:
   var anuncios = [];
   var index = 0;
   anuncios[0] = 'Codigo anuncio 1';
   anuncios[1] = 'Codigo anuncio 2';
   anuncios[2] = 'Codigo anuncio 3';
   index = Math.floor(Math.random() * anuncios.length);
   document.write(anuncios[index]);

Acá puedes ver como funciona. -> probar código
 
Así es, tendrás que modificarlo o crear un archivo nuevo y llamarlo
o crear un mini plugin. La pregunta es que sabes de programación y cuales son las condiciones de los anunciantes que usas
 
@quimbox y @jmdoren intente con ese codigo, pero me da error:

JavaScript:
<script>
   var anuncios = [];
   var index = 0;
   anuncios[0] = '<script type="text/javascript">
    atOptions = {
        'key' : '335bf52c11ddd367d6e0b0fd2c50b2cc',
        'format' : 'iframe',
        'height' : 250,
        'width' : 300,
        'params' : {}
    };
    document.write('<scr' + 'ipt type="text/javascript" src="http' + (location.protocol === 'https:' ? 's' : '') + '://www.madratesforall.com/335bf52c11ddd367d6e0b0fd2c50b2cc/invoke.js"></scr' + 'ipt>');
</script>';
   anuncios[1] = '<!-- Composite Start -->
<div id="M545930ScriptRootC832619">
</div>
<script src="https://jsc.adskeeper.co.uk/p/e/pelisyseriesdesobra.co.832619.js" async>
</script>
<!-- Composite End -->
';
   anuncios[2] = '<script>
   var anuncios = [];
   var index = 0;
   anuncios[0] = '<script type="text/javascript">
    atOptions = {
        'key' : '335bf52c11ddd367d6e0b0fd2c50b2cc',
        'format' : 'iframe',
        'height' : 250,
        'width' : 300,
        'params' : {}
    };
    document.write('<scr' + 'ipt type="text/javascript" src="http' + (location.protocol === 'https:' ? 's' : '') + '://www.madratesforall.com/335bf52c11ddd367d6e0b0fd2c50b2cc/invoke.js"></scr' + 'ipt>');
</script>';
   anuncios[1] = '<!-- Composite Start -->
<div id="M545930ScriptRootC832619">
</div>
<script src="https://jsc.adskeeper.co.uk/p/e/pelisyseriesdesobra.co.832619.js" async>
</script>
<!-- Composite End -->
';
   anuncios[2] = 'Codigo anuncio 3';
   index = Math.floor(Math.random() * anuncios.length);
   document.write(anuncios[index]);
</script>
';
   index = Math.floor(Math.random() * anuncios.length);
   document.write(anuncios[index]);
</script>

screenshot-js.do-2020.03.14-22_38_37.webp
 
anuncios[0] = '<script type="text/javascript">
te faltó una ' al final
 
@JuarbeAbraham lo has añadido mal, debes añadir cada código javascript de el anuncio donde indica cada array
anuncios[0] ="aqui va un codigo";
anuncios[1] = "aqui va el otro";
anuncios[2] = "aqui va el otro";

al añadirlo debes escapar las comillas dobles para que pueda funcionar.

Si, no sabes como hacerlo envíame los código por mensaje privado y te envío el código ordenado.
 
utiliza ` CXXFT ` para añadir templates. mas facil y rapido

anuncios[0] = `<script>"" '', demas caracteres</script>`;
 
Estaría bueno que sea publico asi lo sabemos todos, con adsterra el link directo paga mas, si se puede usar como pupunder estaría genial pero no pude hacerlo, solo me limite con banner y un plugin que hace saltar parecido a popunder pero salta otra ventana y la redirección tarda mucho por parte de adsterra posiblemente la gente lo cierra antes que se vea y las ganancias no son tantas, de todas formas mi web recién esta intentanto acercarse a los 100 K en alexa quizás por eso no me funciona
 
puedes poner los anuncios random con este plugin
 
@Cintia Rios y @miguel2008 este fue el código que me dio y funciona muy bien:

JavaScript:
<script>
  var anuncios = [];
   var index = 0;
   anuncios[0] = '<script type=\"text\/javascript\"> \r\natOptions = { \r\n\'key\' : \'335bf52c11ddd367d6e0b0fd2c50b2cc\', \r\n\'format\' : \'iframe\',\r\n \'height\' : 250,\r\n \'width\' : 300, \r\n\'params\' : {} };\r\n document.write(\'<scr\' + \'ipt type=\"text\/javascript\" src=\"http\' + (location.protocol === \'https:\' ? \'s\' : \'\') + \':\/\/www.madratesforall.com\/335bf52c11ddd367d6e0b0fd2c50b2cc\/invoke.js\"><\/scr\' + \'ipt>\'); \r\n<\/script>';
   anuncios[1] = '<div id=\"M545930ScriptRootC832619\"><\/div>\r\n<script src=\"https:\/\/jsc.adskeeper.co.uk\/p\/e\/pelisyseriesdesobra.co.832619.js\" async><\/script>';
   anuncios[2] = '<script type=\"text\/javascript\">\r\namzn_assoc_tracking_id = \"pelisyseriesd-20\";\r\namzn_assoc_ad_mode = \"manual\";\r\namzn_assoc_ad_type = \"smart\";\r\namzn_assoc_marketplace = \"amazon\";\r\namzn_assoc_region = \"US\";\r\namzn_assoc_design = \"enhanced_links\";\r\namzn_assoc_asins = \"B085C8JDL7\";\r\namzn_assoc_placement = \"adunit\";\r\namzn_assoc_linkid = \"dd0419cd439d50c01bda3aaa1e9ff447\";\r\n<\/script>\r\n<script src=\"\/\/z-na.amazon-adsystem.com\/widgets\/onejs?MarketPlace=US\"><\/script>';
   index = Math.floor(Math.random() * anuncios.length);
   document.write(anuncios[index]);
</script>

El anuncio 0 es de Adsterra, el anuncio 1 es de Adskeeper, y el numero 2 es de Amazon.
 
@Cintia Rios y @miguel2008 este fue el código que me dio y funciona muy bien:

JavaScript:
<script>
  var anuncios = [];
   var index = 0;
   anuncios[0] = '<script type=\"text\/javascript\"> \r\natOptions = { \r\n\'key\' : \'335bf52c11ddd367d6e0b0fd2c50b2cc\', \r\n\'format\' : \'iframe\',\r\n \'height\' : 250,\r\n \'width\' : 300, \r\n\'params\' : {} };\r\n document.write(\'<scr\' + \'ipt type=\"text\/javascript\" src=\"http\' + (location.protocol === \'https:\' ? \'s\' : \'\') + \':\/\/www.madratesforall.com\/335bf52c11ddd367d6e0b0fd2c50b2cc\/invoke.js\"><\/scr\' + \'ipt>\'); \r\n<\/script>';
   anuncios[1] = '<div id=\"M545930ScriptRootC832619\"><\/div>\r\n<script src=\"https:\/\/jsc.adskeeper.co.uk\/p\/e\/pelisyseriesdesobra.co.832619.js\" async><\/script>';
   anuncios[2] = '<script type=\"text\/javascript\">\r\namzn_assoc_tracking_id = \"pelisyseriesd-20\";\r\namzn_assoc_ad_mode = \"manual\";\r\namzn_assoc_ad_type = \"smart\";\r\namzn_assoc_marketplace = \"amazon\";\r\namzn_assoc_region = \"US\";\r\namzn_assoc_design = \"enhanced_links\";\r\namzn_assoc_asins = \"B085C8JDL7\";\r\namzn_assoc_placement = \"adunit\";\r\namzn_assoc_linkid = \"dd0419cd439d50c01bda3aaa1e9ff447\";\r\n<\/script>\r\n<script src=\"\/\/z-na.amazon-adsystem.com\/widgets\/onejs?MarketPlace=US\"><\/script>';
   index = Math.floor(Math.random() * anuncios.length);
   document.write(anuncios[index]);
</script>

El anuncio 0 es de Adsterra, el anuncio 1 es de Adskeeper, y el numero 2 es de Amazon.
Gracias 🙂
 
¿Tu script hace que no se repita la URL aleatoria?
 
¿Tu script hace que no se repita la URL aleatoria?
Si pones dos bloques de anuncios con el mismo código, posiblemente se repitan, y si pones un solo bloque, es posible que aparezca varias veces antes de pasar a otro.
 
Atrás
Arriba