# Documentos adjuntos se muestran como una URL en texto

**URL:** <https://tainacan.discourse.group/t/documentos-adjuntos-se-muestran-como-una-url-en-texto/2392>\
**Category:** Dúvidas\
**Tags:** coleções, itens\
**Created:** [Maio 5, 2025, 8:05am UTC](https://tainacan.discourse.group/t/documentos-adjuntos-se-muestran-como-una-url-en-texto/2392 "2025-05-05T08:05:34Z")\
**Posts on this page:** 9\
**Page:** 1

<div class="post-metadata">

**Author:** ![Juanjo](https://avatars.discourse-cdn.com/v4/letter/j/94ad74/32.png) [@Juanjo](https://tainacan.discourse.group/u/Juanjo)\
**Post date:** [Maio 5, 2025, 8:05am UTC](https://tainacan.discourse.group/t/documentos-adjuntos-se-muestran-como-una-url-en-texto/2392/1 "2025-05-05T08:05:34Z")

</div>

Buenos dias, estoy utilizando Tainacan para un repositorio de documentos. Un item de mi colección puede tener varios adjuntos descargables (Docx, pptx,…). Mi duda es como puedo lograr que no se me muestre la ruta al documento a descargar en el lightbox, sinó que simplemente me muestre un icono o imagen. Gracias

---

<div class="post-metadata">

**Author:** ![mateus.m.luna](https://yyz2.discourse-cdn.com/free1/user_avatar/tainacan.discourse.group/mateus.m.luna/32/3_2.png) [@mateus.m.luna](https://tainacan.discourse.group/u/mateus.m.luna)\
**Post date:** [Maio 5, 2025, 4:51pm UTC](https://tainacan.discourse.group/t/documentos-adjuntos-se-muestran-como-una-url-en-texto/2392/2 "2025-05-05T16:51:03Z")

</div>

Olá @Juanjo, tudo bem? Seja bem vindo à nossa comunidade!

Qual tema você está utilizando? A depender temos algumas configurações que permitem a modificação da galeria de mídia.

---

<div class="post-metadata">

**Author:** ![Juanjo](https://avatars.discourse-cdn.com/v4/letter/j/94ad74/32.png) [@Juanjo](https://tainacan.discourse.group/u/Juanjo)\
**Post date:** [Maio 6, 2025, 7:11am UTC](https://tainacan.discourse.group/t/documentos-adjuntos-se-muestran-como-una-url-en-texto/2392/3 "2025-05-06T07:11:30Z")

</div>

Buenos dias, Mateus.  
Todo bien, gracias por la bienvenida.  
El tema que estoy utilizando es “Interficie del Tainacan”.  
A ver si puedes darme alguna idea 😉

---

<div class="post-metadata">

**Author:** ![mateus.m.luna](https://yyz2.discourse-cdn.com/free1/user_avatar/tainacan.discourse.group/mateus.m.luna/32/3_2.png) [@mateus.m.luna](https://tainacan.discourse.group/u/mateus.m.luna)\
**Post date:** [Maio 6, 2025, 7:56pm UTC](https://tainacan.discourse.group/t/documentos-adjuntos-se-muestran-como-una-url-en-texto/2392/4 "2025-05-06T19:56:37Z")

</div>

Eu fiz alguns testes aqui… Infelizmente acho que não vai ser possível sem algum ajuste em código.

A nossa galeria de mídias, embora feita para funcionar com tudo que é tipo de mídias, ainda privilegia muito arquivos que podem de fator ser visualizados na Web. Arquivos como estes ela mostra por padrão o link direto para download. Tem alguns ajustes que você pode fazer nessa visualização através do menu “Personalizar” → “Página de um item Tainacan” → “Documentos e anexos do item”. Por exemplo, desabilitando o lightbox e usando a seção “Documentos” (que une a galeria maior, do documento, com a de anexos em um só carrossel), você reduz um clique para este link. Mas mudar a aparência dele, mostrando por exemplo um botão com rótulo ao invés do link em extenso, demandaria ainda mais opções que não criamos nos temas.

Via código, porém, isso pode ser configurado, caso você tenha alguma experiência em PHP. Temos um filtro `get_tainacan_item_gallery` justamente para que o HTML dessa galeria possa ser manipulado. Caso este seja um caminho para você, vale dar uma olhada na função que gera a própria galeria, [aqui](https://github.com/tainacan/tainacan/blob/cfdd668f6e75067c1fd0273e40a665a4f2d70738/src/classes/theme-helper/class-tainacan-theme-helper.php#L1490) e [aqui](https://github.com/tainacan/tainacan/blob/cfdd668f6e75067c1fd0273e40a665a4f2d70738/src/classes/theme-helper/template-tags.php#L316).

---

<div class="post-metadata">

**Author:** ![Juanjo](https://avatars.discourse-cdn.com/v4/letter/j/94ad74/32.png) [@Juanjo](https://tainacan.discourse.group/u/Juanjo)\
**Post date:** [Maio 7, 2025, 6:34am UTC](https://tainacan.discourse.group/t/documentos-adjuntos-se-muestran-como-una-url-en-texto/2392/5 "2025-05-07T06:34:17Z")

</div>

Gracias por la información. Probaré lo que me dices y te cuento

---

<div class="post-metadata">

**Author:** ![Juanjo](https://avatars.discourse-cdn.com/v4/letter/j/94ad74/32.png) [@Juanjo](https://tainacan.discourse.group/u/Juanjo)\
**Post date:** [Maio 13, 2025, 10:03am UTC](https://tainacan.discourse.group/t/documentos-adjuntos-se-muestran-como-una-url-en-texto/2392/6 "2025-05-13T10:03:17Z")

</div>

Hola de nuevo,  
estuve haciendo algunas pruebas, intentando modificar el código en single\_attachments\_old.php que era donde había localizado el tainacan\_media\_attachment\_html\_url, para que me detectara si la extension de los documentos adjuntos era docx o pptx. Pero no veo cambio en la visualización.  
Estoy llegando a la conclusion que seguramente no lo estoy cambiando en el sitio correcto.  
Alguna recomendación?

---

<div class="post-metadata">

**Author:** ![mateus.m.luna](https://yyz2.discourse-cdn.com/free1/user_avatar/tainacan.discourse.group/mateus.m.luna/32/3_2.png) [@mateus.m.luna](https://tainacan.discourse.group/u/mateus.m.luna)\
**Post date:** [Maio 13, 2025, 12:49pm UTC](https://tainacan.discourse.group/t/documentos-adjuntos-se-muestran-como-una-url-en-texto/2392/7 "2025-05-13T12:49:03Z")

</div>

¡Hola @Juanjo! Estoy utilizando algunas herramientas de traducción automática para ver si ayuda como comunicar 🙂

`single_attachments_old.php` está ahí en el tema sobre todo para mantener la compatibilidad con versiones anteriores de Tainacan, donde la función `tainacan_the_item_gallery()` no existía todavía en el plugin Tainacan. Definitivamente estás interesado en manipular el contenido generado por `tainacan_the_item_gallery()`. Pero el mejor enfoque para hacerlo no es cambiar el código en sí, sino usar filtros para ajustar su salida.

Por ejemplo, puedes añadir el siguiente código en tu tema o plugin:

```php
add_filter('get_tainacan_item_gallery', function($output, $args) {
  // Manipula $output HTML string si quieres o usa 
 // $args content para construir tu propio $output y devolverlo
  return $output;
}, 10, 2);

```

Este filtro permite anular la salida de [la función `get_tainacan_item_gallery`](https://github.com/tainacan/tainacan/blob/e9366b7f92696e953cfe687a031ce39390701ca7/src/classes/theme-helper/class-tainacan-theme-helper.php#L1490). No hay una manera fácil de explicarlo todo, creo que lo mejor es echar un vistazo al código.

---

<div class="post-metadata">

**Author:** ![mateus.m.luna](https://yyz2.discourse-cdn.com/free1/user_avatar/tainacan.discourse.group/mateus.m.luna/32/3_2.png) [@mateus.m.luna](https://tainacan.discourse.group/u/mateus.m.luna)\
**Post date:** [Maio 13, 2025, 2:42pm UTC](https://tainacan.discourse.group/t/documentos-adjuntos-se-muestran-como-una-url-en-texto/2392/8 "2025-05-13T14:42:12Z")

</div>

Echando un vistazo al código, puedo ver que podría ser difícil para usted encontrar dónde ajustar esa función, porque en realidad hace mucho entre bastidores (renderiza el carrusel, lightbox, y todo tipo de vistas previas de archivos…). Así que creo que lo que está buscando podría ser el contenido de salida por el `tainacan-item-get-attachment-as-html` función llamada desde dentro de ella. Y por suerte esa función también se puede filtrar:

```php
add_filter('tainacan-item-get-attachment-as-html', function($output, $img_size, $item) {
  // Haz lo que necesites con $output, ¡no olvides devolverlo!
   return $output;
}, 10, 3);

```

Dentro de esa función puedes manipular la salida de adjuntos. Echa un vistazo a la función que lo construye para saber lo que quieres:

> <https://github.com/tainacan/tainacan/blob/e9366b7f92696e953cfe687a031ce39390701ca7/src/classes/entities/class-tainacan-item.php#L954-L981>

El enlace que no te gusta se muestra en la línea 974. Así que probablemente querrás repetir esa lógica - comprobando el tipo de adjunto, intentando incrustar, etc. - y entonces en caso de que no sea incrustable (`esc_url($embed) == esc_url($url)`), construir un botón HTML en lugar de un enlace. Sólo tenga cuidado de que las cosas cambian un poco en el contexto del filtro. Por ejemplo, `$this` sería `$item` en tu filtro.

---

<div class="post-metadata">

**Author:** ![Juanjo](https://avatars.discourse-cdn.com/v4/letter/j/94ad74/32.png) [@Juanjo](https://tainacan.discourse.group/u/Juanjo)\
**Post date:** [Maio 14, 2025, 7:27am UTC](https://tainacan.discourse.group/t/documentos-adjuntos-se-muestran-como-una-url-en-texto/2392/9 "2025-05-14T07:27:57Z")

</div>

Muchas gracias por la información.  
Trataré de investigar un poco más con lo último que me has mandado.  
Veo que seguramente lo estaba complicando más de lo necesario.  
No te preocupes por el idioma, si me lo escribes en Portugués o inglés ya lo traduciré yo 😉
