Sign in to follow this  
Followers 0
deejae

Wordpress - разная реклама в категориях

7 posts in this topic

Собсна по сабжу

Есть у меня андроидный блог с категориями - игры, софт, браузеры, антивирусы, темы....

Хотелось бы показывать в каждой категории соответствующую рекламу в играх игры, в софте - софт и так далее, но не только в категории, а в постах этой категории тоже реклама должна соответствовать категории

Брожу по гуглу ни чего найти не могу.

Посоветуйте плагин или код, лучше код :)

 

<?php if ( !is_category ( '10' ) ) { echo 'код рекламного блока'; } ?>

вот это у меня не работает почему-то

пермалинки настроены на /%postname%/

Share this post


Link to post
Share on other sites

Это размещаем в месте, где надо выводить рекламу

<div class="reklama">
<?php if ( this_my_category( 231 ) ) {echo 'Выводим блок с рекламой для рубрики с ID 231 и её подрубриками';} ?>
</div>

Это размещаем в functions.php

/*Проверка подкатегории на вхождение в категорию */
function this_my_category ($cats){
 function post_is_in_descendant_category( $cats, $_post = null )
 {
  foreach ( (array) $cats as $cat ) {
   $descendants = get_term_children( (int) $cat, 'category');
   if ( $descendants && in_category( $descendants, $_post ) )
    return true;
  }
  return false;
 }
 if ( in_category( $cats ) || post_is_in_descendant_category( $cats ) ) {return true;}
 else {return false;}
}
files and sheynhjk like this

Share this post


Link to post
Share on other sites

поставил код, прописал категории

при заходе в пост, ругается

Fatal error: Cannot redeclare post_is_in_descendant_category() (previously declared in /home2/mrak/public_html/wp-content/themes/siteorigin-north/functions.php:10) in /home2/mrak/public_html/wp-content/themes/siteorigin-north/functions.php on line 10

 

function post_is_in_descendant_category( $cats, $_post = null )

это 10 строка

Share this post


Link to post
Share on other sites

поставил код, прописал категории

при заходе в пост, ругается

Fatal error: Cannot redeclare post_is_in_descendant_category() (previously declared in /home2/mrak/public_html/wp-content/themes/siteorigin-north/functions.php:10) in /home2/mrak/public_html/wp-content/themes/siteorigin-north/functions.php on line 10

 

function post_is_in_descendant_category( $cats, $_post = null )

это 10 строка

Где-то вы два раза объявляете функцию post_is_in_descendant_category. Функцию this_my_category на странице вызываете несколько раз?

Edited by campusboy

Share this post


Link to post
Share on other sites

да, два раза

в сингл пост ставлю два вызова, а вообще надо 6 раз поставить что бы оно знало что из 6 показать, у меня 6 категорий

 

<div class="reklama">
<?php if ( this_my_category( 6 ) ) {echo 'Выводим блок с рекламой для рубрики с ID 6 и её подрубриками';} ?>
<?php if ( this_my_category( 7 ) ) {echo 'Выводим блок с рекламой для рубрики с ID 7 и её подрубриками';} ?>
</div>

Share this post


Link to post
Share on other sites

да, два раза

в сингл пост ставлю два вызова, а вообще надо 6 раз поставить что бы оно знало что из 6 показать, у меня 6 категорий

 

<div class="reklama">

<?php if ( this_my_category( 6 ) ) {echo 'Выводим блок с рекламой для рубрики с ID 6 и её подрубриками';} ?>

<?php if ( this_my_category( 7 ) ) {echo 'Выводим блок с рекламой для рубрики с ID 7 и её подрубриками';} ?>

</div>

 

Попробуйте так. Честно сказать не проверял, в теории даю:

/*Проверка подкатегории на вхождение в категорию */
function post_is_in_descendant_category( $cats, $_post = null ){
  foreach ( (array) $cats as $cat ) {
   $descendants = get_term_children( (int) $cat, 'category');
   if ( $descendants && in_category( $descendants, $_post ) )
    return true;
  }
  return false;
}
function this_my_category ($cats){
 post_is_in_descendant_category( $cats, $_post = null );
 if ( in_category( $cats ) || post_is_in_descendant_category( $cats ) ) {return true;}
 else {return false;}
}
deejae likes this

Share this post


Link to post
Share on other sites
Guest
This topic is now closed to further replies.
Sign in to follow this  
Followers 0

  • Recently Browsing   0 members

    No registered users viewing this page.