Control de visualización del menú de navegación (barra lateral)

|||
| - | - | - |
| :information_source: | Resumen | Permite mostrar secciones y enlaces para personal, usuarios registrados y anónimos |
| :hammer_and_wrench: | Repositorio| https://github.com/Lillinator/navigation-menu-display-control |
| :question: | Guía de Instalación | Cómo instalar un tema o componente de tema |
| :open_book: | ¿Nuevo en Temas de Discourse? | Guía para principiantes sobre el uso de Temas de Discourse |

Instalar este componente de tema

Descripción

El componente de tema Control de Visualización del Menú de Navegación permite mostrar varias secciones y enlaces predeterminados solo para el personal y/o solo para usuarios registrados. También puedes especificar secciones personalizadas o enlaces personalizados (se incluyen nombres de marcador de posición). Además, hay una configuración para mostrar una sección de menú personalizada solo para usuarios anónimos, así como configuraciones para establecer el orden de las secciones predeterminadas (categoría, etiquetas, chat, canales, mensajes). Las secciones y enlaces en la configuración son listas que se pueden editar con secciones existentes (ver capturas de pantalla a continuación), así como tantas secciones o enlaces personalizados como desees añadir.

Configuración

:point_right:t2: Para las secciones de menú personalizadas, deben ser visibles globalmente cuando las configures (la casilla de verificación Hacer que esta sección sea pública y visible para todos debe estar habilitada).
La sección superior se llama “community” en el código, por lo que si deseas ocultar esa sección, usa el nombre de sección “community”. Puedes usar los enlaces instalados con plugins, por ejemplo, enlaces de documentación, aniversarios y cumpleaños.
También hay configuraciones que se anulan entre sí: tener un enlace específico en “Más” visible para usuarios registrados será anulado por la configuración del menú desplegable “Más” visible solo para el personal.

Nombre de Configuración Descripción
mostrar estas secciones solo para el personal Lista de secciones para mostrar solo para el personal. Puede incluir secciones personalizadas con el formato de nombre de estilo “Staff Menu = staff-menu”.
mostrar estas secciones solo para usuarios registrados Lista de secciones para mostrar solo para usuarios registrados. Puede incluir secciones personalizadas con el formato de nombre de estilo “User Menu = user-menu”.
mostrar estos enlaces solo para el personal Lista de enlaces para mostrar solo para el personal. Puede incluir enlaces personalizados con el mismo formato de mayúsculas y minúsculas (“Staff Link” = “Staff Link”).
mostrar estos enlaces solo para usuarios registrados Lista de enlaces para mostrar solo para usuarios registrados. Puede incluir enlaces personalizados con el mismo formato de mayúsculas y minúsculas (“User Link” = “User Link”)
mostrar más solo para el personal Casilla de verificación para mostrar la sección desplegable “Más” solo para el personal.
mostrar más solo para usuarios registrados Casilla de verificación para mostrar la sección desplegable “Más” solo para usuarios registrados.
mostrar personalizado solo para anónimos Campo de texto para una sección de menú personalizada que se mostrará solo para usuarios anónimos (se oculta para usuarios registrados).
mostrar menú de navegación solo para usuarios registrados Casilla de verificación para mostrar todo el menú lateral de navegación solo para usuarios registrados (ocultar a usuarios anónimos).
ocultar icono del globo de menús personalizados Ocultar el icono del globo para el personal en las secciones de menú personalizadas (no visible para los no personal por defecto).
ordenación de secciones de menú predeterminadas Permite reordenar las secciones de menú predeterminadas (no se aplica a menús personalizados)

Capturas de pantalla

Configuración para secciones solo para personal y usuarios registrados

Configuración para enlaces solo para personal y usuarios registrados

Configuración para la sección Más, sección de menú personalizada solo para usuarios anónimos, icono del globo, ocultar todo el menú de navegación y cambiar el orden de las secciones de menú predeterminadas


Para secciones de menú de barra lateral de navegación específicas de grupo personalizadas, utiliza el componente de tema Secciones de Menú de Grupo.

24 Me gusta

Se agregó una sección para permitir la reordenación de las secciones del menú predeterminadas.

5 Me gusta

No creo que lo de ocultar enlaces esté funcionando del todo bien por el momento.

Las secciones se ocultan bien para mí, pero no puedo ocultar enlaces personalizados individuales cuando los convierto a minúsculas y guiones.

Pero los enlaces oficiales parecen necesitar minúsculas. Así que podrían ser manejados de forma diferente.

Sin embargo, funcionan si se usa el texto completo del título (con espacios y mayúsculas). Así que quizás solo el OP (¿se puede wikificar?) y las instrucciones en el TC necesiten ser cambiadas. O quizás se necesite un cambio central para la consistencia.

2 Me gusta

Gracias Nathan. Sí, algo ha cambiado ahí. Lo revisaré este fin de semana.

1 me gusta

Ok, el componente sigue funcionando correctamente, pero el formato del nombre de la clase del enlace personalizado ha cambiado, así que tuve que hacer algunos cambios en la documentación del campo en el componente y en el OP. Por favor, actualiza el componente del tema.

