• DONATE to NULLED!
    Вы можете помочь Форуму и команде, поддержать финансово.
    starwanderer - модератор этого раздела будет Вам благодарен!

Помощь Можно ли с помощью functions.php вставить адсенс код в пост?

Статус
В этой теме нельзя размещать новые ответы.

Danilka71

Постоялец
Регистрация
17 Мар 2009
Сообщения
123
Реакции
8
Вордпресс версия 3.2.1
Можно ли с помощью functions.php вставить код в посты?
А именно нужно вставить код адсенса в пост после определенного количества символов от начала поста?
Я всегда использовал плагин AdSense Integrator, но этот плагин небольшой процент вставляет свой код. Я там в коде поудалял ненужные элементы :)
Но замечаю, что все равно, почемуто, в середине поста код не вставляется.
Поступил следующим образом, в начало поста и в конец сталвяю код прямо в шаблоне вордпреса, а вот в середине не могу....
 
Для середины поста можно например подсчитать количество символов и поделить на два будет середина, дальше от середины искать первую точку будет конец предложения и там вставлять код рекламы. Для плагина и для functions.php код один и тот же, делаем фильтр для the_content
PHP:
<?php
//Plugin Name: Реклама в середине поста

function post_ad($post){
    
    $reklama = '<div>reklama</div>';
    $count = mb_strlen($post);
    //ищем позицию точки после середины текста
    $pos = mb_strpos($post, '.', $count/2);
    //после найденной точки вставляем рекламу
    $post = mb_substr($post, 0, $pos+1).$reklama.mb_substr($post, $pos+1);
    return $post;
}
add_filter('the_content', 'post_ad', 1);

?>
 
А можно этот плагин настроить, чтобы он код выполнял?
Вот это нужно вместо рекламы, это перелинковка:
PHP:
<?php
function show_previous_posts_from_category ($the_post_id, $the_category_id = 0, $post_num) {

  $num = 0;
  global $wpdb;

  $sql = "SELECT wposts.*
  FROM $wpdb->posts wposts
  LEFT JOIN $wpdb->term_relationships ON (wposts.ID = $wpdb->term_relationships.object_id)
  LEFT JOIN $wpdb->term_taxonomy ON ($wpdb->term_relationships.term_taxonomy_id = $wpdb->term_taxonomy.term_taxonomy_id)
  WHERE $wpdb->term_taxonomy.taxonomy = 'category'
  AND $wpdb->term_taxonomy.term_id = '$the_category_id'
  AND wposts.post_status = 'publish'
  AND wposts.post_type = 'post'
  AND wposts.ID < '$the_post_id'
  ORDER BY wposts.ID DESC
  LIMIT $post_num";

  $result = $wpdb->get_results($sql, OBJECT);
  global $post;
?>
<ul>
<?php
  foreach ($result as $post) {
    setup_postdata($post);
?>
  <li><a href="<?php the_permalink() ?>" rel="bookmark"><?php the_title(); ?></a></li>
<?php
    $num++;
    $save_ids[] = $post->ID;
  }
  if ( $num < $post_num || !$result ) {
    $need_more = $post_num-$num;
    $save_ids[] = $the_post_id;
    $save_ids = join (',', $save_ids);
    $more_posts = get_posts("numberposts=$need_more&category=$the_category_id&exclude=$save_ids");
    foreach ($more_posts as $post){
      setup_postdata($post);
?>
  <li><a href="<?php the_permalink() ?>" rel="bookmark"><?php the_title(); ?></a></li>
<?php
    }
  }
?>
</ul>
<?php } ?>

<?php
  $the_cat = get_the_category();
  $the_cat_id = $the_cat[0]->cat_ID;
  show_previous_posts_from_category($post->ID, $the_cat_id, 5);
  wp_reset_query();
?>
 
Статус
В этой теме нельзя размещать новые ответы.
Назад
Сверху