PDA

Ver la Versión Completa : Como cambiar el navbar?



gnrx
18/10/2009, 14:13
Hola.
Bueno, creo que se llama navbar, xDD, es el menú superior donde estan los menus de: Panel de Control, Nuevos Mensajes, Buscar...etc...

Mi idea es la de cambiar el orden de estas opciones en dicho navbar, pero si fuese posible (lo he visto en un foro) poner opciones tanto arriba como abajo, me explico:
Por defecto viene que, a la izquierda esta el nombre del foro, a la derecha "Tú ultima visita" asi como las notificaciones, y justo debajo, las opciones/menus del navbar.
Bien, mi idea es crear un navbar por encima de "Tú última visita..." y dividir las opciones/menus entre la parte de arriba y la de abajo.

Creo que no me he explicado muy bien, pero sin un ejemplo gráfico me cuesta explicarme, xDD.

Y puestos en ello, querria añadir una opción/menú al navbar, por ejemplo, un pequeño icono de paypal para donar, que enlace a una parte del foro (que yo configure el link).

Un saludo!

lms
18/10/2009, 18:11
Mi foro luce así:

Solo los usuarios registrados pueden ver enlaces

En la plantilla navbar tienes que buscar

$template_hook[navbar_buttons_right]
<if condition="$show['member']">
<td class="vbmenu_control"><a href="login.php?$session[sessionurl]do=logout&amp;logouthash=$bbuserinfo[logouthash]" onclick="return log_out('$vbphrase[sure_you_want_to_log_out]')">$vbphrase[log_out]</a></td>
</if>
</tr>
</table>
</div>
Justo debajo yo he añadido esto (y más que no pongo):

<div style="0px">
<table width="$stylevar[outertablewidth]" cellpadding="0" cellspacing="0" border="0" width="100%" align="center">
<tr>

<td id="portal" class="vbmenu_control"><a href="index.php$session[sessionurl_q]">Portal</a></td>
<td id="foro" class="vbmenu_control"><a href="indexvB.php$session[sessionurl_q]">Foros</a></td>
<td id="anuncios" class="vbmenu_control"><a href="forumdisplay.php$session[sessionurl_q]?f=18">Anuncios</a></td>
<td id="noticias" class="vbmenu_control"><a href="forumdisplay.php$session[sessionurl_q]?f=9">Noticias</a></td>
<td id="igeneral" class="vbmenu_control"><a href="forumdisplay.php$session[sessionurl_q]?f=14">I.General</a><script type="text/javascript"> vbmenu_register("igeneral"); </script></td>
<td id="icultural" class="vbmenu_control"><a href="forumdisplay.php$session[sessionurl_q]?f=13">I.Cultural</a><script type="text/javascript"> vbmenu_register("icultural"); </script></td>
<td id="ctecnica" class="vbmenu_control"><a href="forumdisplay.php$session[sessionurl_q]?f=10">C.Técnica</a><script type="text/javascript"> vbmenu_register("ctecnica"); </script></td>
<td id="ddirectas" class="vbmenu_control"><a href="forumdisplay.php$session[sessionurl_q]?f=12">D.Directas</a><script type="text/javascript"> vbmenu_register("ddirectas"); </script></td>
<td id="alternativa" class="vbmenu_control"><a href="forumdisplay.php$session[sessionurl_q]?f=6">D.Alternativa</a><script type="text/javascript"> vbmenu_register("alternativa"); </script></td>

</tr>
</table>
</div>

Deberás dividir una parte de los controles tal como:

<div class="tborder vbseo_top_menu" style="padding:$stylevar[cellspacing]px; border-top-width:0px">
<table cellpadding="0" cellspacing="0" border="0" align="center">
<tr align="center">
<if condition="$show['member']">
<td class="vbmenu_control"><a href="usercp.php$session[sessionurl_q]">$vbphrase[user_cp]</a></td>
</if>
<if condition="$show['registerbutton']">
<td class="vbmenu_control"><a href="register.php$session[sessionurl_q]" rel="nofollow">$vbphrase[register]</a></td>
</if>
$template_hook[navbar_buttons_left]
<td class="vbmenu_control"><a rel="help" href="faq.php$session[sessionurl_q]" accesskey="5">$vbphrase[faq]</a></td>
<if condition="$show['communitylink'] AND $show['popups']">
<td class="vbmenu_control"><a id="community" href="$show[nojs_link]#community" rel="nofollow" accesskey="6">$vbphrase[community]</a> <script type="text/javascript"> vbmenu_register("community"); </script></td>
<else />
<if condition="$show['memberslist']">
<td class="vbmenu_control"><a href="memberlist.php$session[sessionurl_q]">$vbphrase[members_list]</a></td>
</if>
<if condition="$show['quick_links_groups']">
<td class="vbmenu_control"><a href="group.php?$session[sessionurl]">$vbphrase[social_groups]</a></td>
</if>
</if>