A diferencia de las secciones de menú personalizadas, para los enlaces personalizados, los nombres en la configuración del componente deben tener el mismo formato de mayúsculas y minúsculas que sus nombres personalizados reales. Por supuesto, los predeterminados seguirán en minúsculas solo para hacer las cosas aún más confusas, ¡jaja! :grin:

Por ejemplo, si quiero mostrar un enlace personalizado específico llamado “GitHub Repo” solo para usuarios registrados:

Introduciría el mismo nombre de enlace en la configuración show these links for logged-in only en el componente del tema:

Por lo tanto, si tienes enlaces personalizados en la configuración de visualización de enlaces - show these links for staff only y show these links for logged-in only - necesitarás cambiar esas entradas de configuración del componente para que coincidan con los nombres de los enlaces.

Ten en cuenta que para las secciones de menú personalizadas (no para los enlaces), la convención de nomenclatura sigue siendo la misma que antes: sigue siendo un estilo de slug en minúsculas (es decir, “Custom Menu Name” = custom-menu-name).

Gracias de nuevo por señalar esto a mi atención @nathank :hugs:

En algún momento, quiero agregar la capacidad de reorganizar todas las secciones del menú de la barra lateral de navegación, incluidas las personalizadas, no solo las predeterminadas como lo hace actualmente. Sé cómo hacerlo codificándolo, solo tengo que integrarlo para usar configuraciones y variables.

4 Me gusta

Hola Lilly:

Estoy notando:

  • No puedo reordenar secciones, independientemente de si uso el nombre o el slug.
  • Toda la barra lateral se oculta para los invitados, incluso cuando no he marcado esa casilla.
1 me gusta

No puedes reordenar secciones personalizadas con este componente. Acabo de comprobar la funcionalidad de reordenación y está funcionando como se esperaba.

Sí, puedo confirmar que la función de ocultación para anónimos está rota. La arreglaré hoy. Gracias por informarme.

Después de revisarlo, la función de ocultación para anónimos está funcionando como se esperaba, pero tienes que eliminar los ejemplos predeterminados que uso en la configuración para mostrar estas secciones solo para usuarios registrados para demostrar cómo funciona.

1 me gusta


¿No se muestra nada en modo sin iniciar sesión?

Eso debería ser un ajuste de alternancia…

image

1 me gusta

ver mi publicación anterior :slight_smile:

[quote=“Lilly, post:15, topic:277687”]tienes que eliminar los ejemplos predeterminados que uso en la configuración para que mostrar estas secciones solo para usuarios registrados demuestre cómo funciona.
[/quote]

editar: quizás debería considerar eliminarlos y simplemente usar la captura de pantalla para mostrar. :thinking:

4 Me gusta

[cita=“Lilly, post:18, topic:277687”]
tal vez debería considerar eliminar esas y simplemente usar la captura de pantalla para mostrar
[/cita]

Ok, he hecho esto ahora y he editado el primer mensaje. Usa las capturas de pantalla como guía para la sección predeterminada y los nombres de los enlaces.

2 Me gusta

Creo que el CSS de la sección ⋮ Más ha cambiado ( btn-flat ya no existe)

He tenido que usar esto para ocultarlo para anónimos:

.anon button.sidebar-more-section-links-details-summary {
    display: none;
}

Aquí hay una PR:

3 Me gusta

Esto se ha fusionado. Gracias de nuevo Nathan :hugs:

También arreglé la función anónima para ocultar la barra lateral completa, que estaba un poco rota.

3 Me gusta

Hola,

Estoy atascado, intentando comprender cómo usar este buen componente. Estoy intentando conseguir que los usuarios anónimos solo vean “Conviértete en miembro” o algo similar.
¿Me puedes ayudar?

Te daré 3 formas diferentes de hacerlo:

1. Usa este componente de tema

Crea un menú lateral personalizado con el enlace a /login y usa esta configuración en el componente de tema:


2. Usa CSS en un tema o componente nuevo/existente

Si solo quieres agregar un enlace en la sección superior debajo de “Mis publicaciones”, puedes agregar el enlace a /login a través del enlace Más - Personalizar esta sección de esta manera. Por ejemplo, si el enlace se llama “Iniciar sesión o registrarse”:

Luego, ve a un tema o componente de tema y edita el html/css de la siguiente manera:

Ten en cuenta que las referencias de los enlaces en esa sección superior distinguen entre mayúsculas y minúsculas:

.sidebar-section-link-wrapper[data-list-item-name="Login or Signup"] {
  display: none;
}

.anon .sidebar-section-link-wrapper[data-list-item-name="Login or Signup"] {
  display: block;
}

Resultado en vista incógnita / anónima:


3. Usa el siguiente componente de tema

Sí, creé un componente de tema específico hace mucho tiempo que hace esto. También hace lo contrario: muestra una sección solo para miembros (usuarios registrados).

3 Me gusta

Entendido. Muchas gracias por la detallada guía.

2 Me gusta