Добрый день, уважаемые разработчики.
Прошу помощи по созданию шаблона для вывода топовых продуктов.
Что необходимо поменять, в настройках кастомного шаблона (кроме названия), чтобы не было ошибки вывода записей товара.
Создал свой шаблон
Назвал его products-tobr-block-products
ТИП ПОСТА-tobr-НАЗВАНИЕ ШАБЛОНА
Дальше немного подвис...
1. Название файла указали верно
2. В параметрах шорткода надо указать название шаблона (templates="block-products")
3. В параметрах шорткода надо указать тип объекта рейтинга, в вашем случае type="products"
Дальше все должно работать, только надо будет стили править
Потом можно открыть файл стилей плагина, и если вы хотите сделать вывод аналогичный шаблону block для записей (post), то найдите там раздел:
/*
Контент блок
*/
скопируйте его весь и замените там
.tobr-content.post-block
на
.tobr-content.products-block-products
p.s. но что бы было меньше путаницы лучше назвать файл шаблона
products-tobr-block.php
т.е. [ тип поста ]-tobr-[ шаблон ].php
и тогда у шорткода указываем
templates="block"
type="products"
и в стилях меняем на .tobr-content.products-block
Благодарю. Все сделал именно по такому алгоритму.
Шорткод [top_object_rating type="products" templates="block-products"]
Ошибка была в том, (даже не ошибка) что не было продуктов с рейтингом))) Т.е. ни одно лайкнутого продукта. Поэтому выдавало "Ошибка получения записей"
Для развития проекта оставлю тут решение проблемы.
Код шаблона для вывода списка товаров магазина WP-Recall.
Шорткод [top_object_rating type="products" templates="block-products" limit="3"]
Код шаблона:
<?php
global $top_object, $position, $tobr_per_page;
$user_id = $top_object["object_author"];
$rating = $top_object["total_rating"];
$post_id = $top_object["object_id"];
$user_info = get_userdata($user_id);
$post = get_post($post_id);
?>
<div class="tobr-product" <?php echo $attrWidth; ?> id="product-<?php the_ID(); ?>">
<div class="tobr-product-img">
<?php echo get_the_post_thumbnail( $post_id, 'medium', array('class' => 'alignleft') ); ?>
</div>
<div class="product-content">
<div class="tobr-title">
<a href="<?php echo get_permalink($post->ID); ?>" title="<?php echo $post->post_title; ?>" target="_blank"><?php echo $post->post_title; ?></a>
</div>
<div class="product-metas">
<div class="tobr-product-meta">
<div class="tobr-product-minipost">
<span class="tobr-meta-content-box">
<span class="tobr-meta-content">
<i class="rcli fa-info rcl-icon" style="min-width: 20px;padding: 7px 5px;font-size: 13px;float: left;"></i>
<?php rcl_product_excerpt($post->ID); ?>
</span>
</span>
</div>
<div class="tobr-product-terms">
<?php echo rcl_get_product_terms($post->ID); ?>
</div>
<div class="tobr-rating">
<?php echo rcl_get_html_post_rating($post->ID,$post->post_type); ?>
</div>
<div class="product-cart-box">
<?php echo rcl_get_cart_box($post->ID,
array(
'variations' => false,
'quantity' => false,
)); ?>
</div>
</div>
</div>
</div>
</div>
Css:
.alignleft.wp-post-image {
width: 162px;
}
.tobr-product {
border: 1px solid #dee5eb;
padding: 9px 9px 0 9px;
margin: 0 0 9px;
border-radius: 3px;
}
.product-excerpt {
margin: 0 0 7px 0;
font-size: 13px;
}
.tobr-title {
font-size: 18px;
margin: 0 0 15px 0;
}
.tobr-head {
margin: 9px 0;
font-size: 13px;
}
.tobr-rating,
.product-cart-box {
overflow: hidden;
}
Результат: