Temas creados por usuarios ignorados se muestran en la página de inicio

Hola, disculpas si estoy haciendo esto mal o si está en la categoría incorrecta: es mi primer post. Soy moderador en un sitio que utiliza este software y he notado que cuando selecciono ‘ignorar’ a un usuario, sus publicaciones siguen apareciendo en mi feed, es decir, en la página de inicio. Cuando hago clic en ellas, el contenido real se muestra como 'Contenido ignorado. ¿Se podría solucionar esto para que los usuarios ignorados sean filtrados completamente del feed de las personas?

10 Me gusta

Estoy bastante seguro de que esto es así por diseño en este momento, @david puede confirmarlo.

Supongo que deberíamos cambiarlo para que los temas de usuarios ignorados se omitan en lo más reciente.

7 Me gusta

Sí, eso es correcto: por ahora, silenciar a un usuario solo oculta el contenido de sus publicaciones, no los temas completos.

Supongo que podríamos hacer que se aplique a los temas que crea el usuario silenciado, pero eso significaría que te perderías todas las respuestas de usuarios “no silenciados” en el proceso…

8 Me gusta

@sam @david Solo leyendo este post me vino algo a la mente.

¿Podrían volcarse/extraerse las publicaciones de los usuarios silenciados/ignorados de un hilo y colocarse en una categoría estilo TL3 bajo una bandera TLX específica que solo los usuarios bloqueados/ignorados puedan ver?

Recientemente alcancé el nivel TL3 como usuario y ver esta categoría invisible que apenas usamos es único, así que reutilizarla como una especie de sala de tiempo de espera o enfriamiento podría funcionar.

Solo una idea, por cierto.

¡Hola! ¿Has podido pensar más en esto? Todavía es un problema en nuestro sitio.

Esto no está previsto en este momento.

