Bloques de la barra lateral derecha

||||\n-|-|-|\n:discourse2: | Resumen | Right Sidebar Blocks (Bloques de barra lateral derecha) muestra una barra lateral a la derecha de las listas de temas con una lista configurable de bloques. \n| :eyeglasses: | Vista previa | Vista previa en Discourse Theme Creator\n:hammer_and_wrench: | Enlace al Repositorio | \u003chttps://github.com/discourse/discourse-right-sidebar-blocks\u003e\n:open_book:|¿Nuevo en los Temas de Discourse?| Guía para principiantes sobre el uso de temas de Discourse\n\n[wrap=theme-install-button repoUrl="https://github.com/discourse/discourse-right-sidebar-blocks\" repoName="Right Sidebar Blocks"]\nInstalar este componente de tema\n[/wrap]\n\n[quote]\n\n:discourse2: Como este es un componente de tema official mantenido por el equipo de Discourse, las solicitudes de Support, Bug, UX y Feature se pueden realizar en las categorías respectivas aquí en Meta, y etiquetadas con la etiqueta de componente de tema apropiada. Haga clic en un enlace a continuación para comenzar una. :+1: \n\n\u003ckbd\u003e [:question:\u0026nbsp;Soporte](Discourse Meta "Solicitar soporte sobre la configuración y el uso de Right Sidebar Blocks") \u003c/kbd\u003e \u003ckbd\u003e [:bug:\u0026nbsp;Error](Discourse Meta "Un informe de error significa que algo está roto, lo que impide el uso normal/típico del componente de tema") \u003c/kbd\u003e \u003ckbd\u003e [:eyes:\u0026nbsp;UX](Discourse Meta "Discusión sobre la interfaz de usuario de Right Sidebar Blocks, y cómo se presentan las características (incluyendo el idioma y los elementos de la interfaz de usuario)") \u003c/kbd\u003e \u003ckbd\u003e [:bulb:\u0026nbsp;Característica](Discourse Meta "Discusión sobre cómo se pueden mejorar o ampliar las características existentes de Right Sidebar Blocks, y cómo podrían funcionar las nuevas características propuestas")\u003c/kbd\u003e\n\n[/quote]\n\n### Características\n\nEl componente incluye algunos bloques que puedes mostrar en la barra lateral:\n\n* popular-tags (etiquetas populares)\n* top-contributors (principales contribuidores)\n* recent-replies (respuestas recientes)\n* category-topics (temas de categoría)\n* custom-html (html personalizado)\n* category-list (lista de categorías)\n* subcategory-list (lista de subcategorías)\n* upcoming-events-list* (lista de eventos próximos)\n* minimal-gamification-leaderboard** (tabla de clasificación de gamificación mínima) \n\n\u003e:information_source: El directorio de usuarios debe estar habilitado para que se rellene la lista de Principales Contribuidores. Si tu lista está en blanco, busca enable user directory en tu configuración de administrador para asegurarte de que esté habilitado.\n\n\* Solo disponible cuando se usa con el plugin Calendar (Calendario).\n** Solo disponible cuando se usa con el plugin Gamification (Gamificación).\n\nTambién puedes usar otros componentes Ember como bloques, solo necesitas usar el nombre correcto. Por ejemplo, el núcleo incluye un componente Ember signup-cta, y puedes usarlo en la barra lateral tal cual. Ten en cuenta que no puedes usar componentes que esperen un conjunto de parámetros, pero sí puedes crear tu propio componente Ember en un tema separado y referenciarlo solo por su nombre en la configuración blocks de la barra lateral. \n\nPuedes controlar algunas características de los bloques proporcionados a través de parámetros.\n\n| nombre | descripción | predeterminado | valor | disponible para |\n|—|—|—|—|—|\n| count (cantidad) | limita el número de resultados | varía | número | todos excepto custom-html |\n| excerptLimit (límite de extracto) | limita la longitud de cada extracto de respuesta | 150 | número | recent-replies |\n| id | id de categoría | | id de categoría (category-list usa separado por comas) | category-topics, category-list |\n| content (contenido) | contenido a mostrar | | html | custom-html |\n| scopeToCategory (ámbito a categoría) | solo muestra en la categoría o subcategoría X | | id de categoría | popular-tags |\n| excludedTags (etiquetas excluidas) | lista de etiquetas excluidas | | nombres de etiquetas | popular-tags |\n| displayInSpecificCategories (mostrar en categorías específicas) | lista de categorías para mostrar el widget | todas | números separados por comas | popular-tags |\n| id | id de la tabla de clasificación | | número | minimal-gamification-leaderboard |\n| tag (etiqueta) | qué etiqueta mostrar | | nombre de la etiqueta | tag-topics |\n| period (período) | período de tiempo de los temas principales | weekly (semanal) | all, yearly, quarterly, monthly, weekly, daily | top-topics |\n| title (título) | título del bloque | varía | cadena | tag-topics, category-list, top-contributors |\n| excludedGroupNames (nombres de grupos excluidos) | Excluye grupos especificados | | Nombres de grupos | top-contributors |\n| order (orden) | Ordena a los contribuidores | | Cadena (likes_received o likes_given) | top-contributors |\n| period (período) | Período de tiempo para los principales contribuidores | yearly (anual) | all, yearly, quarterly, monthly, weekly, daily | top-contributors |\n| upcomingDays (días próximos) | Eventos que comienzan antes del valor proporcionado | 180 | número | upcoming-events-list |\n| timeFormat (formato de hora) | Formato de fecha/hora del evento | LT | formato momentjs | upcoming-events-list |\n\n### Configuración\n\n| Nombre | Descripción\n|-|-|\n| blocks (bloques) | \n| show in routes (mostrar en rutas) | Solo para usuarios avanzados: limita la barra lateral a las rutas seleccionadas.\u003cbr\u003eEjemplos: discovery.latest, discovery.unread, discovery.new, discovery.top, tag.show, "c/category-slug" (para categorías), "tag/sample-tag" (para etiquetas).\u003cbr\u003eCuando está vacío, la barra lateral se muestra en todas las rutas de lista.\n\nblocks: elige los bloques a mostrar y ajusta su orden\n\nshow_in_routes: decide en qué rutas de lista de temas mostrar la barra lateral. Por defecto, se mostrará en todas las rutas de descubrimiento excepto en /categories.\n\n| Traducción | Predeterminado\n|-|-|\n| top_contributors.heading | Principales contribuidores\n| top_contributors.view_all | Ver todo\n| popular_tags.heading | Etiquetas populares\n| popular_tags.view_all | Ver todo\n| recent_replies.heading | Respuestas recientes\n| subcategory_list.heading | Subcategorías\n| top_topics.heading | Temas principales\n| category_list.heading | Categorías\n\n### Capturas de Pantalla\n\n

