Archivo de Junio 2008

portal de clasificados multizona v1.0

Junio 26, 2008

portal de clasificados multizona v1.0

El objetivo de este post es abordar funcionalmente los diferentes módulos que conforman el portal web Directorio de Clasificados.

A modo organizativo se dividirán los temas en dos secciones:

  1. Cliente
  2. Administrador

de manera que pueda distinguirse claramente cuáles funciones pertenecen a los visitantes comunes del sitio (a partir de ahora clientes) y cuáles al administrador.

INTRODUCCIÓN

La función principal de un Directorio de Clasificados consiste en almacenar anuncios (a partir de ahora se tratará como anuncio o clasificado indistintamente) y clasificarlos en categorías claramente establecidas, de modo que los internautas puedan consultarlos posteriormente. Implícitamente queda como objetivo primario el brindar la posibilidad de insertar nuevos anuncios, así como la opción de su posterior modificación y visualización.

Para ello se establecen dos roles:

  1. Cliente
  2. Administrador

donde el primero pueda hacer uso, según su conveniencia, del cúmulo de anuncios almacenados , así como insertar los suyos propios. Y el segundo rol queda para el encargado de controlar la manera en que se comportará el portal, las normas funcionales que se establecerán.

PARTICULARIDADES DE ESTE DESARROLLO

Se incluye la gestión multizona (se refiere a zonas geográficas), permitiendo junto a la posibilidad de enmarcar los anuncios en categorías bien definidas, la opción de asignarlos a zonas geográficas determinadas( p. ej.: Este anuncio pertenece a la categoría Coches de la zona España>Madrid ). Como complemento visual orientativo se han insertado mapas de tales zonas geográficas, con los cuales el visitante puede interactuar.

Este elemento permite aglomerar en una misma web a públicos con diferentes intereses, trazados según el lugar donde residan. Y sin embargo cada sector estará organizadamente separado, de manera que no se mezclan los anuncios de una zona geográfica con otra a no ser que el visitante así lo desee.


FUNCIONALIDADES

Cada rol tiene un conjunto de funcionalidades asociadas, a las que se podrá acudir en pos de satisfacer las necesidades de cada usuario.

Seguidamente veremos cuáles funcionalidades pertenecen a cada grupo, y qué detalles rondan alrededor.

Cliente

Insertar clasificado

Cualquier visitante podrá insertar un nuevo clasificado. Para ello solamente deberá rellenar un formulario con los siguientes datos:

  • Nombre del anunciante
  • Email (este dato no será público, no se le mostrará a quienes visualicen el clasificado)
  • Teléfono (el usuario decidirá si se muestra o no)
  • Categoría (entre un conjunto de categoría definidas podrá seleccionar la que mejor venga con su clasificado)
  • Zona geográfica
  • Quién pone el clasificado (empresa o particular)
  • Tipo de anuncio (puede ser Venta/Compra/Alquiler, éstos tipos son a definir …)
  • Duración (entre 1 y 12 meses)
  • Título
  • Texto
  • Precio (automáticamente se le asignará la moneda correspondiente a la zona geográfica que haya seleccionado arriba, en este mismo formulario)
  • Imagen principal
  • Imágenes adicionales (3)
  • Código de verificación visual (CAPTCHA)

Además de estos datos, internamente el sistema guarda la fecha, hora y dirección IP de la persona que ha introducido el anuncio. Este registro podrá ser utilizado en caso que algún clasificado presente problemas legales u otros en los que sea necesaria alguna información que conduzca al dueño.

Las imágenes suministradas serán tratadas hasta crear las correspondientes versiones thumbs (versión pequeña) para mostrar en los listados y que en ese caso viajen sólo los datos necesarios (en otro caso viajaría la imagen completa para mostrarla en un tamaño inferior al original, para los listados).

Cada elemento textual suministrado a través del formulario será sometido a un análisis para eliminar cualquier indicio de intención de Ataque XSS (Cross Site Scripting). De esta manera se elimina la posibilidad de inyección de código externo que pudiese alterar el correcto funcionamiento del sistema.

Para la correcta aceptación de los datos se chequearán tres puntos:

  1. Excepto los campos de imágenes, todos los demás deberán haber sido llenados con el formato adecuado (sólo números en los campos numéricos, por ejemplo precio, dirección email debidamente formada en el campo email, …)
  2. Que el texto del clasificado no active ninguno de los filtros textuales definidos por el administrador (palabras obscenas por ejemplo, texto inapropiado en general, serán definido por el administrador)
  3. Correcta coincidencia entre el campo de verificación visual y la correspondiente imagen (CAPTCHA)


