Wordpress аналог auto_more

123
SeVlad
На сайте с 03.11.2008
Offline
1609
#11
DiAksID:
"спецы" по WP радуют регулярно

как и "спецы" с идиосинкразией к ВП :

DiAksID:
какой-н класс
Amigochief:
и куда именно это вставить?
DiAksID:
а хз

Действительно, код можно чуток и причесать. И явно $content = $content - лишнее, но так ли это критично\опасно? Чем? Расскажите-ка, спецы.

ЗЫ. Никак не являюсь спецом по ПХП. Тем более не знаю ни о каких парадигмах ООП, но в общих чертах всё понятно.

Делаю хорошие сайты хорошим людям. Предпочтение коммерческим направлениям. Связь со мной через http://wp.me/P3YHjQ-3.
Amigochief
На сайте с 30.06.2008
Offline
100
#12

так может кто-то всё таки подскажет, плагин то работает, но плывёт шаблон...

вот тут, правая часть спустилась вниз на новости, и так на любом шаблоне(3 проверил)

SeVlad
На сайте с 03.11.2008
Offline
1609
#13
Amigochief:
плывёт шаблон...

FireBug в руки или, если в хроме - F12 (вроде бы ;) )

Amigochief
На сайте с 30.06.2008
Offline
100
#14
SeVlad:
FireBug в руки или, если в хроме - F12 (вроде бы ;) )

эсли шаблоны плывут только тогда когда включается плагин, то всё таки дело не в шаблонах, наверное..

DiAksID
На сайте с 02.08.2008
Offline
236
#15
Amigochief:
эсли шаблоны плывут только тогда когда включается плагин, то всё таки дело не в шаблонах, наверное..

похоже плагин, укорачивая $content, иногда обрезает какие то теги посередине, т.е. генерит незакрытые теги. strip_tag не справляется, что странно. хотя бывает что броузер исправляет кривой код и необрезанное все смотрится вроде как норм, а вот strip_tag не распознаёт кривые теги и оставляет их.

глазами посмотрите в коде, что там внутри div-а лажает...

show must go on !!!...
Amigochief
На сайте с 30.06.2008
Offline
100
#16

Всё, проблема решена, огромное спасибо DiAksID

VHS-1980
На сайте с 21.05.2010
Offline
91
#17
$content = $content;

Большое спасибо за поднятие настроения.

C
На сайте с 04.02.2005
Offline
291
#18

VHS-1980, Возможно это была попытка временного хранения , а потом ее не убрали...

В ВП принято $post сохранять... только вот... редко видел, когда его восстанавливали.

А может это ... временная задержка, пока строка скопируется сама в себя...

DiAksID
На сайте с 02.08.2008
Offline
236
#19
Chukcha:
VHS-1980, Возможно это была попытка временного хранения , а потом ее не убрали...
В ВП принято $post сохранять... только вот... редко видел, когда его восстанавливали.
А может это ... временная задержка, пока строка скопируется сама в себя...

почти наверняка у первоисточника там было что то вроде:


$content = '<div>' . $content . '...</div>';
echo $content;

но кто то из промежуточных умельцев очень любит бестолковую разбивку и наваял "прогрессивно-красивое":


$content = $content;
echo "<div>";
echo $content;
echo "...";
echo "</div>";

подогнал под корявенький стиль WP ядра...

Sentoro
На сайте с 18.03.2007
Offline
149
#20

Я обрезаю посты и вывожу миниатюры без всяких плагинов, тупо и просто:

в файл functions.php для превью:


function dp_attachment_image($postid=0, $size='thumbnail', $attributes='') {
if ($postid<1) $postid = get_the_ID();
if ($images = get_children(array(
'post_parent' => $postid,
'post_type' => 'attachment',
'numberposts' => 1,
'post_mime_type' => 'image',)))
foreach($images as $image) {
$attachment=wp_get_attachment_image_src($image->ID, $size);
?><img src="<?php echo $attachment[0]; ?>" <?php echo $attributes; ?> /><?php
}
}

еще одна ф-я для удаления тегов и точек:

function dp_clean($excerpt, $substr=0) {
$string = strip_tags(str_replace('[]', '', $excerpt));
if ($substr>0) {
$string = substr($string, 0, $substr);
}
return $string;
}

в этом же файле добавим фильтры:


function custom_excerpt_length( $length ) {
return 18;
}
add_filter( 'excerpt_length', 'custom_excerpt_length', 999 );

function new_excerpt_more($excerpt) {
return str_replace('[...]', '...', $excerpt);
}
add_filter('wp_trim_excerpt', 'new_excerpt_more');

теперь там где вывожу посты (в файле категорий или на странице) через query_posts:


<?php query_posts($query_string.'&cat=212'); ?> // ID категории, можно несколько
<?php

if (have_posts()) :
$i = 0;
while (have_posts()) : the_post() ;
if($i == 4) // количество постов
break;
$i++;
?>

<div class="thumb">
<?php dp_attachment_image($post->ID, 'thumbnail', 'alt="' . $post->post_title . '"' . ' width="65"'. ' align="left"'); ?>

// настройки миниатюры картинки

<h2><a class="thumb" href="<?php the_permalink(); ?>"><?php the_title(); ?></a></h2>

<p class="th_b"><?php echo dp_clean($post->post_content);echo '...'; ?></p> // или можно написать просто <?php the_excerpt(); ?>
</div>

<?php endwhile; ?><?php endif; ?><?php wp_reset_query(); ?>

вот и все.

Продается СДЛ на тему инвестирования (http://www.telderi.ru/ru/viewsite/903457)
123

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий