ГлавнаяWordpressАвторские Функции → Обрезка текста и/или замена стандартной функции the_excerpt()
GoGetLinks.net

Обрезка текста и/или замена стандартной функции the_excerpt()

Комментариев: 55Обрезка текста и/или замена стандартной функции the_excerpt()
  • отлично! спасибо...таблетка от недоразумения по имени the_excerpt() !!!

    ОТВЕТИТЬ ↓
  • Здраствуйте. Помогите пожалуйста. Всё перепробовал и никак не получается.
    Создал functions.php, в него поместил сейчас функцию вашу. У меня сайт делиться на блоки. Поэтому в индекс.пхп есть код. Собственно тут я и пытаюсь использовать вашу функцию. Сам сайт: http://oursuccess.ru/

    Смотрим на блок "Биография успешных людей". Там я использовал такой код

    <?php global $post;
                     $tmp_post = $post;
                     $myposts = get_posts('numberposts=2&offset=0&category=4');
                     foreach($myposts as $post) : setup_postdata($post);?>
    				<div class="byographyPost">
    					<div class="byographyPostTitle"><a href="<?php the_permalink(); ?>"><?php the_title() ?></div>
    					<div class="byographyPostText" align="justify"><? kama_excerpt(); ?></div>
    				</div>
    
    				  <?php endforeach;  ?>

    Выводится полной новостью до море. Я уже все перепробовал. К слову, шаблон делал сам. Может, где мог ошибиться? Хотя, где.. Это ж только макет.. Так же пробовал использовать плагин excerpt_reloaded. Дал аналогичный результат. Помоги пожалуйста

    ОТВЕТИТЬ ↓
    • Вам, насколько я понял, нужно просто не учитывать тег more, который используется в тексте статьи? Это уже обсуждалось.

      ОТВЕТИТЬ ↓
  • Да если бы. Я всё перепрочитал.
    Видишь, скок я не пробовал менять значение переменной maxchar, ничего не меняется (менял как в самих фукнциях, так и прописывал при выводе функции), т.е. kama_excerpt("maxchar=20");
    Результат один и тот же.Всегда выводит текст до тэга more. Я пробовал его и 1000, и 2: различные вариации. Но не помогло.

    Можно обратиться с этой помощью в icq или какой-нибудь агент. В любой момент, когда Вы свободны. Думаю, вы не хотите, чтобы здесь в комментариях было много "воды", да и на долго разговор затянется, что и Вам и мне не удобно. А так, если найдем ошибку, можно дописать слегка тему, что было бы большим плюсом.

    Я был бы Вам очень благодарен. С нетерпением жду ответа.

    ОТВЕТИТЬ ↓
    • Причем тут maxchar вообще, у вас текст до тега more выводиться без какой-либо обрезки? Не знаю как вы смотрели ссылку, которую я дал, но речь там идет об удалении части кода функции, которая отвечает за вывод текста до тега more, а именно, нужно удалить:

      
      		// для тега <!--more-->
      		if( !$post->post_excerpt && strpos($post->post_content, '<!--more-->') ){
      			preg_match ('/(.*)<!--more-->/s', $out, $match);
      			$out = str_replace("\r", '', trim($match[1], "\n"));
      			$out = preg_replace( "!\n\n+!s", "</p><p>", $out );
      			$out = "<p>". str_replace( "\n", "<br />", $out ) ."</p>";
      			if ($echo)
      				return print $out;
      			return $out;
      		}
      

      П.С. в обратной связи указана моя аська, могли бы туда написать! Включите логику немножко! *rtfm*

      ОТВЕТИТЬ ↓
  • П.С. Просто я пробовал ещё использовать подобный плагин и его работа тоже была некорректна. Вывод был также до тэга more, хотя у товарища, который посоветовал всё работало безупречно

    ОТВЕТИТЬ ↓
  • Спасибо, очень спасло. Необходимо было заменить warrior_excerpt(); ибо он выдавал кракозяблы. Ваше решение оказалось оптимальным. Сделал перепост с ссылкой на ваш сайт. smile

    ОТВЕТИТЬ ↓
    • Рад что пригодилось! А ссылку на репост можно посмотреть?

      ОТВЕТИТЬ ↓
  • Если сделать так

    <?php the_content(''); ?>

    , то ссылка "далее" не выводится. Тоесть по сути WordPress сам обрезает до тега

    <!--more-->

    . За функцию спасибо!

    ОТВЕТИТЬ ↓
  • Хм, а как вместо ... поставить "читать далее"? На 1ой странице показывалось решение, но похоже это еще до изменения скрипта, потому что сейчас там нету такого

    ОТВЕТИТЬ ↓
Форма комментирования

¤ Вставляйте код кнопкой: "Код" (php, js, html, css, sql);
¤ Выделяйте HTML код кнопкой: "Выделить" (<div>);
¤ Перед отправкой комментария используйте "Превью";
¤ Не пишите спам/бред — бесполезно!

Подписаться на комментарии без комментирования:

X

Забыли пароль?