contenido-sidebar-lateral-inicio-independiente

Título Radios - Página de Inicio

RADIOS

Radios - Página de Inicio

Título Proyectos - Página de Inicio

PROYECTOS

Lista de Proyectos - Página de Inicio

Imagen de una junta administrativa a modo de decoración del proyecto Interferencia
Logo Interferencia

INTERFERENCIA

Investigamos, interpretamos y contamos historias. Somos parte de Radioemisoras UCR.
Ir a Interferencia
Imagen de una junta administrativa a modo de decoración del proyecto Doble Check
Logo Doble Check

DOBLE CHECK

Verificar información es parte de la vida en una sociedad democrática. Nuestra misión es ayudarte en esa tarea diaria y constante.
Ir a Doble Check

Título Destacados - Página de Inicio

DESTACADOS

Publicador de contenidos

Publicador de contenidos

RADIO UNIVERSIDAD

“Quien controla la alimentación controla la humanidad”: el poder de las semillas

05 de junio del 2026

Publicador de contenidos

RADIO U

La aUdioteca: voces, literatura y memoria en una nueva plataforma de Radios UCR

03 de junio del 2026

Publicador de contenidos

Se ha producido un error al procesar la plantilla.
Java method "com.sun.proxy.$Proxy108.getFileEntry(long)" threw an exception when invoked on com.sun.proxy.$Proxy108 object "com.liferay.document.library.opener.google.drive.web.internal.service.DLOpenerGoogleDriveDLAppServiceWrapper@69cf9c44"; see cause exception in the Java stack trace.

----
FTL stack trace ("~" means nesting-related):
	- Failed at: #assign imgFileEntry = service.getFil...  [in template "20097#20123#76997" at line 33, column 19]
----
1<#-- Inyectar servicio remoto para manejar imágenes correctamente --> 
2    <#assign service = serviceLocator.findService("com.liferay.document.library.kernel.service.DLAppService")> 
3 
4    <#-- Función para construir URL de la imagen --> 
5    <#function getFileEntryURL fileEntry> 
6      <#return themeDisplay.getPathContext() + "/documents/" + fileEntry.getRepositoryId()?c + "/" + 
7        fileEntry.getFolderId()?c + "/" + htmlUtil.unescape(fileEntry.getTitle())> 
8    </#function> 
9 
10 
11      <#if entries?has_content> 
12        <#list entries as curEntry> 
13          <#assign renderer = curEntry.getAssetRenderer() /> 
14          <#assign journalArticle = renderer.getArticle() /> 
15          <#assign document = saxReaderUtil.read(journalArticle.getContent()) /> 
16          <#assign rootElement = document.getRootElement() /> 
17 
18          <#-- Inicializar variables --> 
19          <#assign imagenPortada = "/documents/20121/49457/Portada.jpg/307a8a4a-25c8-822a-1f93-32c4d3218d9b?version=1.1&t=1752169972481&imagePreview=1"> 
20          <#assign imagenPortadaAlt = "Imagen por defecto"> 
21          <#assign tituloNoticia = "" /> 
22          <#assign descripcion_noticia = "" /> 
23          <#assign etiquetaNoticia = "RADIO 870" /> 
24          <#assign fechaFormateada = "" /> 
25          <#assign link = "#" /> 
26 
27          <#list rootElement.elements() as dynamicElement> 
28            <#if "ImagenPortada" == dynamicElement.attributeValue("name")> 
29              <#assign imgObj = dynamicElement.element("dynamic-content").getText() /> 
30              <#if imgObj?has_content> 
31                <#assign imgJson = jsonFactoryUtil.createJSONObject(imgObj) /> 
32                <#if imgJson.has("fileEntryId")> 
33                  <#assign imgFileEntry = service.getFileEntry(imgJson.fileEntryId?number) /> 
34                  <#assign imagenPortada = getFileEntryURL(imgFileEntry) /> 
35                  <#assign imagenPortadaAlt = imgJson.alt!"Imagen por defecto" /> 
36                </#if> 
37              </#if> 
38            </#if> 
39            <#if "Titulo" == dynamicElement.attributeValue("name")> 
40              <#assign tituloNoticia = dynamicElement.element("dynamic-content").getText() /> 
41            </#if> 
42            <#if "Contenido" == dynamicElement.attributeValue("name")> 
43              <#assign descripcion_noticia = dynamicElement.element("dynamic-content").getText() /> 
44            </#if> 
45            <#if "Etiqueta" == dynamicElement.attributeValue("name")> 
46              <#assign etiquetaNoticia = dynamicElement.element("dynamic-content").getText() /> 
47            </#if> 
48            <#if "FechaDate" == dynamicElement.attributeValue("name")> 
49                <#assign dateNoticia = dynamicElement.element("dynamic-content").getData()> 
50                <#if dateNoticia?? && dateNoticia != ""> 
51                    <#assign fechaFormateada = dateNoticia?date("yyyy-MM-dd")?string("dd 'de' MMMM 'del' yyyy")> 
52                </#if> 
53            </#if> 
54          </#list> 
55 
56          <#if curEntry??> 
57            <#assign link = assetPublisherHelper.getAssetViewURL(renderRequest, renderResponse, renderer, curEntry, true) /> 
58          </#if> 
59 
60          <a href="${link} " class="a-reset clean-link-article" aria-label="Leer noticia: ${tituloNoticia}"> 
61            <article class="news-cover-card bg-white" style="    min-height: 380px; 
62"> 
63              <img 
64                class="news-cover-list__image" 
65                src="${imagenPortada}" 
66                alt="${imagenPortadaAlt}" 
67                loading="lazy" 
68              /> 
69              <div class="news-cover-list__content"> 
70                <span class="heading-7 tag bg-color-radio-870-ucr-accesibilidad fw-bold white u-rounded-10" style="margin-bottom:14px;"> 
71                  ${etiquetaNoticia} 
72                </span> 
73                <p class="items-sm fw-bold gray-5 mb-0_875" style="margin-bottom:32px;"> 
74                  ${tituloNoticia} 
75                </p> 
76                <span class="items-sm black"> 
77                  ${fechaFormateada} 
78                </span> 
79 
80 
81          </a> 
82              </div> 
83            </article>           
84        </#list> 
85      </#if> 

Publicador de contenidos

Hombre presidente de El Salvador en Costa Rica
INTERFERENCIA

Amnistía Internacional: Derechos humanos y Derecho Internacional corren un gran peligro

12 de mayo del 2026

Título Podcasts - Página de Inicio

PODCASTS

Título Reels - Página de Inicio

REELS

Lista de Reels - Página de Inicio

RADIO U 101.9 FM En tu Mundo.
RADIO UNIVERSIDAD 96.7FM
RADIO 870 UCR En los 870 AM, para todas, para todos... PARA USTED.
INTERFERENCIA Periodismo independiente con enfoque crítico.

Título Vídeos - Página de Inicio

VIDEOS

Lista de Vídeos - Página de Inicio

SEKA en El Sillón Azul - Sesiones Radio U

¡El punk y el ska inundan el Estudio de Radios UCR! SEKA se unió a celebrar los 30 años de Radio U con una imperdible Sesión en El Sillón Azul en el mes de mayo.

¿Sentir inseguridad es solo un tema de percepción?

Voces desde Alta Contención

Cuatro privados de libertad del CAI Terrazas conversaron con Interferencia

Título Horas Estudiante - Página de Inicio

HORAS ESTUDIANTE

Banner Horas Estudiante - Página de Inicio

contenido-inicio-titulo-seccion-contacto

Contacto

Información de contacto - Página de Inicio