Подключите нашего Telegram-бота для уведомлений о новых проектах
Доработка похожих записей в Wordpress
Разместить заказ

A
Заказчик
Отзывы фрилансеров:
+ 1
- 0
Зарегистрирован на сайте 14 лет и 9 месяцев
Бюджет:
500 руб
6.28 $ — 5.53 €
Есть код. Его необходимо доработать. Сейчас этот код осуществляет вывод похожих записей в вордпресс по общей совпадающей метке. Нужно дописать код, чтобы выводились первостепенно записи с учетом совпадения всех меток в записи. Далее с учетом большего совпадающего числа меток и по убыванию.
И ещё момент, у нас в коде указывается кол-во выводимых записей (в моём случае 20). Так вот, если кол-во записей по меткам получается меньше заданного кол-ва, то дополнительно к этим имеющимся должны выводиться любые другие записи из любой рубрики до набора общего числа выводимых записей.
<h3 class="related_post_title">Рекомендуе м:</h3>
<?php
$orig_post = $post;
global $post;
$tags = wp_get_post_tags($post->ID);
if ($tags) {
$tag_ids = array();
foreach($tags as $individual_tag) $tag_ids[] = $individual_tag->term_id;
$args=array(
'tag__in' => $tag_ids,
'post__not_in' => array($post->ID),
'posts_per_page'=>20, // Количество записей, которые выводятся
'caller_get_posts'=>1
);
$my_query = new wp_query( $args );
while( $my_query->have_posts() ) {
$my_query->the_post();
?>
<ul class="related_post wp_rp">
<li data-post-type="none"><a rel="external" href="<? the_permalink()?>"><?php the_post_thumbnail(array(150,150)); ?>
<?php the_title(); ?>
</a></li>
</ul>
<? }
}
$post = $orig_post;
wp_reset_query();
?>
И ещё момент, у нас в коде указывается кол-во выводимых записей (в моём случае 20). Так вот, если кол-во записей по меткам получается меньше заданного кол-ва, то дополнительно к этим имеющимся должны выводиться любые другие записи из любой рубрики до набора общего числа выводимых записей.
<h3 class="related_post_title">Рекомендуе м:</h3>
<?php
$orig_post = $post;
global $post;
$tags = wp_get_post_tags($post->ID);
if ($tags) {
$tag_ids = array();
foreach($tags as $individual_tag) $tag_ids[] = $individual_tag->term_id;
$args=array(
'tag__in' => $tag_ids,
'post__not_in' => array($post->ID),
'posts_per_page'=>20, // Количество записей, которые выводятся
'caller_get_posts'=>1
);
$my_query = new wp_query( $args );
while( $my_query->have_posts() ) {
$my_query->the_post();
?>
<ul class="related_post wp_rp">
<li data-post-type="none"><a rel="external" href="<? the_permalink()?>"><?php the_post_thumbnail(array(150,150)); ?>
<?php the_title(); ?>
</a></li>
</ul>
<? }
}
$post = $orig_post;
wp_reset_query();
?>
Разделы:
Опубликован:
29.06.2015 | 15:44 [последние изменения: 27.07.2015 | 16:12]