Si se cumplen estos tres puntos el clasificado pasará a ser parte del directorio. Inmediatamente el usuario recibirá un mail con los datos necesarios para la posterior modificación o eliminación (específicamente una contraseña generada automáticamente por el sistema). Tales datos podrán ser requeridos en múltiples ocasiones por el usuario, en caso que los pierda u olvide, y cada vez se le enviarán a la dirección de email que haya suministrado en el formulario.

Sin embargo la activación del mismo (sólo aparecerá en listados y podrá visualizarse cuando esté activado) dependerá de la política de activación seleccionada por el administrador. (ver Gestión de la política de activación de los clasificados entre las funcionalidades del Administrador).


A cada clasificado se le asignará una url amigable única del tipo
www.dominio.com/n-titulo_del_clasificado de manera que pueda ser fácilmente indexable por parte de los buscadores.

El sistema podrá chequear periódicamente (invocado manualmente por el administrador o fijado como una tarea periódica del server, o ambas) los clasificados que se acerquen a su fecha de caducidad (fijada por el campo Duración del formulario) y enviará un mail a los respectivos dueños con la posibilidad de aumentar su período de permanencia en el directorio, a través de un hipervínculo.

Modificar clasificado

El dueño del clasificado (acreditado por la correspondiente contraseña) podrá modificar a su antojo cada uno de los datos del clasificado (específicamente aquellos que entró en el formulario de inserción).

Igualmente esta vez se chequearán los mismos puntos que en el paso de inserción de un nuevo clasificado (excepto el código de verificación CAPTCHA).

Independientemente de si el anuncio estaba activado o no antes de la modificación, su estado de activación posterior dependerá de la Política de activación que haya fijado el administrador (que tiene puntos referentes a la modificación).

Eliminar clasificado

El dueño del clasificado podrá eliminarlo cuando lo estime necesario.

Destacar clasificado

El dueño del clasificado podrá solicitar que su anuncio se convierta en destacado. En caso que el administrador acepte su pedido, dicho clasificado aparecerá en los listados por encima de aquellos que no estén destacados, sea cual fuere el criterio de ordenación del listado (por fecha, por precio).

El administrador decidirá por cuánto tiempo permanecerá destacado, y podrá modificar este dato si considera pertinente, así como despojarlo de la cualidad de destacado.

Consultar estadísticas del anuncio

Cualquier visitante podrá revisar cuántas veces ha sido visitado un anuncio en particular y cuántas veces ha sido contactado su dueño a través del portal.

Visualizar clasificado

Cualquier visitante podrá visualizar los datos que el dueño del anuncio suministró al formulario de inserción, excepto email y teléfono (este último a elección del dueño).

El número IP no se mostrará a no ser que quien visualice sea el administrador.

Contactar con el dueño del clasificado (anunciante)

El sistema brinda la opción de contactar al responsable del anuncio a través de un formulario. De esta manera no se divulga su email y sin embargo se permite el contacto.

El interesado deberá entrar su dirección email y un texto a manera de mensaje.

Para impedir el envío masivo de mensajes a los dueños de anuncios, este formulario contiene un campo de verificación visual (CAPTCHA) que debe ser rellenado correctamente para que se efectúe el envío del mensaje.

Listar clasificados

Cualquier visitante podrá acceder a los listados que de manera predeterminada se ofrecen:

  • Listado por zona geográfica
  • Listado por categoría

Podrá incluso hacer combinaciones entre ellos.

También se le brinda la posibilidad de reordenar estos resultados basándose en criterios como Fecha y Precio.

Buscar clasificados (listados personalizados)

Además de acceder a los listados predeterminados, los visitantes podrán elaborar listados de anuncios que respondan a sus necesidades. Para ello se brinda un panel de búsqueda donde es posible combinar criterios a manera de filtros:

  • País
  • Ciudad o estado
  • Cadena de texto (título y texto)
  • Categoría
  • Rango de precios

Los listados resultantes de tales búsquedas también podrán reorganizarse atendiendo a Fecha y Precio.

Ejemplos de posibles búsquedas personalizadas :

  • anuncios de la categoría Ocio en Madrid cuyo precio sea mayor que 50 euros
  • anuncios de Latinoamérica de la categoría Hogar
  • anuncios de Panamá que contengan la frase ¨pc de uso¨
  • anuncios de España con cualquier categoría y precio mayor 150 euros


Reportar clasificado

