Página 1 de 1
Necesito código PHP para elegir aleatoriamente un video
Publicado: 24 Feb 2010, 01:07
por juanfelice7
URL: http://www.tribunalocal.com.ar/foros
Versión phpBB: phpBB3 (3.0.5)
MODs Instalados: Tiene portal instalado.
Plantilla(s) usada(s): Elanor Blue
Servidor: Linux, gratuito
Actualización desde otra versión: No
Conversión desde otro sistema de foros: No
Ayer me decidí a meter un poco de mano y pude crear mi propio bloque en mi portal, que esta pude ponerle la opción de habilitar y deshabilitar desde el panel de control. En este bloque (que edito su contenido abriendo el archivo
style/MI_ESTILO/template/portal/block/videos.html) pongo el código del video que quiero mostrar de YouTube, pero ahora tengo una duda:
¿Como puedo hacer para pegar varios códigos de videos y que se seleccione uno aleatoriamente cada vez que ingreso a mi portal?
No sé nada de PHP, pero supongo que debe ser algo bastante fácil, diría de principiante. Pero, repito, no sé nada de PHP. Se agradece infinitamente una respuesta que me ayude a solucionar el problema.
Muchas gracias.
Re: Necesito código PHP para elegir aleatoriamente un video
Publicado: 24 Feb 2010, 01:41
por Alorse
Yo lo sabria hacer, pero en php puro y duro, con eso me refiero a que si te ayudo, te tocaria meter unas 10 o 20 URLs de youtube manualmente en el archivo .php y estarlas cambiando manualmente cada vez que lo necesites... no seria nada personalizado desde el ACp ni nada por el estilo... aunque no es que sea muy complejo hacerlo de esa manera, pero si necesitaria mucho mas trabajo y tiempo, cosa de la cual anto corta
O la otra es que busques en la web del autor, si depronto tienen un add-on ya listo para implementarse y así te sale mas facíl.
Ya me diras.
Re: Necesito código PHP para elegir aleatoriamente un video
Publicado: 24 Feb 2010, 01:50
por juanfelice7
Por ahora lo que hice fue meter en el código de mi
videos.html (bloque del video) un include:
Código: Seleccionar todo
<div class="panel">
<div class="inner">
<span class="corners-top"><span></span></span>
<h3>{L_VIDEOS}</h3>
<!-- INCLUDE portal/block/videos_url.php -->
<span class="corners-bottom"><span></span></span>
</div>
</div>
<br style="clear:both" />
Y en el
videos_url.php puse esto pero no funciona:
Código: Seleccionar todo
<?php
$numvideos = 3; //numero de videos que se rotarán
$random = rand(1,$numbanners);
$vid = array();
$url = array();
$txt = array();
$vid[1] = "duFVeBZ9G1U";
$txt[1] = "Video 1";
$vid[2] = "muu9QxjE2eo";
$txt[2] = "Video 2";
$vid[3] = "MaK46gdjNqc";
$txt[3] = "Video 3";
echo "<object width='425' height='344'><param name='movie' value='http://www.youtube.com/v/$vid[$random]'></param><param
name='allowFullScreen' value='true'></param><param name='allowscriptaccess' value='always'></param><embed
src='http://www.youtube.com/v/$vid[$random]' type='application/x-shockwave-flash' allowscriptaccess='always'
allowfullscreen='true' width='425' height='344'></embed></object><br>$txt[$random]";
?>
Ya sé que no se manejaría desde el ACP, pero mi idea era poner una lista importante de videos de YouTube y tocarla muy de vez en cuando.
Ustedes me dirán si ven algo mal en estos códigos. El include me funciona porque puse otro archivo y lo toma, pero no imprime nada. Supongo que habrá que cambiar en algun lugar la configuración del bloque para que tome PHP.
Re: Necesito código PHP para elegir aleatoriamente un video
Publicado: 24 Feb 2010, 01:55
por Alorse
Tines un pequeño detalle malo malo...
la linea:
Debe ser así:
Ya con eso debe funcionar... lo que sueces es que como lo coiaste de alguna parte donde usaban banners y URLs te falto acomodar algunas cosas...
Así, bueno algo con mas de contenido era lo que yo pensaba hacer...
Re: Necesito código PHP para elegir aleatoriamente un video
Publicado: 24 Feb 2010, 02:14
por juanfelice7
Muy tonto mi error, es cierto, pero de todas formas no anda.
Me hago una pregunta: ¿no tendré que ingresar algo en
portal.php?
Recuerdo que el bloque para la bienvenida solo permitía texto plano y en un post leí que para poner código HTML era necesario pegar esto:
Código: Seleccionar todo
[b]htmlspecialchars_decode($config['portal_welcome_intro'], ENT_QUOTES),[/b]
en esta parte (todo dentro de
portal.php):
Código: Seleccionar todo
if ($config['portal_welcome'])
{
$template->assign_vars(array(
'S_DISPLAY_WELCOME' => true,
'PORTAL_WELCOME_INTRO' => [b]htmlspecialchars_decode($config['portal_welcome_intro'], ENT_QUOTES),[/b]
));
}
Entonces se me ocurre, ¿no tendré que poner algo parecido (pero "diciendo" que permita PHP) acá?
Código: Seleccionar todo
if ($config['portal_videos'])
{
// include($portal_root_path . '/block/videos.'.$phpEx);
$template->assign_vars(array(
'S_DISPLAY_VIDEOS' => true,
));
}
Re: Necesito código PHP para elegir aleatoriamente un video
Publicado: 24 Feb 2010, 02:18
por engendro666
no se si les sirve pero yo tenia un blogger al cual le edite el codigo de la plantilla casi por completo tenia por defecto los videos aleatorios de youtube, tambien he hecho pruebas con los codigos de la plantilla de blogger en paginas html y php algunos me funcionaron otros no quizas pueda revisar esa plantilla y probar el codigo de los videos con un phpbb. o ya lo tienen cocinado? cualquier cosa me avisan
Re: Necesito código PHP para elegir aleatoriamente un video
Publicado: 24 Feb 2010, 02:37
por juanfelice7
Gracias, pero finalmente llegué a la solución. sin include ni php.
Directamente puse un JavaScript en mi bloque de video (
videos.html). Dejo el código por si alguien lo quiere usar en su web:
Código: Seleccionar todo
<div class="panel">
<div class="inner">
<span class="corners-top"><span></span></span>
<h3>{L_VIDEOS}</h3>
<script language="JavaScript">
<!--
var cuantosbanners = 3 ;
var ahora = new Date()
var segundos = ahora.getSeconds()
var banner = segundos % cuantosbanners;
banner +=1;
if (banner==1) {
texto="Video 1";
url="duFVeBZ9G1U";
}
if (banner==2) {
texto="Video 2";
url="muu9QxjE2eo";
}
if (banner==3) {
texto="Video 3";
url="MaK46gdjNqc";
}
document.write('<center>');
document.write('<object width="425" height="344"><param name="movie" value="http://www.youtube.com/v/' + url + '">');
document.write('</param><param name="allowFullScreen" value="true"></param><param name="allowscriptaccess" value="always"></param><embed src="http://www.youtube.com/v/' + url + '" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="425" height="344">')
document.write('</embed></object><br>' + texto);
document.write('</center>');
//-->
</script>
<span class="corners-bottom"><span></span></span>
</div>
</div>
<br style="clear:both" />
{L_VIDEOS} = Reemplazar por el nombre que le quieras poner al bloque
var cuantosbanners = 3 El 3 es el número de videos que queremos que roten. En este caso van a ser 3 videos.
Este código será necesario ponerlo como tantos videos tengamos, cambiando obviamente el valor por cada video nuevo. Allí podrán ver claramente que pueden agregar un texto que irá abajo del video y donde dice url es el código de video de YouTube.
Re: Necesito código PHP para elegir aleatoriamente un video
Publicado: 24 Feb 2010, 02:40
por Alorse
Que bien... una forma juanfelice7, una forma diferente y bastante util, inclusive mas rapida...
Re: Necesito código PHP para elegir aleatoriamente un video
Publicado: 12 Mar 2011, 20:05
por srmente
Buenisimo, me ha servido para mi foro.
Ahora me pregunto, ¿cómo hacer para incluir el código en un java aparte y no en "videos.html"
es decir, que en "video.html" aparezca:
y en el videos.js iría todo ese código de los videos.
Está bien como lo he explicado?
y una pequeña duda:
Haciéndolo como digo haria más rápida la carga?
o es lo mismo si se deja todo el codigo java en el "video.html"
Re: Necesito código PHP para elegir aleatoriamente un video
Publicado: 12 Mar 2011, 20:20
por srmente
Descuiden ya lo hice y si funcionó. hice exactamente como mi respuesta anterior. Gracias, funciona de 10
Necesito código PHP para elegir aleatoriamente un video
Publicado: 13 Mar 2011, 13:01
por wagu
Bueno el código javaScript incluso podria usarse en algun bloque que permita HTML en cualquier portal de los ya convencionales, al menos he hecho algunas pruebas y funciona cambiando como dijo
juanfelice7 las url de los videos
Código: Seleccionar todo
<script language="JavaScript">
<!--
var cuantosbanners = 3 ;
var ahora = new Date()
var segundos = ahora.getSeconds()
var banner = segundos % cuantosbanners;
banner +=1;
if (banner==1) {
texto="Video 1";
url="duFVeBZ9G1U";
}
if (banner==2) {
texto="Video 2";
url="muu9QxjE2eo";
}
if (banner==3) {
texto="Video 3";
url="MaK46gdjNqc";
}
document.write('<center>');
document.write('<object width="425" height="344"><param name="movie" value="http://www.youtube.com/v/' + url + '">');
document.write('</param><param name="allowFullScreen" value="true"></param><param name="allowscriptaccess" value="always"></param><embed src="http://www.youtube.com/v/' + url + '" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="425" height="344">')
document.write('</embed></object><br>' + texto);
document.write('</center>');
//-->
</script>