🏆 Mundial 2026 EN VIVO entra →

[Ayuda] Plug-in WordPress by ChatGPT

  • Autor Autor henrym
  • Fecha de inicio Fecha de inicio
H

henrym

Dseda
Verificación en dos pasos activada
¡Usuario con pocos negocios! ¡Utiliza siempre saldo de Forobeta!
Hola a todos, no soy programador y necesito un plugin que no encuentro entonces le pedi al ChatGPT esto:

escribe un codigo en PHP para un plugin en Wordpress para poder reproducir videos de una lista de YouTube aleatorios en un pop-up.

Y obtuve esto:

A continuación te proporciono un ejemplo básico de cómo podrías crear un plugin en WordPress utilizando PHP para reproducir videos aleatorios de una lista de YouTube en un pop-up. Ten en cuenta que este es un código de muestra y puede requerir ajustes según tus necesidades y la estructura de tu sitio web.

  1. Crea una carpeta para tu plugin en el directorio wp-content/plugins/ y nómbrala, por ejemplo, youtube-random-popup.
  2. Dentro de la carpeta del plugin, crea un archivo principal llamado youtube-random-popup.php y agrega el siguiente código:

Insertar CODE, HTML o PHP:
<?php
/*
Plugin Name: YouTube Random Popup
Description: Displays a random YouTube video from a playlist in a pop-up.
Version: 1.0
Author: Tu Nombre
*/

// Enqueue jQuery and your custom script
function youtube_random_popup_scripts() {
    wp_enqueue_script('jquery');
    wp_enqueue_script('youtube-random-popup-script', plugin_dir_url(__FILE__) . 'js/script.js', array('jquery'), '1.0', true);
}
add_action('wp_enqueue_scripts', 'youtube_random_popup_scripts');

// Add a shortcode to display the pop-up
function youtube_random_popup_shortcode() {
    ob_start();
    ?>
    <button id="show-popup">Show Random YouTube Video</button>
    <div id="popup-container" style="display: none;">
        <iframe id="youtube-player" width="560" height="315" src="" frameborder="0" allowfullscreen></iframe>
    </div>
    <?php
    return ob_get_clean();
}
add_shortcode('youtube_random_popup', 'youtube_random_popup_shortcode');

Crea una carpeta llamada js dentro de la carpeta del plugin y agrega un archivo llamado script.js con el siguiente código:

Insertar CODE, HTML o PHP:
jQuery(document).ready(function($) {
    $('#show-popup').on('click', function() {
        $.ajax({
            url: 'URL_DE_TU_SERVIDOR/ajax-request.php', // Cambia esto por la URL correcta
            type: 'GET',
            dataType: 'json',
            success: function(data) {
                var randomVideoId = data[Math.floor(Math.random() * data.length)];
                var videoUrl = 'https://www.youtube.com/embed/' + randomVideoId;
                $('#youtube-player').attr('src', videoUrl);
                $('#popup-container').fadeIn();
            }
        });
    });

    $('#popup-container').on('click', function() {
        $('#youtube-player').attr('src', '');
        $(this).fadeOut();
    });
});

Crea un archivo llamado ajax-request.php en la misma carpeta que el archivo script.js y agrega el siguiente código:

Insertar CODE, HTML o PHP:
<?php
$playlist_videos = array(
    'VIDEO_ID_1',
    'VIDEO_ID_2',
    'VIDEO_ID_3'
);

echo json_encode($playlist_videos);
?>

Asegúrate de reemplazar 'VIDEO_ID_1', 'VIDEO_ID_2', etc., con los ID reales de los videos de YouTube que deseas incluir en la lista de reproducción.

Por supuesto lo subi y se ve activo en mis Plugins. Donde dice "url: 'URL_DE_TU_SERVIDOR/ajax-request.php', // Cambia esto por la URL correcta" puse esto:

No veo ningun video (tambien remplace los ID) y si entro a la URL que mencione dice 403 forbidden nginx

¿Alguien?
 
Consulta en el .js lo pusiste dentro de tags script?

Que permisos tienen los archivos 664? 755?
 
en el script.js

HTML:
<script>
jQuery(document).ready(function($) {
    $('#show-popup').on('click', function() {
        $.ajax({
            url: 'URL_DE_TU_SERVIDOR/ajax-request.php', // Cambia esto por la URL correcta
            type: 'GET',
            dataType: 'json',
            success: function(data) {
                var randomVideoId = data[Math.floor(Math.random() * data.length)];
                var videoUrl = 'https://www.youtube.com/embed/' + randomVideoId;
                $('#youtube-player').attr('src', videoUrl);
                $('#popup-container').fadeIn();
            }
        });
    });

    $('#popup-container').on('click', function() {
        $('#youtube-player').attr('src', '');
        $(this).fadeOut();
    });
});
</script>

Como lo puse

No he tenido la oportunidad de probarlo, si me desocupo en un rato lo pruebo a ver si te puedo ayudar,

considera que Chat GPT a veces es impreciso y te corrije cuando se equivoca
 
A dices que falta <script> </script>. No lo puse. Si puedes probarlo seria de gran ayuda.
 
A dices que falta <script> </script>. No lo puse. Si puedes probarlo seria de gran ayuda.
Agregaste el shorcode a tu post? seria
Insertar CODE, HTML o PHP:
[youtube_random_popup]
 
A dices que falta <script> </script>. No lo puse. Si puedes probarlo seria de gran ayuda.
No necesitas agregar el tag, ya que estas llamando el script.js
 
Pense que salia automatico en todo el sitio y no solo post.
No, el plugin esta creando un shorcode con add_shortcode

PHP:
add_shortcode('youtube_random_popup', 'youtube_random_popup_shortcode');
 
Pense que salia automatico en todo el sitio y no solo post.
Puedes poner esto por ejemplo en el footer.php para que se ejecute en todo el sitio.
PHP:
<?php echo do_shortcode('[youtube_random_popup]'); ?>
 
Ok gracias voy a probar todo eso.
 
Tuve tiempo de probarlo y falla. No me muestra nada... ¿Alguien puede probarlo?
 
¿Alguna ayuda?
 
Tuve tiempo de probarlo y falla. No me muestra nada... ¿Alguien puede probarlo?

Te tira algun error en la consola?. Lo tenes en linea para mirarlo?.
 
Lo lograste? Cuando se le pide al Chat que realize una aplicación, aunque sea sencilla es muy difícil que la saque tal cual es, me parece que debes proveerle contexto, como ir a la página donde pretendes hacer la instalación, proveele la fuente delcodigo de tu proyecto, claro, no te acepta mucho input. Unas 800 palabras máximo.

Igualmente recomiendo pasarle las instrucciones como si fuera un infante y separar po guiones puede ayudar

- criterio 1

- criterio 2

- criterio 3

Y algo que también me ayuda es, no pedirle demasiado de una, sino pasao a paso...
 
Me gusta realizar componentes sobretodo .jsx con ayuda de la IA, por norma general hay que darle muchas vueltas para que funcione...
 
Ok. Intentare.
 
Tuve tiempo de probarlo y falla. No me muestra nada... ¿Alguien puede probarlo?
te sale video no disponible?
es porque estas poniendo en un pop-up "embed"
 
¿asi?
El codepen bloquea la reproducción



 
Atrás
Arriba