Tema creado: Ordenar

Instalar este componente de tema

Esto añade una columna de fecha de creación ordenable a la lista de temas. También añade una pestaña opcional “Creado” en la barra de navegación.

En la vista de escritorio, se añade una columna completa. En móvil, la fecha de creación solo se añade junto a la fecha de actividad cuando se selecciona la ordenación por “Creado” (véanse las capturas de pantalla a continuación).

:information_source: Antes de utilizar este componente, es posible que sea conveniente evaluar la necesidad de tu comunidad de conocer la fecha de creación. Ya existe una forma integrada para marcar automáticamente los temas recién creados dentro de un determinado período de tiempo (personalizable por los usuarios en Preferencias > Seguimiento > Temas).

Configuración

Habilitar el elemento de la barra de navegación “Ordenar por fecha de creación”

Añade un elemento a la barra de navegación “Ordenar por fecha de creación” al menú de navegación. Valor por defecto: true

Capturas de pantalla

Escritorio

Móvil

Habilitar la columna solo en el filtro de fecha de creación

Evita que se muestre la columna de fecha de creación fuera del filtro de fecha de creación. Requiere que “Habilitar el elemento de la barra de navegación Ordenar por fecha de creación” sea true. Valor por defecto: false

Habilitar el elemento de la barra de navegación en la página de inicio

Añade el elemento de la barra de navegación “Ordenar por fecha de creación” en la página de inicio. Valor por defecto: true

Habilitar la columna en la página de inicio

Añade la columna “Creado” en la página de inicio. Valor por defecto: true

Categorías para mostrar el elemento de la barra de navegación

Lista de categorías para mostrar en el elemento de la barra de navegación “Ordenar por fecha de creación”. Déjalo vacío para mostrarlo en todas las categorías. Valor por defecto: empty

Categorías para mostrar la columna de fecha de creación

Lista de categorías para mostrar la columna “Creado”. Déjalo vacío para mostrarlo en todas las categorías. Valor por defecto: empty

Etiquetas para mostrar el elemento de la barra de navegación

Lista de etiquetas para mostrar el elemento de la barra de navegación “Ordenar por fecha de creación”. Déjalo vacío para mostrarlo en todas las etiquetas. Valor por defecto: empty

Etiquetas para mostrar la columna de fecha de creación

Lista de etiquetas para mostrar la columna “Creado”. Déjalo vacío para mostrarlo en todas las etiquetas.
Valor por defecto: empty

Elemento de la barra de navegación antes

Ajusta la posición del elemento de la barra de navegación en la lista. Valor por defecto: top.

Capturas de pantalla

Ordenación


Vista móvil

Con categoría y etiquetas

Compatibilidad y notas

En móvil, la funcionalidad de ordenación ya está muy limitada, por lo que la fecha de creación solo funcionaría como información. El campo adicional solo aparece si la fecha de creación es diferente de la fecha de reactivación.

La compatibilidad con Miniaturas de la lista de temas es limitada. En estilo de lista, funcionará con normalidad. En estilo de blog, la fecha de creación se mueve a la esquina inferior derecha. En estilo de cuadrícula y estilo de mampostería, la fecha de creación solo es visible cuando se selecciona el filtro “Creado”, y reemplazará a la fecha de actividad. En estilo minimalista, la fecha de creación está oculta.

17 Me gusta

¡Vaya, otro plugin perfecto que cambia el foro! Sería genial si pudiera integrarse con el plugin Discourse Nav Item Icon / Emoji.

3 Me gusta

Creo que debería funcionar. :slight_smile:
Simplemente agrégalo, por ejemplo:
emoji:created_date:twitter:spiral_calendar:filter

4 Me gusta

¡Confirmo que añadir la configuración como la tiene Don funciona!


5 Me gusta

¡Muy bien! Desafortunadamente, no funciona bien con el TC de Miniaturas de Temas, añade una hora extra por alguna razón:

Nota la hora extra de 7h en la parte inferior del centro.

Parece que puedo simplemente ocultar este .topic-list .topic-list-data:last-of-type, pero pensé que te lo haría saber :grin:

EDITAR: Encontré otra rareza, cuando hago clic en Últimos, resalta Creado, y cuando hago clic en Creado, resalta Últimos :zany_face:

1 me gusta

Vaya. Eso es interesante. Parece que es solo un efecto secundario extraño de cómo las Miniaturas de Temas y la Ordenación de Temas Creados se añaden a las plantillas al mismo tiempo. ¿Podría ser un problema con el modo masonry y grid? Veré si puedo hacer un ajuste adecuado en el CSS en lugar de simplemente ocultarlo, una vez que descubra una forma limpia de detectar el uso del componente de tema.
El resaltado para lo último y lo creado suena muy raro. Lo creado solo debería resaltarse cuando la URL tiene /latest?order=created en ella… mmm…