Si algún usuario considera que el contenido de un anuncio resulta inapropiado, podrá reportarlo al administrador a través de un formulario. Deberá suministrar su dirección email y el motivo por el que lo considera inapropiado.

Posteriormente el administrador decidirá qué hacer al respecto.

Administrador

El rol de Administrador incluye todas las funcionalidades de Cliente, además de las suyas propias. Cada una de las siguientes funcionalidades son accesibles a través del panel de administración.

Visualización de asuntos pendientes

Cada vez que el administrador entra al sistema se le muestra un resumen de las actividades acaecidas en la semana, y otras a manera de recordatorio:

  • número de clasificados por activar con vínculo al listado (los clasificados por activar serán aquellos que el administrador haya desactivado o que hayan entrado al directorio sin activarse, dada la política de activación vigente)
  • número de clasificados que hayan sido reportados con vínculo a los correspondientes listados
  • número de clasificados añadidos la última semana
  • total de solicitudes para destacar clasificados y vínculo a los correspondientes listados
  • opción de invocar revisión de clasificados a punto de caducar (se muestra además la fecha de la última vez que se ejecutó esta tarea)


Visualizar estadísticas generales y particulares de los clasificados

El administrador podrá acceder a los siguientes datos:

  • total de clasificados
  • afluencia (número de visitas)
  • total de clasificados según zona y/o categoría


Gestión de categorías

El conjunto de categorías en las que se puede enmarcar un anuncio es variable. El administrador puede añadir nuevas categorías, modificar las existentes y eliminarlas.

También tiene acceso pleno a la gestión de subcategorías (cada categoría puede incluir varias subcategorías).

En caso que se decida eliminar alguna categoría o subcategoría, el sistema elimina automáticamente todos los clasificados que estuviesen bajo la misma.

Gestión de filtros automáticos para la aceptación de nuevos clasificados

Es posible definir reglas textuales que se apliquen a manera de filtro sobre el texto de los clasificados en el proceso de inserción. La activación de alguna regla (coincidencia con alguna porción del texto del clasificado) impediría la aceptación del mismo en el directorio.

De esta manera es posible limitar el texto de los clasificados e impedir que aparezcan palabras o frases que el administrador no desee. Y el hecho que este chequeo sea automático libera al administrador de la engorrosa tarea de leer cada uno de los nuevos anuncios.

Gestión de la política de activación de los clasificados

Cuando un nuevo anuncio pasa a formar parte del directorio se decide si se activará o no. Para ello se toma en cuenta la política de activación, basada en las siguientes posibilidades:

  • inmediata: Siempre se activan los nuevos clasificados, inmediatamente después de su inserción
  • mediante url: Se le envía al dueño del clasificado un email con un link de activación. Se activará cuando el usuario visite la dirección url proporcionada.
  • manual: Sólo el administrador podrá activar los clasificados
    o opción de inactivar los clasificados luego de la edición, hasta que el administrador lo revise

El administrador podrá decidir en cualquier momento cuál de las anteriores opciones pondrá en uso, y podrá hacer cambios posteriores.

Los visitantes del portal sólo podrán visualizar aquellos clasificados que estén activados.

Gestión de clasificados destacados

El administrador puede alterar la propiedad de destacado de cualquier anuncio, y el período de duración. Aunque el tiempo de duración como destacado de un anuncio no haya culminado, podrá eliminar esta propiedad para cualquier anuncio si lo considera pertinente.

En el panel de búsquedas del administrador se añade el criterio destacado. Así el administrador puede combinar el nuevo criterio con los anteriores.

Gestión de las zonas geográficas que aparecerán

El sistema cuenta con un conjunto predeterminado de países (todos los de habla hispana) acompañados de los correspondientes mapas. El administrador puede decidir cuáles aparecen en el portal y cuáles no.

Cuando un país no se encuentre activado no será posible insertar ningún anuncio en ninguna de sus zonas asociadas (provincias o estados), ni se podrá interactuar con el mapa correspondiente.

Gestión de las monedas de cada zona geográfica

Cada país(y sus provincias/estados) tiene asociada una moneda. El administrador tiene potestad de cambiarlas cuando estime necesario.

Ante cualquier cambio de moneda para un país también cambiará automáticamente para todos los clasificados involucrados.

Gestión de reglas de accesibilidad/navegación

Se entienden como reglas de accesibilidad:

  • totales por categoría: Decide si mostrar o no el total de anuncios para cada categoría junto al nombre de la categoría
  • inserción en zonas genéricas: Determina si será posible insertar clasificados directamente en zonas genéricas (Latinoamérica, Europa, Países …) o sólo en las provincias/estados de los países
  • inserción en categorías: Determina si será posible insertar anuncios directamente en las categorías generales o sólo en las subcategorías
  • listados de categorías luego de provincias: Decide qué listado se mostrará luego de seleccionar una zona geográfica (provincia o estado, no país):