\n\n\n\n\n\nTen en cuenta que el componente viene con un estilo muy básico; se asume que los administradores que usan el componente agregarán su propio estilo en su propio tema.\n\n### Interacciones\n\nCuando se usa junto con el plugin Discourse Calendar, puedes agregar un bloque de barra lateral para tus eventos próximos. El nombre del bloque es upcoming-events-list, y el formato de fecha se puede personalizar siguiendo esta sintaxis (por ejemplo, MMMM D, YYYY ).\n\n\n\n\n\n\n\u003cbr\u003e\n\n\n\u003e:discourse2: ¿Alojado por nosotros? Los componentes de tema están disponibles para su uso en nuestros planes Estándar, Business y Enterprise.",“target_locale”:“es”}

60 Me gusta
Discourse Gamification
Sidebar for Subcategories
Add User leaderboard in sidebar
FKB Pro - Social theme
Setup Continuous Integration using GitHub Actions
Blogroll (feature request)
Topic List Previews (TLP)
How to include a YouTube video or video widget on the community home page?
How to extend the Discourse sidebar?
Discourse Bars :beers: :cocktail: (a sidebar framework)
Homepage Blocks
Topic List Excerpts
🏷️ Bars Tag List Component
Discourse Bars :beers: :cocktail: (a sidebar framework)
When to switch themes/plugins to `.gjs`?
FKB Pro - Social theme
Recent replies takes 2 seconds to display
Leaderboard in homepage
Discourse Gamification Plugin in the Header
Discourse Calendar updated to use fullcalendar 6
I'm getting errors when I switch categories too quickly
目前我感觉看到的最好看的Discourse主题,有没有谁能爱心奉献一个
Adding ‘hot topics’ to the Sidebar
Tag Icons + Tag Banners + Right Sidebar Blocks
Discourse Sidebar Blocks
Custom Components -- add button or text at any plugin outlet
Top Posters Widget?
Creating a Top 20 leaderboard for a specific date range
Connectors not rendering
Sidebar for Subcategories
Displaying tags along with categories
FKB Pro - Social theme
Customizing your site with existing theme components
Creating and installing plugins?
FKB Pro - Social theme
Adding a recent comments widget
Add social media handles on home page
Alternate presentation of sub-categories which puts the _top_ category first?
FKB Pro - Social theme
Looking for the perfect theme
Discourse Bars :beers: :cocktail: (a sidebar framework)
Discourse Bars :beers: :cocktail: (a sidebar framework)
Add right sidebar gamification mini-leaderboard
Add right sidebar gamification mini-leaderboard
Pyx's Modern Theme

