Foros del Web » Programando para Internet » PHP »

Partir HTML cerrando etiquetas

Estas en el tema de Partir HTML cerrando etiquetas en el foro de PHP en Foros del Web. Buenas a todos, Supongo que os ocurrira igual que a mi. El caso es que estoy haciendo un periodico en el que en la portada ...
  #1 (permalink)  
Antiguo 04/08/2012, 11:11
Avatar de salbatore  
Fecha de Ingreso: abril-2007
Ubicación: Springfield
Mensajes: 1.567
Antigüedad: 17 años, 1 mes
Puntos: 19
Partir HTML cerrando etiquetas

Buenas a todos,

Supongo que os ocurrira igual que a mi. El caso es que estoy haciendo un periodico en el que en la portada debo mostrar los ultimos articulos.

En la portada limito los articulos a 3000 letras. Lo que hago es contar las letras y partir en ese lugar el articulo. El problema es que el articulo usa HTML y, por lo tanto, cuando se corta se suele pillar un <p> sin cerrar o etiquetas mas complejas.

Mi duda es... ¿Como puedo hacer para cerrar las etiquetas que se quedan abiertas?, como lo haceis?

  #2 (permalink)  
Antiguo 04/08/2012, 11:34
Avatar de Nemutagk
Colaborador
 
Fecha de Ingreso: marzo-2004
Ubicación: México
Mensajes: 2.633
Antigüedad: 20 años, 1 mes
Puntos: 406
Respuesta: Partir HTML cerrando etiquetas

Lo que pretendes hacer es muy complejo, se deberá analizar todo el texto en busca de tags abiertos, etc, lo que se podría hacer con expresiones regulares, PERO, es mucho código para lo que pretendes hacer, lo que se opta y es mas sencillo son:

a) definir un párrafo (comúnmente el primero) como "resumen" o "descripción" del artículo para evitar publicar el artículo completo

b) definir un texto por aparte para escribir el "resumen" o "descripción" del artículo

Las dos formas anteriores es como se trabaja en CMS de esa indole, si aun así quieres implementar la forma que tu deseas es buscar tags abiertos para después cerrarlos, pero esto te va a acarrear varios problemas

a) tags como img que son en una solo tag
b) la semantica de los tag
c) la posición de los tags

Sinceramente, para lo que pretendes te sugiero una solución que comente o algo parecido antes de meterte a querer cerrar tags de forma automatica...
__________________
Listo?, tendría que tener 60 puntos menos de IQ para considerarme listo!!!
-- Sheldon Cooper
http://twitter.com/nemutagk
PD: No contestaré temas vía mensaje personal =)
  #3 (permalink)  
Antiguo 04/08/2012, 15:32
Avatar de salbatore  
Fecha de Ingreso: abril-2007
Ubicación: Springfield
Mensajes: 1.567
Antigüedad: 17 años, 1 mes
Puntos: 19
Respuesta: Partir HTML cerrando etiquetas

Gracias por la respuesta.

Tienes razon, habia comenzado una funcion para buscar las etiquetas y cerrarlas, pero es complejo.

He buscado algun script que lo haga, pero siempre son soluciones muy relativas. He pensado hacer una funcion que me lo haga, pero tenia un poco de prisa.

Al final, he optado por convertir la cadena con strip_tags y listo.

Gracias!

Etiquetas: etiquetas, html
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 19:32.