He actualizado algunos de los componentes para hacerlos más bonitos (o al menos para que coincidan) con el componente Topic Thumbnails.

En el estilo de blog, la fecha de creación se traslada a la parte inferior derecha. No pude encontrar una forma limpia de colocarla justo al lado de la fecha de actualización, así que esto tendrá que servir. En el estilo de cuadrícula y mampostería, la fecha de creación solo es visible cuando se selecciona el filtro “Creado” y reemplazará la fecha de actividad. Intenté que la fecha de actividad y la fecha de creación se mostraran al mismo tiempo, pero hizo que la tarjeta se sintiera abarrotada. En el estilo mínimo, la fecha de creación está oculta.

¿Sería difícil añadir un ámbito de categoría a esto? Nos encantaría tenerlo en nuestra sección de anuncios, pero no necesitamos que se muestre en nuestras discusiones generales, etc.

1 me gusta

¡En absoluto! Acabo de lanzar una actualización que añade cuatro nuevas configuraciones para ayudar a controlar dónde se muestran el elemento de la barra de navegación y la columna.

  • Habilitar elemento de la barra de navegación en la página de inicio: Añade el elemento de la barra de navegación “Ordenar por fecha de creación” en la página de inicio.
  • Habilitar columna en la página de inicio: Añade la columna “Creado” en la página de inicio.
  • Categorías para mostrar el elemento de la barra de navegación: Lista de categorías para mostrar en el elemento de la barra de navegación “Ordenar por fecha de creación”. Deja vacío para mostrar en todas las categorías.
  • Categorías para mostrar la columna creada: Lista de categorías para mostrar la columna “Creado”. Deja vacío para mostrar en todas las categorías.

Sin embargo, ten en cuenta que las restricciones para mostrar la columna solo funcionan en sitios que utilizan los nuevos cambios en la lista de temas.

2 Me gusta

¡Muchas gracias! :star_struck: ¡Esto es increíble!

¿Hay alguna forma de hacer que esta sea la página de inicio predeterminada? He visto que algunos complementos agregan opciones a la configuración del sitio “Menú superior”, así que creo que es posible.

Luego, podría reemplazar efectivamente el “Último” estándar ocultando ese con CSS.

La página de inicio predeterminada se puede establecer con un poco de JS:

import { setDefaultHomepage } from "discourse/lib/utilities";
setDefaultHomepage("/latest?order=created");

Añadir la opción a la configuración del Menú Superior es definitivamente preferible, pero no creo que haya una forma de hacerlo desde un TC (Theme Component), al menos por lo que revisé la última vez. Tendré que ver si algo ha cambiado mientras tanto.

2 Me gusta

¡Gracias! Eso debería funcionar, pero añade %3F_discourse_homepage_rewrite a la URL, lo que interfiere con la clasificación. :confounded_face:

2 Me gusta

Pude solucionar eso haciendo setDefaultHomepage("latest?order=created&");
Pero ahora el problema es que, aunque todos los indicadores lo dicen, la clasificación real no se aplica.

Así que probé la misma URL usando Custom Homepage for Groups y eso funcionó :tada: No estoy seguro de por qué la redirección de ese componente funcionaría de manera diferente, ya que estoy bastante seguro de que utiliza el mismo método.

2 Me gusta

Lo descubrí, necesitaba borrar el PreloadStore

Así que uno puede editar tu tema predeterminado o un nuevo componente para agregar esto al JS:

import { apiInitializer } from "discourse/lib/api";
import { setDefaultHomepage } from "discourse/lib/utilities";
import PreloadStore from "discourse/lib/preload-store";

export default apiInitializer((api) => {
  setDefaultHomepage("latest?order=created&");
  PreloadStore.remove("topic_list");
});

y este CSS para eliminar la pestaña Latest:

li.nav-item_latest {
    display: none;
}

Ojalá pudiera quedarse en la URL de la página de inicio raíz, pero eso probablemente requerirá un plugin.

3 Me gusta

Terminé creando ese plugin: Created as Default Sort Order
Así que mi página de inicio se ordena limpiamente por fecha de creación. Todavía uso este componente para agregar la columna.

4 Me gusta

¡Gracias por este gran componente temático!

He realizado una PR muy pequeña y simple que permite configurar dónde aparece el elemento de la barra de navegación.

2 Me gusta

¡Gracias por el PR! Lo he fusionado y actualizado la descripción de la configuración en el OP.

1 me gusta

¿Es posible que esto funcione en una vista de etiqueta? Actualmente, cuando se ve una etiqueta, la opción de menú creada desaparece. ¡Gracias!

¡Actualizado! Se han añadido las configuraciones tags_to_display_nav_bar_item y tags_to_display_created_column.

3 Me gusta