????JFIF??x?x????'
| Server IP : 104.21.30.238 / Your IP : 216.73.216.145 Web Server : LiteSpeed System : Linux premium151.web-hosting.com 4.18.0-553.44.1.lve.el8.x86_64 #1 SMP Thu Mar 13 14:29:12 UTC 2025 x86_64 User : tempvsty ( 647) PHP Version : 8.0.30 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : ON | Sudo : OFF | Pkexec : OFF Directory : /proc/thread-self/./cwd/wp-content/plugins/cherry-plugin-x/includes/shortcodes/ |
Upload File : |
<?php
/**
* Post Grid
*
*/
if (!function_exists('posts_grid_shortcode')) {
function posts_grid_shortcode( $atts, $content = null, $shortcodename = '' ) {
extract(shortcode_atts(array(
'type' => 'post',
'category' => '',
'custom_category' => '',
'tag' => '',
'columns' => '3',
'rows' => '3',
'order_by' => 'date',
'order' => 'DESC',
'thumb_width' => '370',
'thumb_height' => '250',
'lightbox' => 'yes',
'meta' => '',
'excerpt_count' => '15',
'link' => 'yes',
'link_text' => __('Read more', CHERRY_PLUGIN_DOMAIN),
'custom_class' => ''
), $atts));
$spans = $columns;
$rand = rand();
// columns
switch ($spans) {
case '1':
$spans = 'span12';
break;
case '2':
$spans = 'span6';
break;
case '3':
$spans = 'span4';
break;
case '4':
$spans = 'span3';
break;
case '6':
$spans = 'span2';
break;
}
// check what order by method user selected
switch ($order_by) {
case 'date':
$order_by = 'post_date';
break;
case 'title':
$order_by = 'title';
break;
case 'popular':
$order_by = 'comment_count';
break;
case 'random':
$order_by = 'rand';
break;
}
// check what order method user selected (DESC or ASC)
switch ($order) {
case 'DESC':
$order = 'DESC';
break;
case 'ASC':
$order = 'ASC';
break;
}
// show link after posts?
switch ($link) {
case 'yes':
$link = true;
break;
case 'no':
$link = false;
break;
}
global $post;
global $my_string_limit_words;
$numb = $columns * $rows;
// WPML filter
$suppress_filters = get_option('suppress_filters');
$args = array(
'post_type' => $type,
'category_name' => $category,
$type . '_category' => $custom_category,
'tag' => $tag,
'numberposts' => $numb,
'orderby' => $order_by,
'order' => $order,
'suppress_filters' => $suppress_filters
);
$posts = get_posts( $args );
if ( empty( $posts ) ) {
wp_reset_postdata();
return;
}
$i = 0;
$count = 1;
$output_end = '';
$countul = 0;
if ($numb > count($posts)) {
$output_end = '</ul>';
}
$output = '<ul class="posts-grid row-fluid unstyled '. $custom_class .' ul-item-'.$countul.'">';
foreach ( $posts as $j => $post ) {
$post_id = $posts[$j]->ID;
//Check if WPML is activated
if ( defined( 'ICL_SITEPRESS_VERSION' ) ) {
global $sitepress;
$post_lang = $sitepress->get_language_for_element( $post_id, 'post_' . $type );
$curr_lang = $sitepress->get_current_language();
// Unset not translated posts
if ( $post_lang != $curr_lang ) {
unset( $posts[$j] );
}
// Post ID is different in a second language Solution
if ( function_exists( 'icl_object_id' ) ) {
$posts[$j] = get_post( icl_object_id( $posts[$j]->ID, $type, true ) );
}
}
setup_postdata($posts[$j]);
$excerpt = get_the_excerpt();
$attachment_url = wp_get_attachment_image_src( get_post_thumbnail_id($post_id), 'full' );
$url = $attachment_url['0'];
$image = aq_resize($url, $thumb_width, $thumb_height, true);
$mediaType = get_post_meta($post_id, 'tz_portfolio_type', true);
$prettyType = 0;
if ($count > $columns) {
$count = 1;
$countul ++;
$output .= '<ul class="posts-grid row-fluid unstyled '. $custom_class .' ul-item-'.$countul.'">';
}
$output .= '<li class="'. $spans .' list-item-'.$count.'">';
if($lightbox == 'yes') {
if(has_post_thumbnail($post_id) && $mediaType == 'Image') {
$prettyType = 'prettyPhoto-'.$rand;
$output .= '<figure class="featured-thumbnail thumbnail">';
$output .= '<a href="'.$url.'" title="'.get_the_title($post_id).'" rel="' .$prettyType.'">';
$output .= '<img src="'.$image.'" alt="'.get_the_title($post_id).'" />';
$output .= '<span class="zoom-icon"></span></a></figure>';
} elseif ($mediaType != 'Video' && $mediaType != 'Audio') {
$thumbid = 0;
$thumbid = get_post_thumbnail_id($post_id);
$images = get_children( array(
'orderby' => 'menu_order',
'order' => 'ASC',
'post_type' => 'attachment',
'post_parent' => $post_id,
'post_mime_type' => 'image',
'post_status' => null,
'numberposts' => -1
) );
if ( $images ) {
$k = 0;
//looping through the images
foreach ( $images as $attachment_id => $attachment ) {
$prettyType = "prettyPhoto-".$rand ."[gallery".$i."]";
//if( $attachment->ID == $thumbid ) continue;
$image_attributes = wp_get_attachment_image_src( $attachment_id, 'full' ); // returns an array
$img = aq_resize( $image_attributes[0], $thumb_width, $thumb_height, true ); //resize & crop img
$alt = get_post_meta($attachment->ID, '_wp_attachment_image_alt', true);
$image_title = $attachment->post_title;
if ( $k == 0 ) {
if (has_post_thumbnail($post_id)) {
$output .= '<figure class="featured-thumbnail thumbnail">';
$output .= '<a href="'.$image_attributes[0].'" title="'.get_the_title($post_id).'" rel="' .$prettyType.'">';
$output .= '<img src="'.$image.'" alt="'.get_the_title($post_id).'" />';
} else {
$output .= '<figure class="featured-thumbnail thumbnail">';
$output .= '<a href="'.$image_attributes[0].'" title="'.get_the_title($post_id).'" rel="' .$prettyType.'">';
$output .= '<img src="'.$img.'" alt="'.get_the_title($post_id).'" />';
}
} else {
$output .= '<figure class="featured-thumbnail thumbnail" style="display:none;">';
$output .= '<a href="'.$image_attributes[0].'" title="'.get_the_title($post_id).'" rel="' .$prettyType.'">';
}
$output .= '<span class="zoom-icon"></span></a></figure>';
$k++;
}
} elseif (has_post_thumbnail($post_id)) {
$prettyType = 'prettyPhoto-'.$rand;
$output .= '<figure class="featured-thumbnail thumbnail">';
$output .= '<a href="'.$url.'" title="'.get_the_title($post_id).'" rel="' .$prettyType.'">';
$output .= '<img src="'.$image.'" alt="'.get_the_title($post_id).'" />';
$output .= '<span class="zoom-icon"></span></a></figure>';
}
} else {
// for Video and Audio post format - no lightbox
$output .= '<figure class="featured-thumbnail thumbnail"><a href="'.get_permalink($post_id).'" title="'.get_the_title($post_id).'">';
$output .= '<img src="'.$image.'" alt="'.get_the_title($post_id).'" />';
$output .= '</a></figure>';
}
} else {
if(has_post_thumbnail($post_id)) {
$output .= '<figure class="featured-thumbnail thumbnail">';
$output .= '<a href="'.get_permalink($post_id).'" title="'.get_the_title($post_id).'">';
$output .= '<img src="'.$image.'" alt="'.get_the_title($post_id).'" />';
$output .= '</a></figure>';
}
}
$output .= '<div class="clear"></div>';
$output .= '<h5><a href="'.get_permalink($post_id).'" title="'.get_the_title($post_id).'">';
$output .= get_the_title($post_id);
$output .= '</a></h5>';
if ($meta == 'yes') {
// begin post meta
$output .= '<div class="post_meta">';
// post category
$output .= '<span class="post_category">';
if ($type!='' && $type!='post') {
$terms = get_the_terms( $post_id, $type.'_category');
if ( $terms && ! is_wp_error( $terms ) ) {
$out = array();
$output .= '<em>Posted in </em>';
foreach ( $terms as $term )
$out[] = '<a href="' .get_term_link($term->slug, $type.'_category') .'">'.$term->name.'</a>';
$output .= join( ', ', $out );
}
} else {
$categories = get_the_category($post_id);
if($categories){
$out = array();
$output .= '<em>Posted in </em>';
foreach($categories as $category)
$out[] = '<a href="'.get_category_link($category->term_id ).'" title="'.$category->name.'">'.$category->cat_name.'</a> ';
$output .= join( ', ', $out );
}
}
$output .= '</span>';
// post date
$output .= '<span class="post_date">';
$output .= '<time datetime="'.get_the_time('Y-m-d\TH:i:s', $post_id).'">' .get_the_date(). '</time>';
$output .= '</span>';
// post author
$output .= '<span class="post_author">';
$output .= '<em> by </em>';
$output .= '<a href="'.get_author_posts_url(get_the_author_meta( 'ID' )).'">'.get_the_author_meta('display_name').'</a>';
$output .= '</span>';
// post comment count
$num = 0;
$queried_post = get_post($post_id);
$cc = $queried_post->comment_count;
if( $cc == $num || $cc > 1 ) : $cc = $cc.' Comments';
else : $cc = $cc.' Comment';
endif;
$permalink = get_permalink($post_id);
$output .= '<span class="post_comment">';
$output .= '<a href="'. $permalink . '" class="comments_link">' . $cc . '</a>';
$output .= '</span>';
$output .= '</div>';
// end post meta
}
$output .= cherry_get_post_networks(array('post_id' => $post_id, 'display_title' => false, 'output_type' => 'return'));
if($excerpt_count >= 1){
$output .= '<p class="excerpt">';
$output .= wp_trim_words($excerpt,$excerpt_count);
$output .= '</p>';
}
if($link){
$output .= '<a href="'.get_permalink($post_id).'" class="btn btn-primary" title="'.get_the_title($post_id).'">';
$output .= $link_text;
$output .= '</a>';
}
$output .= '</li>';
if ($j == count($posts)-1) {
$output .= $output_end;
}
if ($count % $columns == 0) {
$output .= '</ul><!-- .posts-grid (end) -->';
}
$count++;
$i++;
} // end for
wp_reset_postdata(); // restore the global $post variable
$output = apply_filters( 'cherry_plugin_shortcode_output', $output, $atts, $shortcodename );
return $output;
}
add_shortcode('posts_grid', 'posts_grid_shortcode');
}?>