Hola. Estoy intentando crear un BBCode para mi foro similar al "code", pero para colocar enlaces de descarga. La base la tengo hecha, pero hay algo que no soy capaz de solucionar.
Introduzcas el texto que introduzcas, los enlaces te los detecta como tal, y por lo tanto, te permite hacer clic en él. Lo que yo quería crear era algo como el "code", que no lo detecte como enlace, sino como texto normal.
¿Alguien tiene alguna idea de cómo podría hacerlo?
Gracias de antemano ;)
Emmm no entendì... :silbar: Explica un poco màs y danos un ejemplo.
Te explico:
Si pongo un enlace entre las etiquetas "code":
http://www.google.es
Es sólo texto, no me permite hacer clic y que me lleve a Google.
El caso es que hice un BBCode que consiste en algo parecido a esta etiqueta, pero para añadir enlaces de descarga, y por lo tanto, con un diseño distinto. El problema es que los enlaces me los detecta como si estuviesen entre la etiqueta "url", pero lo que me interesaba era que fuese como en "code", que no se puedan clickear.
Este es el código que uso:
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td height="39" colspan="3">
<table border="0" width="100%" cellspacing="0" cellpadding="0">
<tr>
<td width="113" background="images/extras/down1.gif" height="39">
</td>
<td background="images/extras/down2.gif"> </td>
<td width="48" background="images/extras/down3.gif" height="39">
</td>
</tr>
</table>
</td>
</tr>
<tr>
<td bgcolor="#C0DDFF" width="10"> </td>
<td bgcolor="#C0DDFF">
<table border="1" width="100%" cellspacing="0" cellpadding="0" style="border-collapse: collapse; border: 1px solid #007FD8" bgcolor="#FFFFFF">
<tr>
<td style="font-family: Arial; font-size: 12px; color: #707070">
<p style="margin: 5px">$1</td>
</tr>
</table>
</td>
<td bgcolor="#C0DDFF" width="10"> </td>
</tr>
<tr>
<td colspan="3">
<table border="0" width="100%" cellspacing="0" cellpadding="0">
<tr>
<td background="images/extras/down4.gif" height="11" width="11">
<img border="0" src="images/extras/space.gif" width="1" height="1"></td>
<td bgcolor="#C0DDFF" height="11">
<img border="0" src="images/extras/space.gif" width="1" height="1"></td>
<td background="images/extras/down5.gif" height="11" width="11">
<img border="0" src="images/extras/space.gif" width="1" height="1"></td>
</tr>
</table>
</td>
</tr>
</table>
Espero haberme explicado.
Un saludo.
ese es el codigo html... imagino que lo estas haciendo en php y ese es el codigo que se necesita :P
El código es en HTML, no en PHP. Son BBCodes, y que yo sepa se hacen para utilizar HTML.
Un saludo.
lol entonces no tienes ni idea de lo que haces xDDD
para comenzar BBC significa bulletin board code, o en español: codigo de tablon de bolentines y sirve para dar formato al texto a publicar sin utilizar html directamente, por lo tanto necesitas un lenguaje DINAMICO para convertir este codigo en html, conclusion: un bbc es para NO usar html :xD
necesitas un codigo que pase de [etiqueta]texto[/etiqueta] a algun formato html como <etiqueta>texto</etiqueta> en el caso mas simple
salu2
Me refería a eso, que es para simplificar el uso del HTML, pero el código a reemplazar se hace en HTML.
A no ser que se moviese por ser los boletines en PHP.
;)
mmm creo que el problema esta entre el teclado y la silla, html no es un lenguaje dinamico y no se puede reemplazar solo con html... explica como estas pasando de bbc a html
Me explico.
Utilizo MyBB, y en la sección de MyCodes (para crear los BBCodes personalizados), puedes poner un código HTML que reemplazará a lo que pongas entre las etiquetas. Por ejemplo, si pongo [linea], y en el reemplazo pongo <hr>, me lo reemplazará por una línea horizontal. Sirve con cualquier código HTML.
Espero que me entiendas.
Un saludo ;)
al fin :) si yo fuese adivino ganaria millones xDD
en el ejemplo que esta en el panel de administracion te dejan uno muy claro :P
\[b\](.*?)\[/b\] -> <strong>$1</strong>
usa:
\[tuetiqueta\](.*?)\[/tuetiqueta\] -> <pre>$1</pre>
aunque me gustaria que pusieras el que estas usando y te da problemas :P
Jajajaj
Lo de "pre" lo había intentado, pero los enlaces siguen apareciendo como hipervínculos...
Lo que uso es el código de arriba, de esa forma aparecen con hipervínculos, pero no soy capaz de hacer que queden iguales que con "code", que no sean clickeables.
Un saludo ;)
he probado en el demo de mybb y funciona correctamente... tendras una version "obsoleta"?
No, está actualizada a la última versión...
Pues no sé qué puede fallar, me pasa con todos los navegadores.
Tendré que seguir investigando.
Te dejo el enlace de una página de prueba para que lo compruebes, en la caja de descarga.
ENLACE (http://otakusinn.siften.es/showthread.php?tid=2)
Gracias, y un saludo ;)
ah... pero pasa a partir del 2do... por lo tanto funciona correctamente hasta encontrar un salto de linea :P
he probado en el demo otra vez y deberia funcionar aunque tenga un salto de linea... pega la expresion regular que usas, imagino que el sustituto es el que pusiste anteriormente... prueba con
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td height="39" colspan="3">
<table border="0" width="100%" cellspacing="0" cellpadding="0">
<tr>
<td width="113" background="images/extras/down1.gif" height="39">
</td>
<td background="images/extras/down2.gif"> </td>
<td width="48" background="images/extras/down3.gif" height="39">
</td>
</tr>
</table>
</td>
</tr>
<tr>
<td bgcolor="#C0DDFF" width="10"> </td>
<td bgcolor="#C0DDFF">
<table border="1" width="100%" cellspacing="0" cellpadding="0" style="border-collapse: collapse; border: 1px solid #007FD8" bgcolor="#FFFFFF">
<tr>
<td style="font-family: Arial; font-size: 12px; color: #707070">
<pre style="margin: 5px">$1</pre></td>
</tr>
</table>
</td>
<td bgcolor="#C0DDFF" width="10"> </td>
</tr>
<tr>
<td colspan="3">
<table border="0" width="100%" cellspacing="0" cellpadding="0">
<tr>
<td background="images/extras/down4.gif" height="11" width="11">
<img border="0" src="images/extras/space.gif" width="1" height="1"></td>
<td bgcolor="#C0DDFF" height="11">
<img border="0" src="images/extras/space.gif" width="1" height="1"></td>
<td background="images/extras/down5.gif" height="11" width="11">
<img border="0" src="images/extras/space.gif" width="1" height="1"></td>
</tr>
</table>
</td>
</tr>
</table>
acostumbra a cerrar correctamente las etiquetas :P
pd: necesito que lo regresen a desarrollo web :xD
Me lié con tanto pre jajaj
Sigue igual, y lo de que suceda a partir del 2º tienes razón, si pongo la etiqueta, un salto de línea, y el enlace, ya se fastidia.
La expresión regular es como la del ejemplo:
\[dcaja\](.*?)\[/dcaja\]
es extraño... la he probado en el demo y funciona perfectamente :-\
lo raro es que esta generando un codigo distinto
<pre style="margin: 10px; padding: 1px;">http://www.google.es/archivo1.zip<br />
<a href="http://www.google.es/archivo2.zip" target="_blank">http://www.google.es/archivo2.zip</a></pre>
No, no es que sea distinto, es que cambié el código yo :xD
Perdona por la confusión.
No sé a que se puede deber... Voy a seguir buscando a ver si lo soluciono.
Un saludo ;)
Vuelvo de nuevo jaja.
Viendo el código, me fijé en que añade la etiqueta URL automáticamente a partir del 2º, por lo que solo tendría que impedir que la añadiese, pero no sé me ocurre cómo puedo hacerlo...
Un saludo ;)
por casualidad tienes algo en "Parse Order" ?
¿Parse Order?
No sé dónde viene eso, la verdad.
Al final tomé otra solución. Edité la clase PHP que parsea el texto, le añadí la misma función que utiliza con la etiqueta "code" y le puse el estilo que quería.
Funciona perfectamente, así que podría dar esto por cerrado (pero si se encuentra solución mejor, porque es fastidioso tener que editar el código PHP).
Un saludo.