<?php include get_template_directory() . "-child/includes/complementar.php"; if (!empty($imagemCategoria)) { echo '<div id="logo-area-conteudo"><img src="' . $imagemCategoria . '" alt="' . $tituloCategoria . '" title="' . $tituloCategoria . '" width="200"></div>'; } echo '<ul class="nav nav-tabs nav-stacked menu-principal-area-conteudo">'; /*================================================================================================================= '* Retorna o id da tag acessada. '=================================================================================================================*/ if ($aryTags) { foreach ($aryTags as $tag) { /*================================================================================================================= '* Destaca a tag do post acessado. '=================================================================================================================*/ $cssLinkAcessado = null; if ($tag->tag_slug == $tagSlugAcessada && !$boolItemMenuHistorico) { $cssLinkAcessado = $cssDestacarLink . " " . $cssColorCategoria; } else { if ($tag->tag_slug == "historico" && $boolItemMenuHistorico) { $cssLinkAcessado = $cssDestacarLink . " " . $cssColorCategoria; } } echo '<li><a class="' . $cssLinkCategoria . " " . $cssLinkAcessado . '" href="' . retornaUrlTag($tag->tag_slug, $urlCategorias) . '">' . $tag->tag_name . '</a></li>'; } } echo '</ul>';
function padraoRedirecionamentoSite($pIdTagAcessada, $pIdCategoriaPrincipalAcessada) { //> Url de categorias $urlCategorias = get_site_url() . retornaUrlComplementarCategorias(); //> Retorna objeto conforme o id da tag informada if (!empty($pIdTagAcessada)) { //> Objeto <<tag>> acessada <get_the_tags> $args = array('include' => $pIdTagAcessada, 'hide_empty' => 0); $objTerms = get_terms('post_tag', $args); /* ================================================================================================================= '* Não aplica redirecionamento para as <<áreas de conteúdo: SLUG_AREAS_CONTEUDO>>, informada no <<sp-config.php>> '================================================================================================================= */ if (in_array($objTerms[0]->slug, unserialize(SLUG_AREAS_CONTEUDO))) { return null; } /* ================================================================================================================= '* Aplica redirecionamento na existência de apenas 1 post vinculado ao item de menu/tag '================================================================================================================= */ $args = array('post_type' => 'post', 'post_status' => 'publish', 'orderby' => 'menu_order', 'cat' => $pIdCategoriaPrincipalAcessada, 'tag_id' => $objTerms[0]->term_id, 'order' => 'asc'); $query = new WP_Query($args); if ($query->have_posts()) { if ($query->post_count == 1) { //> retorna total de posts $urlDestino = $urlCategorias . $query->post->post_name; //> Redireciona para o único post vinculado a tag. wp_redirect($urlDestino, 302); } } return null; } /* ================================================================================================================= '* Retorna a relação de tags, com posts relacionadas a categoria principal informada. '================================================================================================================= */ $aryTags = get_category_tags($pIdCategoriaPrincipalAcessada); if (!empty($aryTags)) { /* ================================================================================================================= '* Com base no id da primeira tag retornada e na categoria principal, retornar os posts relacionados. '================================================================================================================= */ $args = array('post_type' => 'post', 'post_status' => 'publish', 'orderby' => 'menu_order', 'cat' => $pIdCategoriaPrincipalAcessada, 'tag_id' => $aryTags[0]->tag_id, 'order' => 'asc'); $query = new WP_Query($args); $urlDestino = null; if ($query->have_posts()) { /* ================================================================================================================= '* Se o total de posts retornados for igual a 1, então redirecionar para o post, caso contrário listar todos os '* post vinculados. '================================================================================================================= */ if ($query->post_count == 1) { //> retorna total de posts $urlDestino = $urlCategorias . $query->post->post_name; } else { $urlDestino = retornaUrlTag($aryTags[0]->tag_slug, $urlCategorias); } //> Redireciona if (!empty($urlDestino)) { wp_redirect($urlDestino, 302); } } } }