Этот шорткод всегда находится в верхней части содержимого, независимо от того, где он размещен на странице. Как его можно отобразить там, где он размещен?
Я пытался заменить echo
операторы с return
, как описано в предыдущих сообщениях, но это нарушает сценарий.
Короткий код извлекает 1 продукт из каждого термина атрибута продукта, затем отображает изображение продукта и имя термина атрибута.
function navigationProdFromEachLimit() {
$factwpslug = "/charts/?fwp_chart_type=";
$number = '5'; //LIMIT THE NUMBER OF RETURNED CHART TYPES
$args = array(
'number' => $number,
'orderby' => 'count',
'order' => 'DESC',
'hide_empty' => false,
'include' => $ids,
);
$product_categories = get_terms( 'pa_chart-type', $args );
$count = count($product_categories);
if ( $count > 0 ){
foreach ( $product_categories as $product_category ) {
$args = array(
'posts_per_page' => 1,
'tax_query' => array(
'relation' => 'AND',
array(
'taxonomy' => 'pa_chart-type',
'field' => 'slug',
'terms' => $product_category->slug
)
),
'post_type' => 'product',
'orderby' => 'title,'
);
$products = new WP_Query( $args );
while ( $products->have_posts() ) {
$products->the_post();
?>
<div class ="chart-type-nav <?php echo $product_category->slug ?>">
<a class="nav-thumb" href="<?php echo $factwpslug . $product_category->slug ?>">
<div class ="img-contain"> <?php the_post_thumbnail(); ?></div>
</a>
<?php
echo '<span class="nav-title"><a href="'.$factwpslug . $product_category->slug . '">' . $product_category->name . '</a></span>';
?>
</div>
<?php
}
}
}
}
add_shortcode('navprodealimit', 'navigationProdFromEachLimit');