</tr>
</table>

O en cualquier otro lugar que tu creas conveniente, respetando los cierres de etiquetas.

Debes terminarlo en

</tr>
</table>
y comenzar el siguiente bloque con

<div class="tborder vbseo_top_menu" style="padding:$stylevar[cellspacing]px; border-top-width:0px">
<table cellpadding="0" cellspacing="0" border="0" align="center">
<tr align="center">


Ten en cuenta que en

div class="tborder vbseo_top_menu" style="...... el class="tborder vbseo_top_menu" puede ser diferente según el estilo.

Corta el primer bloque y pégalo justo debajo de

<!-- breadcrumb, login, pm info -->

Como ves no es difícil y si te equivocas la reviertes al estado anterior (antes de tocar nada copia todo el texto y guardalo en un bloc de notas)

Espero que te valga.
Si quieres me pasas la plantilla navbar del estilo que quieres modificar por MP, me dices donde quieres romperla y te la devuelvo hecha.

Salud2

Salud2

gnrx
18/10/2009, 20:19
Ok, zenkius :)

Me ha costado pero al final creo que he podido hacerlo un poco mas o menos como yo queria.

No obstante, fijandome en tu foro y otros he visto algo en el mio que si me gustaria cambiar:
En el navbar, el link de Calendario aparece para todos los users (registrados e invitados) me gustaria que solo apareciese a registrados, incluso, desactivar esa funcion en el navbar para todos, porque creo, que poca funcion tiene en mi foro...

Y por otro lado, si accedes como invitado, en el navbar aparece el link de Comunidad (clickable como desplegable) y si se le clica solo aparece una opcion (por ello veo que poca utilidad tiene que sea desplegable a los invitados) que aparece el link de Miembros. Hay opcion de desabilitarlo como desplegable a los invitados o mejor aun, desabilitar esa opcion a los invitados?

Como siempre, muchas gracias y un saludo!!!

lms
19/10/2009, 00:45
Te miro donde ex&#225;ctamente y esta tarde te lo respondo.

Salud2

lms
19/10/2009, 11:45
Desactivar el calendario afecta a los cumplea&#241;os y otros eventos de ese estilo.

Para desactivar el calendario de los visitantes debes ir al panel de gesti&#243;n -> Permisos de calendario -> en los grupos que no quieras que tengan acceso clica en eloos (uno cada vez) y config&#250;ralo a tu gusto. Si desactivas (niegas verlo) a un grupo, no ver&#225;n el enlace.

Salud2

gnrx
19/10/2009, 19:35
Zenkius lms!
No obstante, me surge una duda:
En tu primera linea me dices, desactivar el calendario afecta a los cumplea&#241;os y otros eventos, la idea es que no afecte, pero por ejemplo, si siguiendo tus pasos en la config hago que el calendario no se muestre a los invitados, eso hara que no muestre los cumplea&#241;os del dia a los invitados o a algo mas?

Como siempre, muchas zenkius!

Dark Neo
19/10/2009, 19:58
Sigue las líneas de la condicional. Puedes agregarlo después de enlaces o buscar, no se algo que no ponga condicional.

Y antes de ello la imágen con su enlace respectivo.


<div style="0px">
<table width="$stylevar[outertablewidth]" cellpadding="0" cellspacing="0" border="0" width="100%" align="center">
<tr>

<td id="portal" class="vbmenu_control"><img src="images/imagen.gif"><a href="index.php$session[sessionurl_q]">Portal</a></td>
<td id="foro" class="vbmenu_control"><a href="indexvB.php$session[sessionurl_q]">Foros</a></td>
</tr>
</table>
</div>

Esto es por decir algo que la carpeta images contiene el archivo gif o jpg o x de imágen a mostrar para cada enlace, y lo demás son los enlaces.

Saludos...

lms
20/10/2009, 02:09
Zenkius lms!
No obstante, me surge una duda:
En tu primera linea me dices, desactivar el calendario afecta a los cumpleaños y otros eventos, la idea es que no afecte, pero por ejemplo, si siguiendo tus pasos en la config hago que el calendario no se muestre a los invitados, eso hara que no muestre los cumpleaños del dia a los invitados o a algo mas?

Como siempre, muchas zenkius!

Eso hará que no muestre el calendario a ningún invitado. En principio no hace nada más.

Salud2

gnrx
21/10/2009, 13:25
Sigue las líneas de la condicional. Puedes agregarlo después de enlaces o buscar, no se algo que no ponga condicional.

Y antes de ello la imágen con su enlace respectivo.


<div style="0px">
<table width="$stylevar[outertablewidth]" cellpadding="0" cellspacing="0" border="0" width="100%" align="center">
<tr>

<td id="portal" class="vbmenu_control"><img src="images/imagen.gif"><a href="index.php$session[sessionurl_q]">Portal</a></td>
<td id="foro" class="vbmenu_control"><a href="indexvB.php$session[sessionurl_q]">Foros</a></td>
</tr>
</table>
</div>
Esto es por decir algo que la carpeta images contiene el archivo gif o jpg o x de imágen a mostrar para cada enlace, y lo demás son los enlaces.

Saludos...
Con esto te refieres a añadir yo algun tipo de imagen/enlace personalizado mio?


Eso hará que no muestre el calendario a ningún invitado. En principio no hace nada más.

Salud2
Asi lo hice y lo que sucedió es que, sigue mostrando el menu/link de calendario, solo que, si clickas en el como invitado, te dice que debes estar registrado para verlo y te muestra la pantalla de loggin.
La idea era quitarlo para los invitados (que no se muestre) aunque tampoco molesta mucho, pero asi, vamos aprendiendo, xD.

Gracias y saludos a ambos :)

lms
21/10/2009, 17:24
Edita la plantilla navbar del estilo al que lo quieras aplicar:

Busca:

<td class="vbmenu_control"><a href="calendar.php$session[sessionurl_q]">$vbphrase[calendar]</a></td>

C&#225;mbialo por:

<if condition="$usergroupid">
<td class="vbmenu_control"><a href="calendar.php$session[sessionurl_q]">$vbphrase[calendar]</a></td></if>

O sea, s&#243;lo has a&#241;adido <if condition="$usergroupid"> al inicio y </if> al final de la frase que has buscado.

El enlace debe desaparecer de la vista de cualquier usuario aunque, si conoces su ruta directa (.....calendar.php), podr&#225;s acceder a &#233;l t&#250; y cualquiera que tenga permisos para verlo.

Te lo explico: vBulletin SIEMPRE asigna un grupo al usuario que est&#233; viendo el foro. La condici&#243;n que debe cumplir para no verlo es que sea de cualquier grupo ya que no se puede cumplir nunca esta condici&#243;n. Como resultado est&#225; el que el enlace desaparece para TODOS los grupos. O sea, no lo ve nadie.

Salud2

gnrx
21/10/2009, 19:38
Ok lms, gracias por la explicaci&#243;n :)

Ok, entendido ello, no lo mostrar&#225; a nadie (a no ser que tecleemos ruta directa), ya que la condicion no se cumple, pero vamos a poner el caso de que lo muestre a todos excepto a invitados, serviria en el if un colocar los id's de grupo que si quiero que lo vean con un "or"?

Salu2!

Dark Neo
21/10/2009, 20:38
Hoy lo revizo lo del calendario y ya te digo mañana que cosa.

Un saludo y esperemos que todo salga bien ...

lms
22/10/2009, 00:52
Ok lms, gracias por la explicación :)

Ok, entendido ello, no lo mostrará a nadie (a no ser que tecleemos ruta directa), ya que la condicion no se cumple, pero vamos a poner el caso de que lo muestre a todos excepto a invitados, serviria en el if un colocar los id's de grupo que si quiero que lo vean con un "or"?

Salu2!

Sí.

Salud2

Dark Neo
22/10/2009, 19:49
Para hacer lo que tu quieres realiza lo siguiente en cada cosa que desees para el calendario solo mostrado a los usuarios registrados:

Busca por:



<td class="vbmenu_control"><a href="calendar.php$session[sessionurl_q]">$vbphrase[calendar]</a></td>


Y sustituyelo por:



<if condition="$show['member']">
<td class="vbmenu_control"><a href="calendar.php$session[sessionurl_q]">$vbphrase[calendar]</a></td></if>


Si le quieres añadir imágen solo has esto:



<if condition="$show['member']">
<td class="vbmenu_control"><img src="images/imagen.gif" width="12" height="12"><a href="calendar.php$session[sessionurl_q]">$vbphrase[calendar]</a></td></if>



Saludos y espero que te sirva la información...

gnrx
22/10/2009, 20:24
Gracias Dark Neo!
Si, buena info :)
Viendo el condicional, deduzco (corrigeme si me equivoco) que, cualquier usuario que sea eso, usuario (independientemente del grupo al que pertenezca) lo ver&#225; ya que es un miembro, y no invitado.

Gracias y un saludo!!! :)

Dark Neo
22/10/2009, 20:28
Si, asi es y si esto te falla por decir ya cerre sesión y me voy a otro link y me lo muestra, pues aqui te dejo el código corregido para algunas versiones de vb que no respetan dicha condicional, solo es agregarle un else, pero mejor te dejo el código que hable por si mismo.


<if condition="$show['member']">
<td class="vbmenu_control"><a href="calendar.php$session[sessionurl_q]">$vbphrase[calendar]</a></td>
<else />
</if>

Y con imágen:


<if condition="$show['member']">
<td class="vbmenu_control"><img src="images/imagen.gif" width="12" height="12"><a href="calendar.php$session[sessionurl_q]">$vbphrase[calendar]</a></td><else /></if>

Saludos esto es todo por hoy ya que al entrar en mis pruebas he mirado este error y lo corregi en esta manera que explico aqui arriba un saludo...

Y si es como mencionas si es usuario no registrado pues no le mostrara el calendario y de lo contrario si lo hará.

lms
23/10/2009, 12:57
A&#250;n as&#237;, si el usuario teclea la url directa al calendario, puede acceder a &#233;l.

Otro sistema (y el m&#225;s seguro) es renombrar calendar.php (en el root del foro) a 1calendar.php o parecido (con un nombre que te sea sugerente.

El modo de hacer desaparecer el v&#237;nculo ya lo(s) conoce(s) y el modo de evitar que vayan a &#233;l ahora tambi&#233;n.

Como se suele decir, "muerto el perro se acab&#243; la rabia" (desaparecido el archivo php que lo gestiona, ya no hay calendario que valga, aunque aparezca el v&#237;nculo)

Salud2

gnrx
23/10/2009, 21:09
Ok, gracias a ambos!

La idea inicial es que, a los invitados, no se les muestre el link de calendario, si teclean la url, en principio no tiene mayor importancia, es solo por cuestiones de "estetica" en el navbar, ya que a un invitado, que le aparezca el calendario....casi prefiero que no.

Ahora me toca probarlo, voy a insertar imagen redireccionando a otro link, os posteare resultados.

Lo dicho, gracias a ambos :)

Salu2.

lms
24/10/2009, 09:46
A la espera.

Salud2 (y de nada)

gnrx
24/10/2009, 20:02
Pues debo de decir que quedo a las mil maravillas, eso si, me cost&#243; un ratin mas de lo que pensaba, pero con vuestras indicaciones....yo creo que ha quedado francamente bien :)

Calendario ahora solo lo muestra a los users, un invitado no lo ve, si teclea la url lo ver&#225;, pero en principio, no le doy mucha importancia, ahora sale como yo queria, que no lo mostrase a los invitados.

Y luego a&#241;adi un nuevo link en el navbar con imagen y linkado, y ese sali&#243; a la primera con vuestras indicaciones :)

Lo dicho, gracias y un saludo!

lms
25/10/2009, 00:41
&#161;A mandar! Es bueno que te haya ido bien. Me alegro de ello. &#161;DN, eres maravilloso!

Salud2

gnrx
25/10/2009, 12:37
:)

eft2
25/10/2009, 18:32
Mi foro luce as&#237;:
....

El post completo est&#225; aqu&#237; (Solo los usuarios registrados pueden ver enlaces)

Salud2

Salud2


Vale compadre, lo modifique a mi foro, quedo bueno!!!! :cool:

salu2

lms
25/10/2009, 19:09
Bueno es que valga. Para eso est&#225;n estos foros. Para ayudarnos los unos a los otros.

Salud2

Dark Neo
26/10/2009, 20:54
Gracias por todo y por sus comentarios.

Esperemos que haya servido y no haiga, jeje como vi por ahi, pero bueno, está página es para ayudarnos y así complementar nuestros conocimientos y poder resolver nuestras dudas, no manejamos al 100% el tema, pero entre todos creo que seguimos haciendo una excelente labor en este foro.

lms
27/10/2009, 01:49
... pero bueno, está página es para ayudarnos y así complementar nuestros conocimientos y poder resolver nuestras dudas, no manejamos al 100% el tema, pero entre todos creo que seguimos haciendo una excelente labor en este foro.

Estoy contigo, Dark Neo.

Salud2

gnrx
27/10/2009, 09:49
Claro que si, servido y mucho, en mi caso, aprend&#237; algo que desconocia (aunque aun son muchas las cosas que desconozco de vb).

Salu2 :)

lms
27/10/2009, 10:18
Todos estamos para aprender.

Salud2