¡Genial! Al final logré encontrar una solución (:

Hola @BeBe, ¿qué solución alternativa encontraste?

Tengo un usuario para el que está bien ver sus publicaciones en otros temas, pero me gustaría que sus temas creados estuvieran ocultos.

Sus temas siempre giran en torno a los mismos (aburridos) temas. :wink:

Hay una forma CSS de ocultar las publicaciones de usuario dentro de los temas:

Pero, desafortunadamente, las listas de temas no incluyen el ID de usuario del creador, por lo que no hay una forma de ocultar los temas creados por el usuario.

Tomemos el nombre de usuario abc con ID 123.

Eché un vistazo al código fuente para ver si había una manera de hacerlo con CSS de usuario.

La etiqueta del tema es actualmente así:

<tr data-topic-id="123" id="ember123" class="topic-list-item … ember-view">

Dentro de ella, seguro que podría consultar la celda de los pósters, pero necesitaría JavaScript ya que quiero ocultar su padre:

tr > td.posters > a:first-child[data-user-card='abc']

Ahora, si tuviéramos el atributo adicional data-op-user-id="123", directamente en el tr del tema:

<tr data-topic-id="123" id="ember123" data-op-user-id="123" class="topic-list-item … ember-view">

Podríamos usar CSS simple de usuario para filtrar por ID de usuario, para quienes preferimos no ver sus temas:

tr.topic-list-item[data-op-user-id='123']

¿Sería posible tener un nuevo data-op-user-id en las etiquetas tr.topic-list-item de las entradas de tema?

Solo funciona en modo de escritorio, ver abajo.


Para quien pueda estar interesado, escribí un pequeño userscript para community.metabrainz.org.
Primero lo intenté con MutationObserver, como se aconsejó, pero se volvió demasiado complejo, así que solo uso un setInterval tonto.

No lo hice dinámico y con configuraciones de usuario, etc.
Cada actualización borrará tu lista negra y tu @include (ver más adelante).

Porque espero que se agregue un nuevo atributo data-op-user-id a los temas en Discourse genuino, para que ya no necesite este userscript.

Puedes adaptarlo a cualquier otro foro de Discourse cambiando su @include a tu URL (la única línea específica).


No funciona en vista móvil ya que (desafortunadamente), por diseño, Discourse no muestra el avatar del OP en vista móvil.

Por lo tanto, todavía sería muy conveniente en términos de spam tener ese sugerido tr.topic-list-item[data-op-user-id='123'].

Ahora las actualizaciones no restablecerán mi lista negra, he agregado un editor básico de lista negra y la lista se guarda localmente.

Pero realmente me encantaría, me encantaría, me encantaría que Discourse incluyera un ID de usuario OP en cada fila de tema <TR data-op-user-id="123">, para que una hoja de estilo de usuario súper simple fuera suficiente para ocultar los temas de usuarios ignorados:

tr.topic-list-item[data-op-user-id='123'] { display: none; }

O me encantaría, me encantaría, me encantaría aún más que Discourse simplemente ocultara los temas de usuarios ignorados por sí mismo.

No entiendo el propósito de los usuarios ignorados si sus temas contaminan mi navegación.


<script type="text/x-handlebars" data-template-name="components/latest-topic-list-item">
<div class="topic-poster" data-user-card="{{topic.creator.username}}">

Quizás intente agregar la propiedad username/userid al div del póster del tema anulando la plantilla latest-topic-list-item y luego podrá ocultarlos a través de la hoja de estilo del usuario.

También tengo un componente para ocultar automáticamente a los usuarios ignorados si desea echar un vistazo.

Soy solo un usuario de Discourse, no un administrador.
No puedo instalar complementos de Discourse en todos los sitios de Discourse que utilizo.

Puedo ejecutar scripts de usuario y hojas de estilo de usuario, como en cualquier sitio web, pero está limitado debido a la falta de información de op-usuario en las etiquetas de los temas.
Así que me gustaría esto en el software original. :slight_smile:

Tengo una sugerencia para una solución alternativa que podría ser bastante fácil de implementar: las publicaciones de usuarios ignorados se pueden mostrar haciendo clic en “Mostrar publicación oculta”, ¿por qué no puede ser este el caso también para la primera publicación (es decir, para un hilo creado por un usuario ignorado)?

1 me gusta

¿Alguna posible implementación de eso? Creo que debería considerarse un error. Si quieres suprimir mensajes/chats de un usuario, tampoco quieres ver sus temas… ¿verdad?

3 Me gusta

¿Podrían ocultarse los temas de las últimas publicaciones solo cuando la última publicación fue del usuario ignorado? De esta manera, todos los temas nuevos de los usuarios ignorados se ocultarían, pero las respuestas de otros usuarios seguirían apareciendo en las últimas publicaciones.

Esto se ha convertido en un problema real aquí en meta últimamente.

2 Me gusta

Por curiosidad, ¿por qué querrías ver las respuestas de otros en lugar de silenciar el tema por completo? ¿No sería difícil seguir la conversación parcial?

2 Me gusta

¿Me lo preguntas a mí o a David, porque este era su argumento? No me importaría de ninguna de las maneras, pero sería mejor si esto fuera configurable por cada usuario.

Hasta donde yo sé, los usuarios son mayormente ignorados por otros usuarios basándose en su “comportamiento” general, que es difícil de cuantificar exactamente, pero se basa solo parcialmente en el contenido de sus publicaciones.

Lo que significa que la discusión posterior basada en sus ‘contribuciones’ a veces puede ser bastante útil.

Lo que realmente me molesta es que algunos usuarios solo parecen encontrar fallos, y lo hacen vocalmente, sin invertir tiempo o esfuerzo en aprender primero, y luego envían spam a múltiples temas a la vez, lo que luego abruma por completo lo más reciente.

Simplemente ignorar sus últimas publicaciones (y, por lo tanto, no mostrar el tema como destacado en lo más reciente cuando publican) lo solucionaría. La forma en que está implementado ahora se siente rota.

1 me gusta

Para mí, los temas creados por usuarios silenciados siempre deberían ocultarse. No me interesan sus temas, incluso si participan otras personas no silenciadas.

2 Me gusta

Sería genial una configuración de bloque adicional, todas las principales redes sociales proporcionan esta función.

Recuerdo que alguien aquí dijo que bloquear a un usuario significa que algo anda mal con los foros, por lo que es inútil y no soluciona el problema, pero creo que es solo una elección personal ocultar a alguien, tal vez a otra persona le guste ese usuario, pero a mí no.

Y si el usuario ofendió a mucha gente, probablemente ya haya sido reportado.

1 me gusta

De hecho, el propósito de ignorar a alguien suele ser porque te resulta molesto y/o te involucra en una discusión. Así que realmente parece que se frustra el propósito cuando se muestran en /latest etc.

Afortunadamente, esto está disponible y parece funcionar bien:

Pero realmente parece que debería ser una característica principal de Discourse, al menos como una opción, o idealmente por defecto.

2 Me gusta

Suena genial, aunque es externo y requiere ser administrador.
¿Sabes si funciona al navegar desde un smartphone?

Sí, lo hace

1 me gusta