%PDF- %PDF-
Mini Shell

Mini Shell

Direktori : /home/gachan/www/wp-content/plugins/jekas_extensions/vc_extended/shortcodes/
Upload File :
Create Path :
Current File : /home/gachan/www/wp-content/plugins/jekas_extensions/vc_extended/shortcodes/vc_grid_blog.php

<?php
add_action('vc_before_init','jekas_add_vc_grid_blog');
if(!function_exists('jekas_add_vc_grid_blog')){
 function jekas_add_vc_grid_blog(){
  vc_map(array(
				'name'=>__( 'Grid Blog', 'jekas' ),
				'base'=> 'vc_grid_blog',
				'icon' => 'jekas fa fa-plus',
				'category' => esc_html__( 'Jekas Options', 'jekas' ),
				'description'=>__( 'Grid container of blog', 'jekas' ),
				'params'=>array(
                   array(
			              'type' => 'loop',
			              'heading' => esc_html__( 'Carousel content', 'jekas' ),
			              'param_name' => 'posts_query',
			              'settings' => array(
				                          'size' => array( 'hidden' => false, 'value' => 10 ),
				                          'order_by' => array( 'value' => 'date' ),
                                                          'post_type'=>array('hidden'=>true,),
				                         ),
			              'description' => esc_html__( 'Create WordPress loop, to populate content from your site.', 'jekas' ),
                   ),
                   array(
                       'type'=>'textfield',
                       'heading'=>__( 'Item Class', 'jekas' ),
                       'param_name'=>'item_class',
                       'value'=>'blog-content',
                   ),
                   array(
                       'type'=>'textfield',
                       'heading'=>__( 'Columns', 'jekas' ),
                       'param_name'=>'columns',
                       'value'=>'6',
                   ),
                   array(
                       'type' => 'column_offset',
                       'heading' => esc_html__( 'Responsiveness', 'jekas' ),
                       'param_name' => 'offset',
                       'group' => esc_html__( 'Width & Responsiveness', 'jekas' ),
                       'description' => esc_html__( 'Adjust column for different screen sizes. Control width, offset and visibility settings.', 'jekas' )
                   ),
                   array(
                       'param_name'   => 'words_trim',
                       'heading'      => esc_html__('Word count per posts','jekas'),
                       'type'         => 'textfield',
                       'value'        => 55,
                   ),
               ),
  ));
  
  }
}

  function vc_grid_blog_render($atts){

      $posts_query = $item_class = $e_class = $columns = $offset = $words_trim = '';
    extract(shortcode_atts(array(
        'posts_query'=>'',
        'item_class'=>'',
        'e_class'=>'',
        'columns'=>4,
        'offset'=>'',
        'words_trim' => 55,
        ),$atts));
    $posts_query.='|post_type:post';
    $span=(!empty($columns) && $columns<=6 && $columns>0) ? (int)(12/$columns) : '3';
    $width='col-sm-'.$span;
    $width = vc_column_offset_class_merge( $offset, $width );
    $width=str_replace('vc_','',$width);
    $output='';
    list( $args, $my_query ) = vc_build_loop_query( $posts_query );
      while($my_query->have_posts() ){
      $my_query->the_post();
      $output.='<div class="'.$width.'" >';
      $output.='<div class="'.$item_class.' blog-content">
                 <div class="entry-header">
                   <div class="blog-image">';
     $post_id=get_the_ID();
     $post=get_post($post_id);
     if(function_exists('rwmb_meta'))
     {
         if(has_post_thumbnail($post_id))
          $image = wp_get_attachment_url(get_post_thumbnail_id($post_id));
         else
             $image = get_template_directory_uri().'/img/post-image.jpg';
        $output.='<img class="img-responsive" src="'.$image.'" alt="">';
     }
      $output.='<div class="more-link">
                    <a href="#"><i class="fa fa-plus"></i></a>
                   </div>
                 </div>';                          
     $post_date=date_create($post->post_date); 
     $output.=' <div class="post-date"><h3>'.date_format($post_date,'d').'<span>'.date_format($post_date,'F').'</span></h3> </div>';
     $output.='</div>
                  <div class="entry-content">';
     $output.='<h3 class="entry-title"><a href="'.esc_url(get_permalink()).'">'.$post->post_title.'</a></h3>';
     $output.='<ul class="entry-meta">';
     $output.='<li><a href="'.esc_url(get_permalink()).'"><i class="fa fa-user"></i> '.esc_html__('By','jekas').': '.$post->post_author.' <span>/</span></a></li>';
     $output.='<li><a href="'.esc_url(get_permalink()).'"><i class="fa fa-tags"></i> '.esc_html__('Deveploment','jekas').' <span>/</span></a></li>';
     $output.='<li><a href="'.esc_url(get_permalink()).'"><i class="fa fa-comments"></i>'.$post->comment_count.' '.esc_html__('Comments','jekas').'</a></li>';
     $output.='</ul>';

     if($words_trim == 0)
     $output.='<p>'.get_the_content(null,true).' </p>';

     else
         $output.='<p>'.wp_trim_words(get_the_content(null,true),$words_trim,'...').'</p>';

     $output.='   </div>
                 </div>
                 </div>';
     
     }

      wp_reset_postdata();
       
    return $output; 
   
  }
add_shortcode('vc_grid_blog','vc_grid_blog_render');
?>

Zerion Mini Shell 1.0