barra azul

cabecera reducida 1 sin fondo

FORO

Los usuarios registrados pueden participar en el foro.

¡Regístrate si no lo has hecho aún!.

Listar categorías con Seblod

Más
3 años 6 meses antes #84 por Jorge Mariño Sánchez
Jorge Mariño Sánchez respondió el tema: Listar categorías con Seblod
He podido encontrar una solución tras analizar el problema.
La cuestión que no tiene solución es que no se pueden tener dos paginaciones en la misma página, pero he comprobado que la principal si funciona.
En el ejemplo de relación de contenidos propuesto en el video anterior lo que tenemos es paginación en la lista de oficinas como principal y no en el módulo que lista personas.
He realizado cambios de concepto importantes tras esa comprobación.

En primer lugar he modificado la lista principal de oficinas que es el elemento de menú para consultar el directorio:
En la vista de lista he cambiado la tipografía HTML al campo artículo para sobreescribirla completamente y mostrar el título con un enlace a una lista de contactos (en lugar de al contenido de oficinas).
Primero hay que comprobar como se construye la url para una consulta dada de contactos (por ejemplo contactos con id de oficina 104) , en mi caso *****index.php?cck=contactos&du_contactos_oficina=104&option=com_cck&view=list&Itemid=201&search=lista_de_contactos_en_du&task=search***** .
Luego para ir al listado de contactos de cualquier oficina sólo hay que cambiar el valor en ****du_contactos_oficina=104**** de 104 al que corresponda.
Como estoy en un listado de oficinas lo que debo usar es el "art_id" (el id del artículo) como valor. Eso lo obtengo con ****$cck->getValue('art_id')****
Como voy a sobreescribir el elemento con HTML construyo un enlace que queda así:
****[<a href="index.php?cck=contactos&du_contactos_oficina=$cck->getValue('art_id')&option=com_cck&view=list&Itemid=201&search=lista_de_contactos_en_du&task=search">$cck->getValue('art_title')</a>]****
El texto de enlace es el título ****getValue('art_title')**** y el enlace lo construyo con el id de artículo como está arriba.

El resultado es que ahora tengo una lista de oficinas que no me llevan al contenido de oficinas sino al listado de contactos con el id de la oficina
En este listado funciona correctamente la paginación porque es el contenido principal. El inconveniente es que en ningún sitio se identifica a que oficina corresponde el listado que visualizas, y usar el id no tiene sentido porque al visitante no le dice nada, lo que se necesita es que ponga el nombre de la oficina.

Y para eso he pensado en usar un módulo, ya que su función es mostrar un sólo registro: el nombre de la oficina.
este módulo, que lo queremos encima del listado, hay que publicarlo en una posición de la plantilla principal de tu web (ya que no podemos usar un campo módulo Joomla en la plantilla de tabla de la lista).
Para ese módulo he usado una segunda lista, copiada de la primera, de oficinas en la que incluyo en el formulario de búsqueda el campo "article_id" con un valor en directo de variable con la configuración tipo entero y variable el campo de oficina de contactos (en mi caso du_contactos_oficina, que es el campo con el que relacionamos los contenidos).
Para que el módulo se muestre en los listados de contactos he configurado la asignación del módulo para el elemento de menú de listado principal de oficinas (el primero que ya teníamos) y en todos sus hijos (importante).
En la segunda lista que hemos copiado de oficinas y que usamos sólo para el módulo, hay que configurar que no muestre el título y algunos detalles al gusto.
Es muy importante que en la configuración del formulario de búsqueda en el apartado de Ningún resultado pongas todo en ninguna y ocultar. Esto es porque en el listado inicial de oficinas se mostraría el módulo también, pero con el mensaje de no hay resultados. Haciendo este cambio no se mostrará nada, que es lo que queremos, mientras que en cualquiera de los enlaces de las oficinas sí.
Probablemente no te guste mucho que el módulo se muestre con el estilo de tabla, pero eso esos retoques, así como el tamaño de los textos los puedes hacer con css y te quedará perfecto.

Necesito que me digas si lo he conseguido explicar y lo entiendes....



Necesito que me digas si lo entiendes

Por favor, Identificarse o Crear cuenta para unirse a la conversación.

Más
3 años 6 meses antes #85 por Andrea Trujillo
Andrea Trujillo respondió el tema: Listar categorías con Seblod
Hola a decir verdad no lo entiendo mucho. Mientras buscaba alguna solución para la paginación, empeza a insertar las busquedas. Y hay fue cuando me di cuenta que el campo modulo no funciona bien insertado en las listas. En la pagina principal debe ir el buscador de oficinas y contactos. Con el de oficinas no tengo ningun problema. Y el de contactos lo hice y lo puse dentro de un modulo en joomla y en una posicion de mi plantilla, ahora cuando busco un usuario y me arroja los resultados me muestra el formulario de busqueda que deje en la posicion de mi plantilla y se pinta tambien dentro de la lista de busqueda que queda como resultados. Jajajaja te confieso que cuando vi por primera vez tutoriales de seblod decia esa es la solución a mis problemas pero a medida que avanzo, me pasan cacharros, agradezco haber encontrado a una persona como tu que a través desde este foro me haya ayudado tanto. Y la verdad siento algo de pena por molestarte tanto. Pero no me ha quedado del todo claro lo que me haz explicado para la paginación. No se si pudieramos comunicarnos por skype para mostrarte mejor. Mi usuario es andreat214. Gracias. Estaré atenta a tu respuesta.

Por favor, Identificarse o Crear cuenta para unirse a la conversación.

Más
3 años 6 meses antes - 3 años 6 meses antes #86 por Jorge Mariño Sánchez
Jorge Mariño Sánchez respondió el tema: Listar categorías con Seblod
De acuerdo, como dijo Jack el Destripador, "vamos por partes"...

Lo primero que debes entender es que el problema que has encontrado es de Joomla, no de SEBLOD. Quiere decir que no se pueden tener dos paginaciones, ni con SEBLOD ni sin SEBLOD.

Puedees verlo en: www.seblod.com/community/forums/general-...s/pagination-problem
y lo puedes comprobar tu misma, tal como yo he hecho y te he explicado en la respuesta anterior.

Ahora que sabemos que sólo podemos tener la paginación del contenido de SEBLOD y no en módulos (sean SEBLOD o de cualquier otro tipo, salvo que en la página el contenido principal sea un contenido que no tenga o pueda tener paginación) se puede replantear el asunto a partir de esa limitación y solucionarlo como te he contado.

Como entiendo que puede ser dificil de imaginar sin verlo tendré que grabarte uno o varios videos, pero con poca o ninguna producción porque de lo contrario me puede llevar dos días. Así que, aunque serán en HD, tendrán baja calidad en lo que a edición posterior se refiere.
Última Edición: 3 años 6 meses antes por Jorge Mariño Sánchez.

Por favor, Identificarse o Crear cuenta para unirse a la conversación.

Más
3 años 6 meses antes #87 por Jorge Mariño Sánchez
Jorge Mariño Sánchez respondió el tema: Listar categorías con Seblod
Aquí lo tienes, otra forma de hacerlo sin usar extensiones de pago...



Espero que te guste
El siguiente usuario dijo gracias: Andrea Trujillo

Por favor, Identificarse o Crear cuenta para unirse a la conversación.

Más
3 años 6 meses antes #88 por Andrea Trujillo
Andrea Trujillo respondió el tema: Listar categorías con Seblod
Hola Jorge, gracias por el video. Lo entiendo y lo hice tal y como dice ahi, o por lo menos eso creo, pero aun asi no pude conseguir los resultados que tu si conseguiste. No se que estoy haciendo mal.
En un item de menu de la página puse el formulario de busqueda para buscar por id de la oficina y me generará la url que debia modificar con los getValue.
Me produjo el siguiente link:
administrativos.ut.edu.co/atencion-al-ci...ontactos&task=search
Insertandolo dentro un articulo con un texto quedo asi:
<p><a href="atencion-al-ciudadano/ciudadania/contactos.html?cck=contactos&du_id_oficina=271&boxchecked=0&search=contactos&task=search">texto</a></p>
Se supone que aqui debo cambiar el id de la oficina es decir el número 271 por $cck->getValue('art_id') o $cck->getValue('du_id_oficina')
du_id_oficina es el nombre del campo con el que capto el id de la oficina. Como yo no lo hice en el frontend sino en el backend lo inserto de forma manual y aun asi se crea la relación entre el contacto y la oficina.
A la palabra texto debo reemplazarla por la variable en la que guardo el nombre de la oficina $cck->getValue('du_unidad')
en mi caso du_unidad.
Entonces el link queda asi:
<p><a href="atencion-al-ciudadano/ciudadania/directorio.html?cck=contactos&du_id_oficina=$cck->getValue('du_id_oficina')&boxchecked=0&search=contactos&task=search">$cck->getValue('du_unidad')_$cck->getValue('du_id_oficina')</a></p>
Donde du_id_oficina es el id de la oficina que me listara los contactos
y du_unidad es el nombre de la oficina en esta parte lo concatene con el id de la oficina a ver si se marcaba en listado. Pero no.
El caso es que cuando le doy clic sobre una de las oficinas me muestra todos los contactos de todas las oficinas y cuando reviso la url me doy cuenta de que no agarra la variable del id. (solo he creado dos listados uno para desarrollo institucional con id:288 y otro para rectoria con id:271).
Asi es la url que me muestra al dar clic en una de las oficinas en las que tengo listado
administrativos.ut.edu.co/atencion-al-ci...ontactos&task=search
El nombre de la oficina si lo captura de forma correcta.
Si inserto el id de la oficina delante de cck-contactos&du_id_oficina= entonces si me carga el listado correcto
administrativos.ut.edu.co/atencion-al-ci...ontactos&task=search .
No se si hice entender mi duda, no soy muy buena produciendo videos y envio uno que me quedo de muy baja calidad explicando lo mismo y mostrandote los formulario y listas creadas.