¿Qué debo añadir en el parámetro “name” si utilizo html-personalizado?

1 me gusta

¡Genial ver esto como un componente temático #oficial! Ciertamente abre un nuevo mundo de personalizaciones.

Tengo 2 preguntas:

  1. En la barra lateral, quiero mostrar la lista de temas /latest de manera similar a como lo hace category-topics. ¿Es esto posible? recent-replies casi lo logra (especialmente si el extracto está oculto), pero realmente quiero incluir temas sin respuestas.

  2. ¿Es posible mostrar los bloques laterales solo en ciertas categorías? Lo que quiero decir es que la única ruta que se muestra es la Lista de Temas de Categoría, y solo para las categorías que especifico.

1 me gusta

Disculpas, la documentación para esto es escasa (la actualizaré ahora). El nombre del parámetro para custom-html es content.

No tenemos nada prefabricado para la lista completa de /latest, pero puedes crear la tuya y agregarla a la configuración usando su nombre. Debería ser muy similar a las listas de categorías/etiquetas, solo que sin un filtro.

Actualmente no, no puedes mostrarlo solo en categorías específicas. Sin embargo, puedes usar discovery.category en la configuración show in routes, que solo mostrará la barra lateral en las rutas de categorías (pero en todas ellas, no en un subconjunto).

3 Me gusta

Gracias, ¿es posible incluir la barra lateral en cada tema también?

4 Me gusta

Acabo de notar una limitación del componente, especialmente en lo que respecta a los bloques category-topics y subcategory-list, y es que al agregar varios bloques de cualquiera de estos tipos con diferentes id, siempre resultaba en que mostraran temas/subcategorías del bloque superior en el editor de lanzamiento (supongo).

Un error que tengo ahora mismo es que, después de jugar con el bloque subcategory-list unas 10-12 veces, dejó de mostrarse por completo en nuestro sitio de staging (ver video a continuación).

2 Me gusta

El bloque subcategory-list no acepta ningún parámetro. Cuando se usa, mostrará las subcategorías de la categoría actual basándose en a qué categoría actual hayas navegado… por lo que no tiene sentido usar ese bloque más de una vez.

Por eso tampoco se muestra subcategory-list en tu video. Si estás en una ruta que no es de categoría, ese bloque no se muestra.

Para category-topics, en tu video veo el mismo ID usado dos veces: 7. Hice una prueba local y con diferentes IDs obtengo diferentes temas mostrados (es decir, no puedo reproducir el error reportado).

4 Me gusta

Hola, ¡muchas gracias por este increíble plugin!

Tengo una pregunta sobre la barra lateral subcategory-list: ¿hay alguna opción para mostrarla solo para una categoría en particular?

Nuestros desarrolladores lo han revisado y parece que no hay soporte para el parámetro id en subcategory-list, ¿podrías añadirlo, por favor?

2 Me gusta

Y con respecto al bloque top-contributors: ¿hay alguna forma de obtener los resultados de un período de una semana?

2 Me gusta

