Suporte » Questões avançadas » Condição "if" para em the_excerpt ou the_content

  • Boas amigos!
    Questão 1:
    A questão é simples (a resolução, pelo menos para mim é bem mais complicada) rsrs
    Pretendo que na página “archive.php” em determinada categoria apareça o conteúdo todo e não o excerto(que é o que está por defeito).
    Abaixo o código relativo ao conteúdo:

    <div class="entry">
    <?php if ( get_option('woo_archive_content') == "true" ) { ?>
    <?php the_content(__('Read more...', 'themes')); ?>
    <?php } else { ?>
    <?php the_excerpt(); ?><span class="read-more"><a href="<?php the_permalink() ?>" title="<?php the_title(); ?>" class="btn"><?php _e('Read more', 'themes'); ?></a></span>
    <?php } ?>
    </div>

    Onde e como colocar a condição, resumidamente: se for na categoria “xpto” mostrar o conteúdo completo “the_content” caso contrário continuar a mostrar o the_excerpt (que é o que acontece por default.

    Questão 2:

    Já coloquei a questão de como evitar que o adsense apreça em páginas de uma determinada categoria.
    Mas agora queria, pelos mesmos motivos, que enumerei no post anterior ( que o adsense não aparecesse na sidebar. Isso poderia ser feitoi também com a condição “if”, mas como?

    Agora o sidebar é chamado por:

    <?php get_sidebar(); ?>

    Como coloco uma condição para não chamar este sidebar (que conterá adsense, mas sim um sidebar que criarei sem adesense, por exemplo chamado sidebar2.php?
    Ou há outra situação que se coloca na própria sidebar?
    Abraço e desde já muito obrigado pela colaboração.

    Abraço

A visualizar 1 resposta (de um total de 1)
  • Olá

    Eu faria assim (não significa que seja o mais correcto ou a melhor opção)

    Crias uma variavel de controlo ($isTheOne) e uma condição geral que a “valida” se tiveres, ou não na categoria que pretendes “nomeDaCategoria”

    <?php
    	global $post;
    	$categories = get_the_category($post->ID);
    	$isTheOne = false;
    	if ($categories)
    	{
    		$category_ids = array();
    		foreach($categories as $individual_category)
    			{
    			  if ($individual_category->category_nicename == "nomeDaCategoria") $isTheOne = true;
    			}
    	}
    ?>

    e depois sempre que necessário usas a tua variavel de controlo para validar condições:

    <?php
    	if($isTheOne)
    	{
    		include('fubar.php');
    	} else {
    		include('notFubar.php');}
    ?>

    O que na pratica significa sempre que a categoria for “nomeDaCategoria” a variavel $isTheOne será verdadeira e ele executa a condição em concordancia, aplicando o código que tu la meteres.

    MAC 🙂

A visualizar 1 resposta (de um total de 1)
  • O tópico ‘Condição "if" para em the_excerpt ou the_content’ está fechado a novas respostas.