XylotrechusZ
<?php
if( ! defined( 'ABSPATH' ) ) { exit; } // Exit if accessed directly
/**
* These functions shows a number of posts related to the currently displayed post.
* Relations are defined by tags: if post tags match, the post will be displayed as related
*/
global $avia_config;
$rp = avia_get_option( 'single_post_related_entries' );
if( ! isset( $avia_config['related_posts_config'] ) )
{
$avia_config['related_posts_config'] = array(
'columns' => 8,
'post_class' => 'av_one_eighth no_margin ',
'image_size' => 'square',
'tooltip' => true,
'title_short' => false
);
if( $rp == 'av-related-style-full' )
{
$avia_config['related_posts_config'] = array(
'columns' => 6,
'post_class' => 'av_one_half no_margin ',
'image_size' => 'square',
'tooltip' => false,
'title_short' => true
);
}
}
if( $rp == 'disabled' )
{
return;
}
extract( $avia_config['related_posts_config'] );
$is_portfolio = false; //avia_is_portfolio_single();
$related_posts = false;
$this_id = $post->ID;
$slidecount = 0;
$postcount = ($columns * 1);
$format = '';
$fake_image = '';
$tags = wp_get_post_tags( $this_id );
if( ! empty( $tags ) && is_array( $tags ) )
{
$tag_ids = array();
foreach( $tags as $tag )
{
if( $tag->slug != 'portrait' && $tag->slug != 'landscape' )
{
$tag_ids[] = (int)$tag->term_id;
}
}
if( ! empty( $tag_ids ) )
{
$my_query = get_posts(
array(
'tag__in' => $tag_ids,
'post_type' => get_post_type( $this_id ),
'showposts' => $postcount,
'ignore_sticky_posts' => 1,
'orderby' => 'rand',
'post__not_in' => array( $this_id )
) );
if( ! empty( $my_query ) )
{
$extra = 'alpha';
$count = 1;
$output = '';
//create seperator
$output .= "<div class='related_posts clearfix {$rp}'>";
$output .= '<h5 class="related_title">' . __( 'You might also like', 'avia_framework' ) . '</h5>';
$output .= '<div class="related_entries_container">';
foreach( $my_query as $related_post )
{
$related_posts = true;
$slidecount ++;
$format = '';
if( $is_portfolio )
{
$format = 'portfolio';
}
if( ! $format )
{
$format = get_post_format( $related_post->ID );
}
if( ! $format )
{
$format = 'standard';
}
if( ! empty( $title_short ) )
{
$related_post->post_title = wp_trim_words( avia_wp_get_the_title( $related_post->ID ), 17 );
}
$post_thumbnail_id = get_post_thumbnail_id( $related_post->ID );
$post_thumb = get_the_post_thumbnail( $related_post->ID, $image_size, array( 'title' => esc_attr( get_the_title( $post_thumbnail_id ) ) ) );
$image = $post_thumb ? $post_thumb : "<span class='related_posts_default_image'>{image}</span>";
$fake_image = $post_thumb ? $post_thumb : $fake_image;
$extra_class = $post_thumb ? '' : 'related-format-visible';
$parity = $slidecount % 2 ? 'Odd' : 'Even';
$insert_tooltip = $tooltip == true ? 'data-avia-related-tooltip="' . esc_attr( avia_wp_get_the_title( $related_post->ID ) ) . '"' : '';
$output .= "<div class='{$post_class} $extra relThumb relThumb{$count} relThumb{$parity} post-format-{$format} related_column'>";
$output .= "<a href='" . get_permalink( $related_post->ID ) . "' class='relThumWrap noLightbox' title='" . esc_attr( avia_wp_get_the_title( $related_post->ID ) ) . "'>";
$output .= "<span class='related_image_wrap' {$insert_tooltip}>";
$output .= $image;
$output .= "<span class='related-format-icon {$extra_class}'>";
$output .= "<span class='related-format-icon-inner' " . av_icon_string( $format ) . "></span>";
$output .= '</span>';
$output .= '</span>';
$output .= '<strong class="av-related-title">' . avia_wp_get_the_title( $related_post->ID ) . '</strong>';
$output .= apply_filters( 'avf_related_post_loop', '', $related_post );
$output .= '</a>';
$output .= '</div>';
$count++;
$extra = '';
if( $count == count( $my_query ) )
{
$extra = 'omega';
}
}
$output .= '</div>';
$output .= '</div>';
$output = str_replace( '{image}', $fake_image, $output );
if( $related_posts )
{
echo $output;
}
}
wp_reset_query();
}
}