Actualmente no, no existe esta opción. Tiene sentido añadirla, aunque me imagino que debería admitir varios IDs para que puedas mostrar el bloque para una lista de categorías (A, B y C, por ejemplo). Estaré encantado de revisar las PRs en el repositorio, si vuestros desarrolladores creen que pueden añadir esto, sería genial. (De lo contrario, puedo añadirlo a una lista de “cosas deseables” en el componente del tema).

¿Te refieres a a) obtener los resultados y almacenarlos en caché durante una semana o b) obtener los principales contribuidores de la última semana en cada carga? Lo último debería ser fácil de añadir, el almacenamiento en caché es un poco más complicado.

3 Me gusta

@pmusaraj ¿puedes añadir

padding: 3px 4px 3px 4px

para las etiquetas populares?

Gracias.

1 me gusta

Hola @pmusaraj, ¡muchas gracias por tu respuesta!

Nuestro desarrollador ha compartido las PRs aquí, por favor échales un vistazo: Implement the `displayInCategories` parameter which allows to specify a list of categories where the `subcategories-list` block is displayed by d521bb85 · Pull Request #10 · discourse/discourse-right-sidebar-blocks · GitHub

¡La segunda variante sería perfecta! Necesitamos mostrar la lista de los principales contribuyentes de la última semana, de hecho. ¡Muchas gracias!

4 Me gusta

El componente intencionadamente tiene muy poco estilo para que los consumidores puedan añadir sus propios estilos en sus propios temas/componentes de tema.

¡Gracias, esa PR es genial y ya está fusionada!

También trabajaré en breve en añadir la configurabilidad al bloque de los principales contribuidores (o si alguien es más rápido, estaré encantado de revisar una PR).

3 Me gusta

No estoy seguro de dónde encontrar el código para eso. ¿Podrías indicarme? Me gustaría ver cómo modificar los temas de categorías para que, al no tener ID, te dé todas las categorías (y, por lo tanto, efectivamente la lista /latest).

¡Sería genial tener eso en todos los bloques!

2 Me gusta

@pmusaraj ¡Genial! Muchas gracias por tu ayuda, estoy deseando usar el bloque de principales contribuidores :slight_smile:

1 me gusta

Hola! No estoy seguro de si este componente está causando errores. Pero una vez deshabilitado, ya no se ven errores. :thinking: ¿Podría alguien echar un vistazo a esto para ayudarme a resolver el problema? Lo agradecería mucho.

Con él habilitado, al visitar un tema específico en el escritorio, al hacer clic en el logotipo del sitio en la barra superior en un intento de volver a la página de inicio, me llevaba a una pantalla de carga que nunca desaparecía y arrojaba errores en la consola del navegador (como se muestra a continuación). No se vieron registros de error relacionados en la ruta mysite/logs.

d6ca234baf8d2d5e65f414f31e198fe956d9a939.js?__ws=www.bfsu.cafe:98 Uncaught (in promise) TypeError: Cannot read properties of undefined (reading 'findFiltered')
    at new CategoryTopics (d6ca234baf8d2d5e65f414f31e198fe956d9a939.js?__ws=www.bfsu.cafe:98:18)
    at h.createComponent (base-component-manager.js:37:1)
    at h.createComponent (ember-component-manager.js:54:1)
    at C.create (manager.js:558:1)
    at Object.evaluate (runtime.js:3301:1)
    at Object.evaluate (runtime.js:1312:1)
    at Dt.evaluateSyscall (runtime.js:5232:1)
    at Dt.evaluateInner (runtime.js:5188:1)
    at Dt.evaluateOuter (runtime.js:5180:1)
    at Wt.next (runtime.js:6191:1)
    at Wt._execute (runtime.js:6175:1)
    at Wt.execute (runtime.js:6166:1)
    at qt.handleException (runtime.js:5369:1)
    at Kt.handleException (runtime.js:5605:1)
    at Lt.throw (runtime.js:5302:1)
    at Be.evaluate (runtime.js:2580:1)
    at Lt._execute (runtime.js:5285:1)
    at Lt.execute (runtime.js:5266:1)
    at Ht.rerender (runtime.js:5634:1)
    at Er.render (index.js:7578:1)
    at index.js:7896:1
    at It (runtime.js:5074:1)
    at Rr._renderRoots (index.js:7876:1)
    at Rr._renderRootsTransaction (index.js:7928:1)
    at Rr._revalidate (index.js:7970:1)
    at invoke (backburner.js:351:1)
    at p.flush (backburner.js:241:1)
    at h.flush (backburner.js:447:1)
    at q._end (backburner.js:999:1)
    at _boundAutorunEnd (backburner.js:648:1)
