| Server IP : 87.98.154.146 / Your IP : 216.73.216.165 Web Server : Apache System : Linux webm004.cluster126.gra.hosting.ovh.net 6.18.42-ovh-vps-grsec-zfs+ #1 SMP PREEMPT_DYNAMIC Wed Aug 5 15:59:48 CEST 2026 x86_64 User : ohklomafyi ( 52085) PHP Version : 7.4.33 Disable Function : _dyuweyrj4,_dyuweyrj4r,dl MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : ON | Sudo : OFF | Pkexec : OFF Directory : /home/ohklomafyi/www/wp-content/plugins/portfolio-elementor/classes/ |
Upload File : |
<?php
class Powerfolio_Carousel {
public function __construct() {
if ( self::is_carousel_enabled() == true ) {
$this->register_shortcodes();
}
}
public static function is_carousel_enabled() {
return true;
}
public function register_shortcodes() {
add_shortcode("portfolio-carousel", array( __CLASS__, 'get_carousel_shortcode_content') );
}
public static function get_carousel_shortcode_content($atts, $content = null) {
// Security Fix
foreach ($atts as $key => $value) {
$atts[$key] = esc_attr($value);
}
extract(shortcode_atts(array(
//"ids" => ''
"postsperpage" => '',
"showfilter" => '',
"taxonomy" => '',
"type" => '',
"style" => '',
"columns" => '',
"margin" => '',
"linkto" => '',
"hover" => '',
"zoom_effect" => '',
"post_type" => '',
), $atts));
//Enqueue Scripts
wp_enqueue_style( 'owl-carousel-css', plugin_dir_url( __FILE__ ) . '../vendor/owl.carousel/assets/owl.carousel.css' );
wp_enqueue_style( 'owl-carousel-theme-css', plugin_dir_url( __FILE__ ) . '../vendor/owl.carousel/assets/owl.theme.default.min.css' );
wp_enqueue_script( 'owl-carousel-js', plugin_dir_url( __FILE__ ) . '../vendor/owl.carousel/owl.carousel.min.js', array('jquery'), '20151215', true );
//portfolio module
wp_enqueue_script( 'elpug-carousel-portfolio-js', plugin_dir_url( __FILE__ ) . '../assets/js/custom-carousel-portfolio.js', array('jquery'), '20151215', true );
//wp_enqueue_style( 'elpug-carousel-portfolio-css', plugin_dir_url( __FILE__ ) . 'css/elpug_.css' );
if ($hover == '') {
$hover = 'hover5';
}
if(! $post_type || $post_type == '') {
$post_type = 'elemenfolio';
}
$portfolio_type = $type;
if ( $portfolio_type == 'yes') {
$args = array(
'post_type' => $post_type,
'posts_per_page' => 24,
'tax_query' => array(
array(
'taxonomy' => 'elemenfoliocategory',
'field' => 'id',
'terms' => $taxonomy,
),
),
//'p' => $id
);
} else {
$args = array(
'post_type' => $post_type,
'posts_per_page' => 24,
);
}
$portfolioposts = get_posts($args);
if(count($portfolioposts)){
global $post;
$output ='';
$output .='<div class="elpt-portfolio ">';
$output .='<div class="elpt-portfolio-content elpt-portfolio-carousel owl-carousel owl-theme'.$zoom_effect.' '.$hover.'">';
foreach($portfolioposts as $post){
$postid = $post->ID;
$portfolio_image= wp_get_attachment_image_src( get_post_thumbnail_id($post->ID), '' );
$portfolio_image_ready = $portfolio_image[0];
//Fancybox or link
$portfolio_link = get_the_permalink();
$portfolio_link_class = '';
$portfolio_link_rel = '';
if ( $linkto == 'image') {
$portfolio_link = $portfolio_image_ready;
$portfolio_link_class = 'elpt-portfolio-lightbox';
$portfolio_link_rel = 'rel="elpt-portfolio"';
}
$classes = join( ' ', get_post_class($postid) );
$output .='<div class="portfolio-item-wrapper item '.$classes.'">';
$output .='<a href="'.esc_url($portfolio_link) .'" class="portfolio-item '.esc_attr($portfolio_link_class) .'" '.esc_attr($portfolio_link_rel) .' style="background-image: url('.esc_url($portfolio_image_ready).')" title="'.get_the_title().'">';
$output .='<img src="'.esc_url($portfolio_image_ready) .'" title="'.get_the_title().'" alt="'.get_the_title().'"/>';
$output .='<div class="portfolio-item-infos-wrapper" style="background-color:' .';"><div class="portfolio-item-infos">';
$output .='<div class="portfolio-item-title">'.get_the_title().'</div>';
$output .='<div class="portfolio-item-category">';
$terms = get_the_terms( $post->ID , 'elemenfoliocategory' );
if (is_array($terms) || is_object($terms)) {
foreach ( $terms as $term ) :
$thisterm = $term->name;
$output .='<span class="elpt-portfolio-cat">' .esc_html($thisterm) .'</span>';
endforeach;
}
$output .='</div>';
$output .='</div></div>';
$output .='</a>';
$output .='</div>';
}
$output .='</div>';
$output .='</div>';
}
else {
$output ='';
$output .= "nothing found.";
}
//Reset Query
wp_reset_query();
return $output;
}
}
// Start Powerfolio_Carousel
add_action( 'init', function(){
new Powerfolio_Carousel();
});