No se que estoy haciendo mal. Lo unico es que desde el principio no hice el proceso como tu lo hiciste captando automaticamente el id, siempre lo ingrese manualmente pero si se creaba la relación. También noto que mi link el que genera para visualizar la lista de contactos es diferente al tuyo.
Agradezco tu atención y estaré atenta a una respuesta o recomendación tuya.
Que porque no lo trabaje desde el front end porque el directorio lo hare yo misma y no queria crear un logueo de usuarios desde el frontend

Por favor, Identificarse o Crear cuenta para unirse a la conversación.

Más
3 años 6 meses antes #89 por Jorge Mariño Sánchez
Jorge Mariño Sánchez respondió el tema: Listar categorías con Seblod
Otra vez, vayamos por partes.

El video dice que no está disponible, pero puede que no me haga falta verlo porque me hago una idea.
Creo que te falta incluir el campo 'du_unidad' en la búsqueda del listado de contactos en una posición oculta (hidden). Pero antes de ocultarla ponla en la busqueda junto al campo CCK para que se muestre y veas si pone el id bien. No debes asignarle un valor por defecto. Cuando veas que el id que muestra es correcto lo ocultas (pero lo dejas).



Sobre lo del backend te voy a volver a insistir. Aunque sólo lo uses tú, es buena práctica hacer la cosas pensando en que sea fácil de administrar y entender por terceros si en algún momento no puedes llevarlo, o seguir llevándolo. Así que te recomiendo que aunque lo hagas tú lo hagas bien. Si no quieres que se logueen tienes una solución: Creas un enlace a un elemento de menú al login, lo pones en un menú que no esté publicado, y conociendo tú el enlace accedes a través de el mismo. Los usuarios no ven el enlace y no intenta loguearse.

P.D.: Supongo que el campo repetido $cck->getValue('du_unidad')_$cck->getValue('du_id_oficina') es un errata, por que la sintaxis debe ser:
<a href="atencion-al-ciudadano/ciudadania/directorio.html?cck=contactos&du_id_oficina=$cck->getValue('du_id_oficina')&boxchecked=0&search=contactos&task=search">$cck->getValue('du_unidad')</a>


Y quítale el marcado de párrafo <p>...</p> que no lo quito en el vídeo por cansancio de no hacerlo más largo. Esa etiqueta de párrafo no es necesaria y te cambia el aspecto del listado.
Tampoco comento que el menú de Listado de contactos en DU puede utilizarse como un buscador de contactos, pero sería lo lógico.
La cuestión sería que le añadas los criterios de búsqueda dentro de contactos que quieras y sea, junto al menú de oficinas los elementos principales. Si configuras tu listado de oficinas por ID en configuración de la lista, en el área "ningún resultado para que no muestre nada, al usarlo como elemento de menú sin identificador en la url no mostrará nada en el módulo de oficinas, lo que lo hace apto para ese uso.

Adjuntos:

Por favor, Identificarse o Crear cuenta para unirse a la conversación.

Tiempo de carga de la página: 0.218 segundos

   También puedes entrar utilizando tu cuenta en:

Oauth logo.svgPuedes conectarte en este sitio utilizando una cuenta de tus redes sociales en lugar de crear una cuenta independiente. Este proceso utiliza una API que mediante "OAuth 2.0" permite comprobar tu identidad mediante un código que se nos envía desde tu red social denominado "token". La única información que obtenemos de tu cuenta es el nombre y la dirección de correo, nada más. La aplicación que se utiliza con la API es de la red social (generada y registrada en la misma) y en algunos casos te advertirá de los permisos que la aplicación obtiene con las credenciales. La aplicación se utiliza para autentificación de tu identidad y para nada más. En cualquier momento puedes revocar los permisos de la aplicación en la configuración de seguridad de tu perfil en la red social.  El proceso es seguro y nosotros no tenemos acceso a tu contraseña ni a la información que tengas en tu perfil. Este sistema de conexión se ofrece como una ventaja frente a tener que recordar tus credenciales de acceso a este sitio. No obstante puedes solicitar tu registro y mantener cuentas separadas si lo prefieres, para ello sólo tienes que rellenar el formulario de "¿No tiene una cuenta?" y enviarlo. Si optas por usar tu cuenta de red social debes utilizar siempre esa, no utilices un día la de Facebook y otro la de Twiter (por ejemplo) por que el sistema te tratará como dos identidades distintas. Si por cualquier razón necesitas usar más de una red social comunícaselo al administrador del sitio y haremos un "merge" de las cuentas para que el sistema sepa que eres tú en cualquier caso.