Перейти к содержимому

Реферальная программа Мегаплана


Правильный тег "more"

#1 shaddad

shaddad
  • Пользователь
  • 42 сообщений
  • Репутация: 0
0

Отправлено 06 Июнь 2012 - 22:19

У меня тег more ведёт на страницу самого поста, в то время как правильные теги ведут на этот же пост, только экран спускается до того места, где стоит сам тег. Как это исправить?

Вот отрезок кода с кнопкой "Читать далее":

<div class="post-content">
		  <?php $post_excerpt = of_get_option('post_excerpt'); ?>
		<?php if ($post_excerpt=='true' || $post_excerpt=='') { ?>
			<div class="excerpt"><?php $content = get_the_content(); echo my_string_limit_words($content,1000);?></div>
		  <?php } ?>
		  <a href="<?php the_permalink() ?>" class="button"><span class="left"><span class="right"><span class="middle"><?php _e('Далее...', 'theme1469'); ?></span></span></span></a>
		</div>

 

 

  • 0

#2 c0ns0l3

c0ns0l3
  • Пользователь
  • 264 сообщений
  • Репутация: 49

Отправлено 09 Июнь 2012 - 16:22

Линк на сайт плз.
  • 0

#3 shaddad

shaddad
    Topic Starter
  • Пользователь
  • 42 сообщений
  • Репутация: 0

Отправлено 10 Июнь 2012 - 23:53

На денвере.


  • 0

#4 c0ns0l3

c0ns0l3
  • Пользователь
  • 264 сообщений
  • Репутация: 49

Отправлено 11 Июнь 2012 - 06:13

Ну смотри тогда...
Проверь какой линк тебе генерит the_permalink(), уверен что-то типа сайт/бла-бла-бла#more-блабла.
То есть тебе нужно взять в переменную ссылку ссылку, и обрезать кусок "#more-***"


  • 0

#5 shaddad

shaddad
    Topic Starter
  • Пользователь
  • 42 сообщений
  • Репутация: 0

Отправлено 18 Июнь 2012 - 23:58

Это оно?

  if ( $more ) {
   $output .= '<span id="more-' . $post->ID . '"></span>' . $content[1];
  } else {
   if ( ! empty($more_link_text) )
    $output .= apply_filters( 'the_content_more_link', ' <a href="' . get_permalink() . "#more-{$post->ID}" class="more-link">$more_link_text</a>", $more_link_text );
   $output = force_balance_tags($output);
  }

  • 0

#6 c0ns0l3

c0ns0l3
  • Пользователь
  • 264 сообщений
  • Репутация: 49

Отправлено 19 Июнь 2012 - 07:04

shaddad, Уху, именно оно.

Оставь просто get_permalink без #more-***.

Идея в чем, когда вставляешь в пост тэг <!--more--> и применяется фильтр the_content, этот тег привращается в якорь с ID #more-{post_ID} и соответственно more_link получается типа {post_name}#more-{post_ID} и когда ты переходишь по такой ссылке - тебя прокручивает на данный якорь.

Поэтому у тебя 2 выхода:
1) править фильтр the_content (геморно)
2) править ссылку на пост (проще, особенно в твоем случаи она генерится автоматом а не через ф-цию the_content() )
  • 0


Оформление форума – IPBSkins.ru