CategoryTopics @ d6ca234baf8d2d5e65f414f31e198fe956d9a939.js?__ws=www.bfsu.cafe:98
createComponent @ base-component-manager.js:37
createComponent @ ember-component-manager.js:54
create @ manager.js:558
(anonymous) @ runtime.js:3301
evaluate @ runtime.js:1312
evaluateSyscall @ runtime.js:5232
evaluateInner @ runtime.js:5188
evaluateOuter @ runtime.js:5180
next @ runtime.js:6191
_execute @ runtime.js:6175
execute @ runtime.js:6166
handleException @ runtime.js:5369
handleException @ runtime.js:5605
throw @ runtime.js:5302
evaluate @ runtime.js:2580
_execute @ runtime.js:5285
execute @ runtime.js:5266
rerender @ runtime.js:5634
render @ index.js:7578
(anonymous) @ index.js:7896
It @ runtime.js:5074
_renderRoots @ index.js:7876
_renderRootsTransaction @ index.js:7928
_revalidate @ index.js:7970
invoke @ backburner.js:351
flush @ backburner.js:241
flush @ backburner.js:447
_end @ backburner.js:999
_boundAutorunEnd @ backburner.js:648
Promise.then (async)
n @ backburner.js:28
flush @ index.js:46
_scheduleAutorun @ backburner.js:1218
_end @ backburner.js:1009
_boundAutorunEnd @ backburner.js:648
Promise.then (async)
n @ backburner.js:28
flush @ index.js:46
_scheduleAutorun @ backburner.js:1218
_end @ backburner.js:1009
_boundAutorunEnd @ backburner.js:648
Promise.then (async)
n @ backburner.js:28
flush @ index.js:46
_scheduleAutorun @ backburner.js:1218
_end @ backburner.js:1009
_boundAutorunEnd @ backburner.js:648
Promise.then (async)
n @ backburner.js:28
flush @ index.js:46
_scheduleAutorun @ backburner.js:1218
_ensureInstance @ backburner.js:1206
scheduleOnce @ backburner.js:845
k @ index.js:522
queueRerender @ mount-widget.js:124
scheduleRerender @ widget.js:319
rerenderResult @ widget.js:365
F @ hooks.js:207
(anonymous) @ hooks.js:247
dispatch @ jquery.js:5430
_.handle @ jquery.js:5234
frame:251 Dismissaste la señal, pero las cookies de terceros están deshabilitadas en tu navegador, por lo que la señal volverá la próxima vez que visites la página.

Veo información sobre este componente en el archivo js mencionado en la primera línea del registro de error anterior.

// línea 96-103 de d6ca234baf8d2d5e65f414f31e198fe956d9a939.js?__ws=www.bfsu.cafe
      const filter = "c/" + categoryId;
      this.category = _category.default.findById(categoryId);
      this.store.findFiltered("topicList", {
        filter
      }).then(result => {
        const results = result.topic_list.topics;
        results.forEach(topic => {
          topic.url = "".concat((0, _getUrl.default)("/t/")).concat(topic.slug, "/").concat(topic.id);
1 me gusta

Ah, sí, disculpa por eso. Debería estar arreglado ahora, solo necesitas descargar la última actualización del componente de tema.

3 Me gusta

¡Gracias! Ahora funciona perfectamente.

3 Me gusta

Hola @pmusaraj, disculpa si parezco insistente, solo quería saber si hay alguna fecha estimada para esta implementación.

Sería una adición increíble :slight_smile:

¡Muchas gracias!

3 Me gusta

¡Gracias por este increíble componente!

Noté que mi encabezado y pie de página completos desaparecen globalmente cuando tengo esto habilitado (todo en mi header.html y footer.html). ¿Fue esto intencional? Pero para solucionar esto, tengo que usar PluginAPI para agregar manualmente un encabezado/pie de página.

2 Me gusta