Shabazz Palaces com concerto no gnration em Braga

Shabazz Palaces, o projeto encabeçado por Ishmael Butler, vai estar em Braga, na próximo dia 22 de maio, para um concerto no gnration, marcado para as 21h30.

No dia anterior, há espetáculo em Lisboa. Ambos servirão para apresentar “Exotic Birds of Prey” o novo trabalho lançado em março deste ano.

Assumindo-se como uma sequela direta de “Robbed in Rareness” (2023), “Exotic Birds of Prey” continua a viagem que Butler iniciou em outubro do ano passado, atravessando as várias eras do hip hop, entrelaçando passado e presente, e cruzando-os com inspirações shoegaze e ambiente ou vibrações electro-funk.

Lançado pela histórica editora de Seatle Sub Pop, este é o oitavo álbum do grupo de hip hop experimental.

Os bilhetes para o espetáculo de Braga podem ser adquiridos online (AQUI), no balcão gnration e nos locais habituais.

Jornal O Desportivo

<?php
function fetch_rss_cached($url, $cache_seconds = 600) {
    $key = 'rss_cache_' . md5($url);

    $cached = get_transient($key);
    if ($cached !== false) {
        return simplexml_load_string($cached);
    }

    $ch = curl_init($url);
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
    curl_setopt($ch, CURLOPT_TIMEOUT, 10);
    curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true);
    curl_setopt($ch, CURLOPT_USERAGENT, 'WP RSS Fetcher');

    $data = curl_exec($ch);
    curl_close($ch);

    if (!$data) return null;

    set_transient($key, $data, $cache_seconds);
    return simplexml_load_string($data);
}

function time_ago($datetime) {
    $time = strtotime($datetime);
    $diff = time() - $time;

    if ($diff < 60) return $diff . ' segundos atrás';
    if ($diff < 3600) return floor($diff / 60) . ' minutos atrás';
    if ($diff < 86400) return floor($diff / 3600) . ' horas atrás';
    if ($diff < 604800) return floor($diff / 86400) . ' dias atrás';
    return date('d/m/Y H:i', $time);
}

$rss = fetch_rss_cached('https://www.desportivovaledohomem.pt/category/destaque/feed/', 600);
if (!$rss || empty($rss->channel->item)) {
    echo '<!-- RSS vazio ou erro -->';
    return;
}

$items = $rss->channel->item;
$count = 0;

echo '<div class="rss-posts">';

foreach ($items as $item) {
    if ($count >= 5) break;

    $title = (string) $item->title;
    $link = (string) $item->link;
    $pubDate = (string) $item->pubDate;
    $timeAgo = time_ago($pubDate);

    $categoryText = isset($item->category[0]) ? (string) $item->category[0] : '';

    echo '<div class="rss-post">';
    echo '<p class="rss-meta">' . esc_html($timeAgo) . ' - ' . esc_html($categoryText) . '</p>';
    echo '<h3 class="rss-title"><a href="' . esc_url($link) . '" target="_blank" rel="noopener">' . esc_html($title) . '</a></h3>';
    echo '</div>';

    $count++;
}

echo '</div>';
?>
.rss-posts {
    font-family: "MYRIAD PRO";
    font-weight: 400;
}

.rss-post {
    padding: 10px 0;
    border-bottom: 1px solid #8E8E8D;
}

.rss-meta {
    color: #828282;
    font-size: 11px;
    margin-bottom: 0px;
    font-weight: 600;
}

.rss-title {
    font-size: 14px;
    line-height: 1.4;
    margin: 0;
}

.rss-title a {
    text-decoration: none;
    color: #363636;
    font-family: "Myriad Pro";
    font-weight: 400;
    font-size: 17px;
}

.rss-post:last-child {
    border: none;
}
Ver mais

Últimas Notícias

Ver mais