Current Path : /storage/v11800/affypharma/public_html/wp-content/plugins/auxin-elements/includes/elements/ |
Linux v11800 5.3.0-1023-aws #25~18.04.1-Ubuntu SMP Fri Jun 5 15:19:18 UTC 2020 aarch64
|
Current File : /storage/v11800/affypharma/public_html/wp-content/plugins/auxin-elements/includes/elements/recent-posts-land-style.php |
<?php
/**
* Code highlighter element
*
*
* @package Auxin
* @license LICENSE.txt
* @author averta
* @link http://phlox.pro/
* @copyright (c) 2010-2024 averta
*/
function auxin_get_recent_posts_land_master_array( $master_array ) {
$categories = get_terms( 'category', 'orderby=count&hide_empty=0' );
$categories_list = array( ' ' => __('All Categories', 'auxin-elements' ) ) ;
foreach ( $categories as $key => $value ) {
$categories_list[$value->term_id] = $value->name;
}
// $tags = get_terms( 'post_tag', 'orderby=count&hide_empty=0' );
// $tags_list;
// foreach ($tags as $key => $value) {
// $tags_list["$value->term_id"] = $value->name;
// }
$master_array['aux_recent_posts_land_style'] = array(
'name' => __('Land Style Recent Posts', 'auxin-elements' ),
'auxin_output_callback' => 'auxin_widget_recent_posts_land_style_callback',
'base' => 'aux_recent_posts_land_style',
'description' => __('It adds recent posts in land style.', 'auxin-elements' ),
'class' => 'aux-widget-recent-posts-land',
'show_settings_on_create' => true,
'weight' => 1,
'is_widget' => false,
'is_shortcode' => true,
'category' => THEME_NAME,
'group' => '',
'admin_enqueue_js' => '',
'admin_enqueue_css' => '',
'front_enqueue_js' => '',
'front_enqueue_css' => '',
'icon' => 'aux-element aux-pb-icons-land',
'custom_markup' => '',
'js_view' => '',
'html_template' => '',
'deprecated' => '',
'content_element' => '',
'as_parent' => '',
'as_child' => '',
'params' => array(
array(
'heading' => __('Title','auxin-elements' ),
'description' => __('Recent post title, leave it empty if you don`t need title.', 'auxin-elements'),
'param_name' => 'title',
'type' => 'textfield',
'std' => '',
'value' => '',
'holder' => 'textfield',
'class' => 'title',
'admin_label' => false,
'dependency' => '',
'weight' => '',
'group' => '',
'edit_field_class' => ''
),
array(
'heading' => __('Categories', 'auxin-elements'),
'description' => __('Specifies a category that you want to show posts from it.', 'auxin-elements' ),
'param_name' => 'cat',
'type' => 'aux_select2_multiple',
'def_value' => ' ',
'holder' => '',
'class' => 'cat',
'value' => $categories_list,
'admin_label' => false,
'dependency' => '',
'weight' => '',
'group' => __( 'Query', 'auxin-elements' ),
'edit_field_class' => ''
),
array(
'heading' => __('Number of posts to show', 'auxin-elements'),
'description' => '',
'param_name' => 'num',
'type' => 'textfield',
'value' => '8',
'holder' => '',
'class' => 'num',
'admin_label' => false,
'dependency' => '',
'weight' => '',
'group' => __( 'Query', 'auxin-elements' ),
'edit_field_class' => ''
),
array(
'heading' => __('Image aspect ratio', 'auxin-elements'),
'description' => '',
'param_name' => 'image_aspect_ratio',
'type' => 'dropdown',
'def_value' => '0.75',
'holder' => '',
'class' => 'order',
'value' =>array (
'0.75' => __('Horizontal 4:3' , 'auxin-elements'),
'0.56' => __('Horizontal 16:9', 'auxin-elements'),
'1.00' => __('Square 1:1' , 'auxin-elements'),
'1.33' => __('Vertical 3:4' , 'auxin-elements')
),
'admin_label' => false,
'dependency' => '',
'weight' => '',
'group' => '',
'edit_field_class' => ''
),
array(
'heading' => __('Exclude posts without media','auxin-elements' ),
'description' => '',
'param_name' => 'exclude_without_media',
'type' => 'aux_switch',
'value' => '0',
'class' => '',
'admin_label' => false,
'dependency' => '',
'weight' => '',
'group' => __( 'Query', 'auxin-elements' ),
'edit_field_class' => ''
),
array(
'heading' => __('Exclude custom post formats','auxin-elements' ),
'description' => '',
'param_name' => 'exclude_custom_post_formats',
'type' => 'aux_switch',
'value' => '0',
'class' => '',
'admin_label' => false,
'dependency' => '',
'weight' => '',
'group' => __( 'Query', 'auxin-elements' ),
'edit_field_class' => ''
),
array(
'heading' => __('Exclude quote and link post formats','auxin-elements' ),
'description' => '',
'param_name' => 'exclude_quote_link',
'type' => 'aux_switch',
'value' => '0',
'class' => '',
'admin_label' => false,
'dependency' => array(
'element' => 'exclude_custom_post_formats',
'value' => array('0', 'false')
),
'weight' => '',
'group' => __( 'Query', 'auxin-elements' ),
'edit_field_class' => ''
),
array(
'heading' => __('Order by', 'auxin-elements'),
'description' => '',
'param_name' => 'order_by',
'type' => 'dropdown',
'def_value' => 'date',
'holder' => '',
'class' => 'order_by',
'value' => array (
'date' => __('Date', 'auxin-elements'),
'menu_order date' => __('Menu Order', 'auxin-elements'),
'title' => __('Title', 'auxin-elements'),
'ID' => __('ID', 'auxin-elements'),
'rand' => __('Random', 'auxin-elements'),
'comment_count' => __('Comments', 'auxin-elements'),
'modified' => __('Date Modified', 'auxin-elements'),
'author' => __('Author', 'auxin-elements'),
'post__in' => __('Inserted Post IDs', 'auxin-elements')
),
'admin_label' => false,
'dependency' => '',
'weight' => '',
'group' => __( 'Query', 'auxin-elements' ),
'edit_field_class' => ''
),
array(
'heading' => __('Order', 'auxin-elements'),
'description' => '',
'param_name' => 'order',
'type' => 'dropdown',
'def_value' => 'DESC',
'holder' => '',
'class' => 'order',
'value' =>array (
'DESC' => __('Descending', 'auxin-elements'),
'ASC' => __('Ascending', 'auxin-elements'),
),
'admin_label' => false,
'dependency' => '',
'weight' => '',
'group' => __( 'Query', 'auxin-elements' ),
'edit_field_class' => ''
),
array(
'heading' => __('Only posts','auxin-elements' ),
'description' => __('If you intend to display ONLY specific posts, you should specify the posts here. You have to insert the post IDs that are separated by comma (eg. 53,34,87,25).', 'auxin-elements' ),
'param_name' => 'only_posts__in',
'type' => 'textfield',
'value' => '',
'holder' => '',
'class' => '',
'admin_label' => false,
'dependency' => '',
'weight' => '',
'group' => __( 'Query', 'auxin-elements' ),
'edit_field_class' => ''
),
array(
'heading' => __('Include posts','auxin-elements' ),
'description' => __('If you intend to include additional posts, you should specify the posts here. You have to insert the Post IDs that are separated by comma (eg. 53,34,87,25)', 'auxin-elements' ),
'param_name' => 'include',
'type' => 'textfield',
'value' => '',
'holder' => '',
'class' => '',
'admin_label' => false,
'dependency' => '',
'weight' => '',
'group' => __( 'Query', 'auxin-elements' ),
'edit_field_class' => ''
),
array(
'heading' => __('Exclude posts','auxin-elements' ),
'description' => __('If you intend to exclude specific posts from result, you should specify the posts here. You have to insert the Post IDs that are separated by comma (eg. 53,34,87,25)', 'auxin-elements' ),
'param_name' => 'exclude',
'type' => 'textfield',
'value' => '',
'holder' => '',
'class' => '',
'admin_label' => false,
'dependency' => '',
'weight' => '',
'group' => __( 'Query', 'auxin-elements' ),
'edit_field_class' => ''
),
array(
'heading' => __('Start offset','auxin-elements' ),
'description' => __('Number of post to displace or pass over.', 'auxin-elements' ),
'param_name' => 'offset',
'type' => 'textfield',
'value' => '',
'holder' => '',
'class' => '',
'admin_label' => false,
'dependency' => '',
'weight' => '',
'group' => __( 'Query', 'auxin-elements' ),
'edit_field_class' => ''
),
array(
'heading' => __('Display post media (image, video, etc)', 'auxin-elements' ),
'param_name' => 'show_media',
'type' => 'aux_switch',
'def_value' => '',
'value' => '1',
'holder' => '',
'class' => 'show_media',
'admin_label' => false,
'dependency' => '',
'weight' => '',
'group' => '',
'edit_field_class' => ''
),
array(
'heading' => __('Display post title','auxin-elements' ),
'description' => '',
'param_name' => 'display_title',
'type' => 'aux_switch',
'value' => '1',
'class' => 'display_title',
'admin_label' => false,
'dependency' => '',
'weight' => '',
'group' => '',
'edit_field_class' => ''
),
array(
'heading' => __('Display post meta','auxin-elements' ),
'description' => '',
'param_name' => 'show_info',
'type' => 'aux_switch',
'value' => '1',
'class' => '',
'admin_label' => false,
'weight' => '',
'group' => '',
'edit_field_class' => ''
),
array(
'heading' => __('Display like button','auxin-elements' ),
'description' => sprintf(__('Enable it to display %s like button%s on gride template blog. Please note WP Ulike plugin needs to be activaited to use this option.', 'auxin-elements'), '<strong>', '</strong>'),
'param_name' => 'display_like',
'type' => 'aux_switch',
'value' => '1',
'holder' => '',
'class' => 'display_like',
'admin_label' => false,
'dependency' => '',
'weight' => '',
'group' => '',
'edit_field_class' => ''
),
array(
'heading' => __('Load More Type','auxin-elements' ),
'description' => '',
'param_name' => 'loadmore_type',
'type' => 'aux_visual_select',
'value' => 'scroll',
'class' => 'loadmore_type',
'admin_label' => false,
'dependency' => '',
'weight' => '',
'group' => '' ,
'edit_field_class' => '',
'choices' => array(
'' => array(
'label' => __('None', 'auxin-elements' ),
'image' => AUXIN_URL . 'images/visual-select/load-more-none.svg'
),
'scroll' => array(
'label' => __('Infinite Scroll', 'auxin-elements' ),
'image' => AUXIN_URL . 'images/visual-select/load-more-infinite.svg'
),
'next' => array(
'label' => __('Next Button', 'auxin-elements' ),
'image' => AUXIN_URL . 'images/visual-select/load-more-button.svg'
),
'next-prev' => array(
'label' => __('Next Prev', 'auxin-elements' ),
'image' => AUXIN_URL . 'images/visual-select/load-more-next-prev.svg'
)
)
),
array(
'heading' => __('Excerpt length','auxin-elements' ),
'description' => __('Specify summary content in character.','auxin-elements' ),
'param_name' => 'excerpt_len',
'type' => 'textfield',
'value' => '160',
'holder' => '',
'class' => 'excerpt_len',
'admin_label' => false,
// @TODO: bcz of this dependency its value does not save on VC
'dependency' => array(
'element' => 'show_excerpt',
'value' => '1'
),
'weight' => '',
'group' => '',
'edit_field_class' => ''
),
array(
'heading' => __('Display author or read more', 'auxin-elements'),
'description' => __('Specifies whether to show author or read more on each post.', 'auxin-elements'),
'param_name' => 'author_or_readmore',
'type' => 'dropdown',
'def_value' => 'readmore',
'holder' => '',
'class' => 'author_or_readmore',
'value' =>array (
'readmore' => __('Read More', 'auxin-elements'),
'author' => __('Author Name', 'auxin-elements'),
),
'admin_label' => false,
'dependency' => '',
'weight' => '',
'group' => '',
'edit_field_class' => ''
),
array(
'heading' => __('Extra class name','auxin-elements' ),
'description' => __('If you wish to style particular content element differently, then use this field to add a class name and then refer to it in your css file.', 'auxin-elements' ),
'param_name' => 'extra_classes',
'type' => 'textfield',
'value' => '',
'def_value' => '',
'holder' => '',
'class' => 'extra_classes',
'admin_label' => false,
'dependency' => '',
'weight' => '',
'group' => '',
'edit_field_class' => ''
)
)
);
return $master_array;
}
add_filter( 'auxin_master_array_shortcodes', 'auxin_get_recent_posts_land_master_array', 10, 1 );
/**
* Element without loop and column
* The front-end output of this element is returned by the following function
*
* @param array $atts The array containing the parsed values from shortcode, it should be same as defined params above.
* @param string $shortcode_content The shorcode content
* @return string The output of element markup
*/
function auxin_widget_recent_posts_land_style_callback( $atts, $shortcode_content = null ){
// Defining default attributes
$default_atts = array(
'title' => '', // header title
'cat' => ' ',
'num' => '8',
'only_posts__in' => '', // display only these post IDs. array or string comma separated
'include' => '', // include these post IDs in result too. array or string comma separated
'exclude' => '', // exclude these post IDs from result. array or string comma separated
'posts_per_page' => -1,
'paged' => '',
'offset' => '',
'order_by' => 'date',
'order' => 'DESC',
'size' => '',
'exclude_without_media' => 0,
'exclude_custom_post_formats' => 0,
'exclude_quote_link' => 0,
'exclude_post_formats_in' => array(), // the list od post formats to exclude
'show_media' => true,
'show_excerpt' => true,
'show_content' => true,
'excerpt_len' => '160',
'display_title' => true,
'display_like' => true,
'display_comments' => true,
'display_categories' => true,
'max_taxonomy_num' => '',
'show_info' => true,
'show_date' => true,
'author_or_readmore' => 'readmore',
'display_author_footer' => false,
'display_author_header' => true,
'image_aspect_ratio' => 0.75,
'tag' => '',
'taxonomy_name' => 'category',
'preloadable' => false,
'preload_preview' => true,
'preload_bgcolor' => '',
'extra_classes' => '',
'extra_column_classes' => '',
'custom_el_id' => '',
'template_part_file' => 'theme-parts/entry/post-column',
'extra_template_path' => '',
'universal_id' => '',
'reset_query' => true,
'use_wp_query' => false, // true to use the global wp_query, false to use internal custom query
'wp_query_args' => array(), // additional wp_query args
'loadmore_type' => '', // 'next' (more button), 'scroll', 'next-prev'
'loadmore_per_page' => '',
'base' => 'aux_recent_posts_land_style',
'base_class' => 'aux-widget-recent-posts-land'
);
$result = auxin_get_widget_scafold( $atts, $default_atts, $shortcode_content );
extract( $result['parsed_atts'] );
$acceptedTemplateFiles = apply_filters( 'auxin_recent_posts_land_style_accepted_template_files', [
'theme-parts/entry/post-column',
'theme-parts/entry/post-flip',
'theme-parts/entry/post-land',
'theme-parts/entry/post-tile',
'theme-parts/entry/post',
]);
if ( ! in_array( $template_part_file, $acceptedTemplateFiles ) ) {
return;
}
$display_author_footer = auxin_is_true( $display_author_footer );
$display_author_header = auxin_is_true( $display_author_header );
// specify the post formats that should be excluded -------
$exclude_post_formats_in = (array) $exclude_post_formats_in;
if( $exclude_custom_post_formats ){
$exclude_post_formats_in = array_merge( $exclude_post_formats_in, array( 'aside', 'gallery', 'image', 'link', 'quote', 'video', 'audio' ) );
}
if( $exclude_quote_link ){
$exclude_post_formats_in[] = 'quote';
$exclude_post_formats_in[] = 'link';
}
$exclude_post_formats_in = array_unique( $exclude_post_formats_in );
// --------------
ob_start();
$tax_args = array();
if( ! empty( $cat ) && $cat != " " && ( ! is_array( $cat ) || ! in_array( " ", $cat ) ) ) {
$tax_args = array(
array(
'taxonomy' => $taxonomy_name,
'field' => 'term_id',
'terms' => ! is_array( $cat ) ? explode( ",", $cat ) : $cat
)
);
}
global $wp_query;
if( ! $use_wp_query ){
// create wp_query to get latest items -----------
$args = array(
'post_type' => 'post',
'orderby' => $order_by,
'order' => $order,
'offset' => $offset,
'paged' => $paged,
'tax_query' => $tax_args,
'post_status' => 'publish',
'posts_per_page' => $num,
'ignore_sticky_posts' => 1,
'include_posts__in' => $include, // include posts in this liat
'posts__not_in' => $exclude, // exclude posts in this list
'posts__in' => $only_posts__in, // only posts in this list
'exclude_without_media' => $exclude_without_media,
'exclude_post_formats_in' => $exclude_post_formats_in
);
// ---------------------------------------------------------------------
// add the additional query args if available
if( $wp_query_args ){
$args = wp_parse_args( $args, $wp_query_args );
}
// pass the args through the auxin query parser
$wp_query = new WP_Query( auxin_parse_query_args( $args ) );
}
// widget header ------------------------------
echo wp_kses_post( $result['widget_header'] );
echo wp_kses_post( $result['widget_title'] );
$phone_break_point = 767;
$tablet_break_point = 1025;
$show_comments = true; // shows comments icon
$post_counter = 0;
$column_class = 'aux-blog-land-style aux-ajax-view ' . $extra_column_classes;
$item_class = 'aux-block';
if( ! empty( $loadmore_type ) ) {
$item_class .= ' aux-ajax-item';
}
// automatically calculate the media size if was empty
if( empty( $size ) ){
$column_media_width = auxin_get_content_column_width( 2, 15, $content_width );
$size = array( 'width' => $column_media_width, 'height' => $column_media_width * $image_aspect_ratio );
}
// whether any result was found or not
$have_posts = $wp_query->have_posts();
if( $have_posts ){
echo ! $skip_wrappers ? sprintf( '<div data-element-id="%s" class="%s">', esc_attr( $universal_id ), esc_attr( $column_class ) ) : '';
while ( $wp_query->have_posts() ) {
$wp_query->the_post();
$post = $wp_query->post;
$post_vars = auxin_get_post_format_media(
$post,
array(
'request_from' => 'archive',
'media_width' => $phone_break_point,
'media_size' => $size,
'upscale_image' => true,
'preloadable' => $preloadable,
'preload_preview' => $preload_preview,
'preload_bgcolor' => $preload_bgcolor,
'image_sizes' => 'auto',
'srcset_sizes' => 'auto'
)
);
extract( $post_vars );
$the_format = get_post_format( $post );
$post_classes = 'aux-column-post-entry land-post-style';
$post_classes .= $has_attach ? '': ' aux-no-thumb';
printf( '<div class="%s post-%s">', esc_attr( $item_class ), esc_attr( $post->ID ) );
include auxin_get_template_file( $template_part_file, '', $extra_template_path );
echo '</div>';
}
if( ! $skip_wrappers ) {
// End tag for aux-ajax-view wrapper
echo '</div>';
// Execute load more functionality
if( $wp_query->found_posts > $loadmore_per_page ) {
echo auxin_get_load_more_controller( $loadmore_type );
}
} else {
// Get post counter in the query
echo '<span class="aux-post-count hidden">'. esc_html( $wp_query->post_count ) .'</span>';
echo '<span class="aux-all-posts-count hidden">'. esc_html( $wp_query->found_posts ) .'</span>';
}
}
if( $reset_query ){
wp_reset_query();
}
// return false if no result found
if( ! $have_posts ){
ob_get_clean();
return false;
}
// widget footer ------------------------------
echo wp_kses_post( $result['widget_footer'] );
return ob_get_clean();
}