o listado de categorías y subcategorías específicas de la zona

o listado de todos los anuncios de la zona, sin filtro de categoría

  • número de clasificados en portada: Determina cuántos últimos clasificados se mostrarán en portada
  • número mínimo de parámetros para búsqueda: Determina cuántos parámetros será necesario suministrar para realizar una búsqueda personalizada

Cada una de estas reglas podrá ser modificada por el administrador en cualquier momento.

Gestión de textos específicos

Existen algunas páginas con información propia de quien administre el portal:

  • Quiénes Somos
  • Aviso Legal

cuyo texto podrá ser modificado por el administrador.

Gestión de publicidad

El sistema cuenta con un gestor de publicidad específica gestionable según zonas geográficas y categorías.

Será posible fijar banners para las siguientes combinaciones:

  • cualquier zona y cualquier categoría
  • cualquier zona y categoría fija
  • zona fija y cualquier categoría
  • zona fija y categoría fija

Cuando se fija una zona específica, el banner aparecerá también en las subzonas correspondientes (si la zona que se fijó es un país entonces aparecerá en cualquiera de sus provincias/estados, si es un continente aparecerá en todos sus países y provincias/estados de cada país).

Con respecto a cada banner se guardarán los siguientes registros:

  • número de veces mostrado
  • número de veces accedido por los visitantes

Así podrá contabilizarse el tráfico generado a partir de los banners publicitarios.

Gestión de los METAs que acompañarán a cada página particular

El administrador podrá fijar METAs específicos para cada página, de cara a una mejor indexación por parte de los buscadores.

Los METAs gestionables son:

  • abstract
  • copyright
  • description
  • keyword
  • language
  • revisit
  • robots



Búsquedas avanzadas (inclusión de nuevos criterios)

En la sesión de administración el panel de búsquedas se expande con tres nuevos criterios que pueden combinarse en pos de una mayor personalización de los listados resultantes de la búsqueda. Los nuevos criterios son:

  • activación – Se refiere a si los clasificados están o no activados
  • destacados – Se refiere a si los clasificados están o no destacados
  • peticiones – Se refiere a si los clasificados tienen peticiones o no para convertirse en destacados


ASPECTOS A DESTACAR

  • Posibilidad de insertar clasificado sin necesidad de registro
  • Personalización de portada según país
  • Mapas de cada zona geográfica
  • Posibilidad de interacción
  • Búsquedas personalizadas
  • Posibilidad de combinar múltiples criterios
  • Anonimato para los dueños de clasificados (nunca se publica su email)
  • Optimización SEO para buscadores

o URLs amigables para clasificados y listados

o Gestión personalizada de TAGs

  • Protección contra intentos de inserción masiva de clasificados
  • Protección contra intentos de envío masivo de email a través del formulario de contacto
  • Protección contra ataques XSS (Cross Site Scripting)
  • Filtros automáticos gestionables para la aceptación de nuevos clasificados

OTROS MÓDULOS

Podrán desarrollarse otros módulos según necesidades particulares. El precio de estos no está cubierto por el presupuesto actual, sino que sería a convenir.

COMPATIBILIDAD

El sistema está preparado para funcionar correctamente en cualquier máquina con servidor Apache o cualquiera que soporte PHP 5.x+ y MySQL 5.x+.

Se visualizará correctamente en ordenadores con resolución de pantalla a partir de 800×600 y navegadores Internet Explorer 5.x+, Mozilla Firefox o compatibles.

COSTE Y TIMINGS

El presupuesto abarca:

  • Diseño visual
  • Maquetación
  • Programación (todas las funcionalidades antes mencionadas)
  • Configuración en el hosting del cliente
  • Puesta en marcha
  • Monitoreo de la primera quincena de la fase de explotación

Tiempo estimado: 30 días (nótese que el desarrollo puede entregarse antes del tiempo estimado)

Precio: 430€ (dividido en dos etapas: 200€ a la mitad y 230€ al final)

Mis datos de contacto en http://phpfreelance.wordpress.com/contactar/

El primer post

Junio 12, 2008

Este es el primero de mis posts …

Se supone que en este blog comentaré sobre los desarrollos que vaya haciendo, explicaré cada una de sus funcionalidades y atenderé las sugerencias que los lectores posteen …

Me deseo suerte :)