コード例 #1
0
    $aryDadosCategoria = retornaLayoutCategoriaPrincipal($idCategoriaPrincipalAcessada);
    if ($aryDadosCategoria) {
        $imagemCategoria = $aryDadosCategoria["imagem"];
        $cssDestacarLink = "destacar-link-projeto";
        $cssLinkCategoria = $aryDadosCategoria["link_css"];
        $cssColorCategoria = $aryDadosCategoria["color_css"];
        $tituloCategoria = $aryDadosCategoria["titulo"];
    }
    /* =================================================================================================================	
       '* Retorna a relação de <tags>, relacionada a categoria principal para a exibição do <<menu lateral>>
       '================================================================================================================= */
    $aryTags = get_category_tags($idCategoriaPrincipalAcessada);
}
//> Retorna Url Atual completa
$urlAtual = retornaUrlAtual();
$urlCategorias = get_site_url() . retornaUrlComplementarCategorias();
/* =================================================================================================================	
  '* Se o conteúdo acessado for post, retorna o slug da tag acessada.
  '================================================================================================================= */
$tagSlugAcessada = null;
$boolItemMenuHistorico = false;
$posttags = array();
$objImagem = null;
$resumo = null;
$palavras_chaves_post = null;
if (is_single()) {
    $posttags = get_the_tags(get_the_ID());
    if ($posttags) {
        $tagSlugAcessada = $posttags[0]->slug;
    }
    if ($tagSlugAcessada == "agenda") {
コード例 #2
0
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);
            }
        }
    }
}