Реклама на сайте Advertise with us

Помогите отредактировать скрипт для WP

Расширенный поиск по форуму
 
Новая тема Новая тема   
Автор
Поиск в теме:



С нами с 22.01.04
Сообщения: 140
Рейтинг: 58

Ссылка на сообщениеДобавлено: 02/07/08 в 23:24       Ответить с цитатойцитата 

Вот здесь
хttp://blog.trampampam.ru/wordpress/neskolko-postingov-tekuschey-kategorii/
взял пару строк кода, который в самом простом виде заменяет плагин Similar Posts и ему подобные (выводит список постов из той же категории):
Код:
<?php
$mycat=get_the_category();
$mycat=$mycat[0];
  $posts = get_posts('numberposts=5&category='.$mycat->cat_ID);
  foreach($posts as $post) icon_confused.gif>
    <li><a
    href="<?php the_permalink(); ?>"><?php the_title();?></a></li>
    <?php
  endforeach;
?>

добавляется это в файл single.php
Все вроде работает нормально, но этот скрипт помимо других постов из категории, выводит линк того самого поста, где он находится. Т.е. пост про Васю - в списке может быть линк на этот же пост про Васю.
Товарищи кодеры помогите решить два вопроса:
1. не показывать тот же самый пост в списке;
2. сделать вывод списка рандомным (сейчас он выводит просто последние 5 постов)
Сделать это явно очень просто, но для меня невозможно ввиду незнания php. Всем заранее спасибо.

0
 



С нами с 19.11.06
Сообщения: 2295
Рейтинг: 345

Ссылка на сообщениеДобавлено: 03/07/08 в 01:20       Ответить с цитатойцитата 

Цитата:
<?php
$mycat=get_the_category();
$mycat=$mycat[0];
$posts = get_posts('numberposts=5&offset=1&category='.$mycat->cat_ID);
foreach($posts as $post) : ?>
<li><a
href="<?php the_permalink(); ?>"><?php the_title();?></a></li>
<?php
endforeach;
?>

Будет выводить последние 5 постов категории, без текущего поста.
А если нужно, чтобы был вывод не просто предыдущих постов, а случайных, то вот как-то так icon_smile.gif :
Цитата:
<?php
$mycat=get_the_category();
$mycat=$mycat[0];
$posts = get_posts('numberposts=5&orderby=RAND()&category='.$mycat->cat_ID);
foreach($posts as $post) : ?>
<li><a
href="<?php the_permalink(); ?>"><?php the_title();?></a></li>
<?php
endforeach;
?>

Строим Луна-парки с блэкджеком и шлюхами. Дорого.

3
 



С нами с 22.01.04
Сообщения: 140
Рейтинг: 58

Ссылка на сообщениеДобавлено: 03/07/08 в 07:38       Ответить с цитатойцитата 

Большущее спасибо smail54.gif Почти получилось. Теперь рандомом выводит, а вот линк того же поста все равно в списке присутствует.
Как от него избавиться?

0
 



С нами с 20.01.03
Сообщения: 18003
Рейтинг: 9760


Передовик Master-X (01.03.2005) Передовик Master-X (16.03.2005) Передовик Master-X (16.10.2016) Передовик Master-X (01.11.2016) Передовик Master-X (16.11.2016) Ветеран трепа Master-X (01.12.2016)
Ссылка на сообщениеДобавлено: 03/07/08 в 08:06       Ответить с цитатойцитата 

numberposts=5&offset=1&orderby=RAND()

3
 



С нами с 22.01.04
Сообщения: 140
Рейтинг: 58

Ссылка на сообщениеДобавлено: 03/07/08 в 08:25       Ответить с цитатойцитата 


Не работает. Я так понял offset=1 удаляет первую строку? Но в списке, линк, который нужно удалить не всегда идет первым.

0
 



С нами с 11.06.03
Сообщения: 1266
Рейтинг: 950


Передовик Master-X (01.01.2008)
Ссылка на сообщениеДобавлено: 03/07/08 в 08:51       Ответить с цитатойцитата 

Надо как-то так:
Код:
<?php
$thePostID=the_ID();
$mycat=get_the_category();
$mycat=$mycat[0];
$posts = get_posts('numberposts=6&orderby=RAND()&category='.$mycat->cat_ID);
$counter=0;
foreach($posts as $post) :
if (($counter<5) && ($thePostID != $post->ID)) :?>
<li><a
href="<?php the_permalink(); ?>"><?php the_title();?></a></li>
<?php
$counter++;
endif;

endforeach;
?>

Смотри аналоги функций. Я вордпресса не знаю.

3
 
Новая тема Новая тема   

Текстовая реклама в форме ответа
Заголовок и до четырех строчек текста
Длина текста до 350 символов
Купить рекламу в этом месте!


Перейти:  



Спонсор раздела Стань спонсором этого раздела!

Реклама на сайте Advertise with us

Опросы

Рецепт новогоднего блюда 2022



Обсудите на форуме обсудить (11)
все опросы »