NOX-ROOT-MARAZ Manager v2
PHP 8+ Secure
/
home
/
xiedrke
/
malino
/
wp-content
/
plugins
/
wedesigntech-portfolio
/
shortcodes
/
Name
Size
Perms
Actions
📄 shortcodes-singlepage.php
50,808 B
0644
Edit
|
Chmod
|
Delete
Editing: shortcodes-singlepage.php
<?php if( !class_exists('WDTPortfolioSinglePageShortcodes') ) { class WDTPortfolioSinglePageShortcodes { /** * Instance variable */ private static $_instance = null; /** * Instance * * Ensures only one instance of the class is loaded or can be loaded. */ public static function instance() { if ( is_null( self::$_instance ) ) { self::$_instance = new self(); } return self::$_instance; } function __construct() { add_shortcode ( 'wdt_sp_featured_image', array ( $this, 'wdt_sp_featured_image' ) ); add_shortcode ( 'wdt_sp_featured_item', array ( $this, 'wdt_sp_featured_item' ) ); add_shortcode ( 'wdt_sp_features', array ( $this, 'wdt_sp_features' ) ); add_shortcode ( 'wdt_sp_contact_details', array ( $this, 'wdt_sp_contact_details' ) ); add_shortcode ( 'wdt_sp_social_links', array ( $this, 'wdt_sp_social_links' ) ); add_shortcode ( 'wdt_sp_comments', array ( $this, 'wdt_sp_comments' ) ); add_shortcode ( 'wdt_sp_utils', array ( $this, 'wdt_sp_utils' ) ); add_shortcode ( 'wdt_sp_taxonomy', array ( $this, 'wdt_sp_taxonomy' ) ); add_shortcode ( 'wdt_sp_contact_form', array ( $this, 'wdt_sp_contact_form' ) ); add_shortcode ( 'wdt_sp_post_date', array ( $this, 'wdt_sp_post_date' ) ); add_shortcode ( 'wdt_sp_mls_number', array ( $this, 'wdt_sp_mls_number' ) ); add_shortcode ( 'wdt_sp_navigation', array ( $this, 'wdt_sp_navigation' ) ); } function wdt_shortcodeHelper($content = null) { $content = do_shortcode ( shortcode_unautop ( $content ) ); $content = preg_replace ( '#^<\/p>|^<br \/>|<p>$#', '', $content ); $content = preg_replace ( '#<br \/>#', '', $content ); return trim ( $content ); } function wdt_sp_featured_image( $attrs, $content = null ) { $attrs = shortcode_atts ( array ( 'listing_id' => '', 'image_size' => 'full', 'with_link' => '', 'class' => '', ), $attrs, 'wdt_sp_featured_image' ); $output = ''; if($attrs['listing_id'] == '' && is_singular('wdt_listings')) { global $post; $attrs['listing_id'] = $post->ID; } if($attrs['listing_id'] != '') { $featured_image_id = get_post_thumbnail_id($attrs['listing_id']); $image_details = wp_get_attachment_image_src($featured_image_id, $attrs['image_size']); $image_sizes = wp_get_attachment_metadata($featured_image_id); $width = (isset($image_sizes['width']) && !empty($image_sizes['width'])) ? 'width="'.$image_sizes['width'].'"' : ''; $height = (isset($image_sizes['height']) && !empty($image_sizes['height'])) ? 'height="'.$image_sizes['height'].'"' : ''; $output .= '<div class="wdt-listings-feature-image-holder '.esc_attr( $attrs['class'] ).'">'; if($attrs['with_link'] == 'true') { $output .= '<a href="'.esc_url( get_permalink($attrs['listing_id']) ).'">'; } $output .= '<img src="'.esc_url($image_details[0]).'" title="'.esc_attr__('Featured Image','wdt-portfolio').'" alt="'.esc_attr__('Featured Image','wdt-portfolio').'" '.$width.' '.$height.' />'; if($attrs['with_link'] == 'true') { $output .= '</a>'; } $output .= '</div>'; } else { $listing_singular_label = apply_filters( 'listing_label', 'singular' ); $output .= sprintf( esc_html__('Please provide %1$s id to display corresponding data!','wdt-portfolio'), strtolower($listing_singular_label) ); } return $output; } function wdt_sp_featured_item( $attrs, $content = null ) { $attrs = shortcode_atts ( array ( 'listing_id' => '', 'type' => 'type1', 'class' => '', ), $attrs, 'wdt_sp_featured_item' ); $output = ''; if($attrs['listing_id'] == '' && is_singular('wdt_listings')) { global $post; $attrs['listing_id'] = $post->ID; } if($attrs['listing_id'] != '') { $wdt_featured_item = get_post_meta($attrs['listing_id'], 'wdt_featured_item', true); if($wdt_featured_item == 'true') { $output .= '<div class="wdt-listings-featured-item-container '.esc_attr( $attrs['class'] ).' '.esc_attr( $attrs['type'] ).'">'; $output .= '<span>'.esc_html__('Featured','wdt-portfolio').'</span>'; $output .= '</div>'; } } else { $listing_singular_label = apply_filters( 'listing_label', 'singular' ); $output .= sprintf( esc_html__('Please provide %1$s id to display corresponding data!','wdt-portfolio'), strtolower($listing_singular_label) ); } return $output; } function wdt_sp_features( $attrs, $content = null ) { $attrs = shortcode_atts ( array ( 'listing_id' => '', 'type' => 'type1', 'include' => '', 'columns' => 4, 'features_image_or_icon' => '', 'class' => '', ), $attrs, 'wdt_sp_features' ); $output = ''; if($attrs['listing_id'] == '' && is_singular('wdt_listings')) { global $post; $attrs['listing_id'] = $post->ID; } if($attrs['listing_id'] != '') { if($attrs['columns'] == 1) { $column_class = 'wdt-column wdt-one-column'; } else if($attrs['columns'] == 2) { $column_class = 'wdt-column wdt-one-half'; } else if($attrs['columns'] == 3) { $column_class = 'wdt-column wdt-one-third'; } else if($attrs['columns'] == 4) { $column_class = 'wdt-column wdt-one-fourth'; } else if($attrs['columns'] == -1) { if($attrs['type'] == 'listing') { $column_class = ''; } else { $column_class = ''; $attrs['class'] .= ' wdt-no-column'; } } $wdt_features_title = $wdt_features_subtitle = $wdt_features_value = $wdt_features_valueunit = $wdt_features_icon = $wdt_features_image = array (); if($attrs['listing_id'] > 0) { $wdt_features_title = get_post_meta($attrs['listing_id'], 'wdt_features_title', true); $wdt_features_subtitle = get_post_meta($attrs['listing_id'], 'wdt_features_subtitle', true); $wdt_features_value = get_post_meta($attrs['listing_id'], 'wdt_features_value', true); $wdt_features_valueunit = get_post_meta($attrs['listing_id'], 'wdt_features_valueunit', true); $wdt_features_icon = get_post_meta($attrs['listing_id'], 'wdt_features_icon', true); $wdt_features_image = get_post_meta($attrs['listing_id'], 'wdt_features_image', true); } $j = 0; $i = 1; if(is_array($wdt_features_title) && !empty($wdt_features_title)) { if($attrs['include'] != '') { $include_keys = explode(',', $attrs['include']); } else { if($attrs['type'] == 'listing') { $include_keys = array_keys($wdt_features_title); array_splice($include_keys, 4); } else { $include_keys = array_keys($wdt_features_title); } } $output .= '<div class="wdt-listings-features-box-container '.esc_attr( $attrs['type'] ).' '.esc_attr( $attrs['class'] ).'">'; foreach($wdt_features_title as $wdt_feature_title) { if(in_array($j, $include_keys)) { if($i == 1 && $attrs['columns'] != -1) { $first_class = 'first'; } else { $first_class = ''; } if($i == $attrs['columns']) { $i = 1; } else { $i = $i + 1; } $wdt_features_image_html = $style_attr = ''; $image_url = wp_get_attachment_image_src($wdt_features_image[$j], 'full'); if($image_url != '') { $wdt_features_image_html .= ' <div class="wdt-listings-features-box-item-img" style="background-image:url('.esc_url($image_url[0]).');"></div>'; if($attrs['type'] == 'listing' && $attrs['features_image_or_icon'] == 'image') { $style_attr .= 'style="background-image:url('.esc_url($image_url[0]).');"'; } } $wdt_features_icon_html = ''; if(($attrs['type'] == 'listing' && $attrs['features_image_or_icon'] == 'icon' && isset($wdt_features_icon[$j]) && !empty($wdt_features_icon[$j])) || ($attrs['type'] != 'listing' && isset($wdt_features_icon[$j]) && !empty($wdt_features_icon[$j]))) { $wdt_features_icon_html .= '<div class="wdt-listings-features-box-item-icon"><span class="'.esc_attr($wdt_features_icon[$j]).'"></span></div>'; } $wdt_features_title_html = ''; if(isset($wdt_feature_title) && !empty($wdt_feature_title)) { $wdt_features_title_html .= '<div class="wdt-listings-features-box-item-title">'.esc_attr($wdt_feature_title).'</div>'; } $wdt_features_subtitle_html = ''; if(isset($wdt_features_subtitle[$j]) && !empty($wdt_features_subtitle[$j])) { $wdt_features_subtitle_html .= '<div class="wdt-listings-features-box-item-subtitle">'.esc_attr($wdt_features_subtitle[$j]).'</div>'; } $wdt_features_value_html = ''; if(isset($wdt_features_value[$j]) && !empty($wdt_features_value[$j])) { $wdt_features_value_html .= '<div class="wdt-listings-features-box-item-value">'; $wdt_features_value_html .= esc_attr($wdt_features_value[$j]); if(isset($wdt_features_valueunit[$j]) && !empty($wdt_features_valueunit[$j])) { $wdt_features_value_html .= '<span>'.esc_attr($wdt_features_valueunit[$j]).'</span>'; } $wdt_features_value_html .= '</div>'; } $output .= '<div class="wdt-listings-features-box-item '.esc_attr($column_class).' '.esc_attr($first_class).'" '.$style_attr.'>'; if($attrs['type'] == 'listing') { $output .= $wdt_features_icon_html; $output .= $wdt_features_title_html; $output .= $wdt_features_value_html; } else if($attrs['type'] == 'type1') { $output .= $wdt_features_title_html; $output .= $wdt_features_value_html; } else if($attrs['type'] == 'type2') { $output .= $wdt_features_image_html; $output .= $wdt_features_title_html; $output .= $wdt_features_value_html; } else if($attrs['type'] == 'type3') { $output .= $wdt_features_icon_html; $output .= $wdt_features_title_html; $output .= $wdt_features_value_html; } else if($attrs['type'] == 'type4') { $output .= $wdt_features_title_html; $output .= $wdt_features_value_html; } else if($attrs['type'] == 'type5') { $output .= $wdt_features_title_html; $output .= $wdt_features_value_html; } else if($attrs['type'] == 'type6') { $output .= $wdt_features_image_html; $output .= '<div class="wdt-listings-features-box-item-details">'; $output .= $wdt_features_title_html; $output .= $wdt_features_value_html; $output .= '</div>'; } else if($attrs['type'] == 'type7') { $output .= $wdt_features_title_html; $output .= $wdt_features_value_html; } $output .= '</div>'; } $j++; } $output .= '</div>'; } } else { $listing_singular_label = apply_filters( 'listing_label', 'singular' ); $output .= sprintf( esc_html__('Please provide %1$s id to display corresponding data!','wdt-portfolio'), strtolower($listing_singular_label) ); } return $output; } function wdt_sp_contact_details( $attrs, $content = null ) { $attrs = shortcode_atts ( array ( 'listing_id' => '', 'type' => '', 'contact_details' => 'list', 'include_address' => '', 'include_email' => '', 'include_phone' => '', 'include_mobile' => '', 'include_skype' => '', 'include_website' => '', 'class' => '', ), $attrs, 'wdt_sp_contact_details' ); $output = ''; if($attrs['listing_id'] == '' && is_singular('wdt_listings')) { global $post; $attrs['listing_id'] = $post->ID; } if($attrs['listing_id'] != '') { if($attrs['type'] == 'listing') { $attrs['type'] = ''; } $output .= '<div class="wdt-listings-contactdetails-container '.esc_attr( $attrs['type'] ).' '.esc_attr( $attrs['class'] ).'">'; $output .= '<ul class="wdt-listings-contactdetails-list">'; if($attrs['include_address'] == 'true') { $wdt_latitude = get_post_meta($attrs['listing_id'], 'wdt_latitude', true); $wdt_longitude = get_post_meta($attrs['listing_id'], 'wdt_longitude', true); $wdt_address = get_post_meta($attrs['listing_id'], 'wdt_address', true); $wdt_zip = get_post_meta($attrs['listing_id'], 'wdt_zip', true); $wdt_country = get_post_meta($attrs['listing_id'], 'wdt_country', true); $contact_address = $wdt_address; if($wdt_country != '') { $contact_address .= ', '.$wdt_country; } if($wdt_zip != '') { $contact_address .= ' '.$wdt_zip; } $contact_address = trim($contact_address, ','); if($contact_address != '') { $output .= '<li><span class="fa fa-map-marker"></span>'; $output .= '<p>'; $output .= $contact_address; $output .= '</p>'; $output .= '</li>'; } } if($attrs['contact_details'] == 'author') { $author = get_post($attrs['listing_id']); $author_id = $author->post_author; if($attrs['include_email'] == 'true') { $wdt_email = get_the_author_meta( 'user_email' , $author_id ); if($wdt_email != '') { $output .= '<li><span class="fa fa-envelope"></span><a href="mailto:'.sanitize_email($wdt_email).'">'.esc_html($wdt_email).'</a></li>'; } } if($attrs['include_phone'] == 'true') { $wdt_phone = get_the_author_meta( 'wdt_user_phone' , $author_id ); if($wdt_phone != '') { $output .= '<li><span class="fa fa-phone"></span><a href="tel:'.esc_attr($wdt_phone).'" class="phone" data-listingid="'.esc_attr($attrs['listing_id']).'" target="_blank">'.esc_html($wdt_phone).'</a></li>'; } } if($attrs['include_mobile'] == 'true') { $wdt_mobile = get_the_author_meta( 'wdt_user_mobile' , $author_id ); if($wdt_mobile != '') { $output .= '<li><span class="fa fa-mobile"></span><a href="tel:'.esc_attr($wdt_mobile).'" class="mobile" data-listingid="'.esc_attr($attrs['listing_id']).'" target="_blank">'.esc_html($wdt_mobile).'</a></li>'; } } if($attrs['include_skype'] == 'true') { $wdt_skype = get_the_author_meta( 'wdt_user_skype' , $author_id ); if($wdt_skype != '') { $output .= '<li><span class="fab fa-skype"></span>'.esc_html($wdt_skype).'</li>'; } } if($attrs['include_website'] == 'true') { $wdt_website = get_the_author_meta( 'wdt_user_website' , $author_id ); if($wdt_website != '') { $output .= '<li><span class="fa fa-globe"></span><a href="'.esc_url($wdt_website).'" class="web" data-listingid="'.esc_attr($attrs['listing_id']).'" target="_blank">'.esc_html($wdt_website).'</a></li>'; } } } else if($attrs['contact_details'] == 'list') { if($attrs['include_email'] == 'true') { $wdt_email = get_post_meta($attrs['listing_id'], 'wdt_email', true); if($wdt_email != '') { $output .= '<li><span class="fa fa-envelope"></span><a href="mailto:'.esc_attr($wdt_email).'">'.esc_attr($wdt_email).'</a></li>'; } } if($attrs['include_phone'] == 'true') { $wdt_phone = get_post_meta($attrs['listing_id'], 'wdt_phone', true); if($wdt_phone != '') { $output .= '<li><span class="fa fa-phone"></span><a href="tel:'.sanitize_email($wdt_phone).'" class="phone" data-listingid="'.esc_attr($attrs['listing_id']).'" target="_blank">'.esc_html($wdt_phone).'</a></li>'; } } if($attrs['include_mobile'] == 'true') { $wdt_mobile = get_post_meta($attrs['listing_id'], 'wdt_mobile', true); if($wdt_mobile != '') { $output .= '<li><span class="fa fa-mobile"></span><a href="tel:'.esc_attr($wdt_mobile).'" class="mobile" data-listingid="'.esc_attr($attrs['listing_id']).'" target="_blank">'.esc_html($wdt_mobile).'</a></li>'; } } if($attrs['include_skype'] == 'true') { $wdt_skype = get_post_meta($attrs['listing_id'], 'wdt_skype', true); if($wdt_skype != '') { $output .= '<li><span class="fab fa-skype"></span>'.esc_html($wdt_skype).'</li>'; } } if($attrs['include_website'] == 'true') { $wdt_website = get_post_meta($attrs['listing_id'], 'wdt_website', true); if($wdt_website != '') { $output .= '<li><span class="fa fa-globe"></span><a href="'.esc_url($wdt_website).'" class="web" data-listingid="'.esc_attr($attrs['listing_id']).'" target="_blank">'.esc_html($wdt_website).'</a></li>'; } } } $output .= '</ul>'; $output .= '</div>'; } else { $listing_singular_label = apply_filters( 'listing_label', 'singular' ); $output .= sprintf( esc_html__('Please provide %1$s id to display corresponding data!','wdt-portfolio'), strtolower($listing_singular_label) ); } return $output; } function wdt_sp_social_links( $attrs, $content = null ) { $attrs = shortcode_atts ( array ( 'listing_id' => '', 'type' => '', 'class' => '', ), $attrs, 'wdt_sp_social_links' ); $output = ''; if($attrs['listing_id'] == '' && is_singular('wdt_listings')) { global $post; $attrs['listing_id'] = $post->ID; } if($attrs['listing_id'] != '') { $output .= '<div class="wdt-listings-sociallinks-container '.esc_attr( $attrs['type'] ).' '.esc_attr( $attrs['class'] ).'">'; $output .= '<label>'.esc_html__('Socials:', 'wdt-portfolio').'</label>'; $output .= '<ul class="wdt-listings-sociallinks-list">'; $wdt_social_items = get_post_meta($attrs['listing_id'], 'wdt_social_items', true); $wdt_social_items = (isset($wdt_social_items) && is_array($wdt_social_items)) ? $wdt_social_items : array (); $wdt_social_items_value = get_post_meta($attrs['listing_id'], 'wdt_social_items_value', true); $wdt_social_items_value = (isset($wdt_social_items_value) && is_array($wdt_social_items_value)) ? $wdt_social_items_value : array (); $i = 0; if(is_array($wdt_social_items) && !empty($wdt_social_items)) { foreach($wdt_social_items as $wdt_social_item) { $output .= '<li><a href="'.esc_url($wdt_social_items_value[$i]).'"><span class="fab '.esc_attr($wdt_social_item).'"></span></a></li>'; $i++; } } $output .= '</ul>'; $output .= '</div>'; } else { $listing_singular_label = apply_filters( 'listing_label', 'singular' ); $output .= sprintf( esc_html__('Please provide %1$s id to display corresponding data!','wdt-portfolio'), strtolower($listing_singular_label) ); } return $output; } function wdt_sp_comments( $attrs, $content = null ) { $attrs = shortcode_atts ( array ( 'class' => '', ), $attrs, 'wdt_sp_comments' ); $output = ''; ob_start(); comments_template(); $comment_list_template = ob_get_contents(); ob_end_clean(); $output .= '<div class="wdt-listings-comment-list-holder '.esc_attr( $attrs['class'] ).'">'; $output .= $comment_list_template; $output .= '</div>'; return $output; } function wdt_sp_utils( $attrs, $content = null ) { $attrs = shortcode_atts ( array ( 'listing_id' => '', 'show_title' => '', 'show_address' => '', 'show_favourite' => '', 'show_pageview' => '', 'show_print' => '', 'show_socialshare' => '', 'show_averagerating' => '', 'show_featured' => '', 'show_categories' => '', 'show_contracttype' => '', 'show_amenity' => '', 'show_price' => '', 'show_excerpt' => '', 'class' => '', ), $attrs, 'wdt_sp_utils' ); $output = ''; if($attrs['listing_id'] == '' && is_singular('wdt_listings')) { global $post; $attrs['listing_id'] = $post->ID; } if($attrs['listing_id'] != '') { $output .= '<div class="wdt-listings-utils-container '.esc_attr( $attrs['class'] ).'">'; if($attrs['show_title'] == 'true') { $output .= '<div class="wdt-listings-utils-item wdt-listings-utils-title">'; $output .= '<h3 class="wdt-listings-utils-title-item"><a href="'.esc_url( get_permalink($attrs['listing_id']) ).'">'.get_the_title($attrs['listing_id']).'</a></h3>'; $output .= '</div>'; } if($attrs['show_address'] == 'true') { $include_address = ''; if($attrs['show_address'] == 'true') { $include_address = 'true'; } $include_phone = $include_mobile = 'true'; $output .= '<div class="wdt-listings-utils-item wdt-listings-utils-contactdetails">'; $output .= do_shortcode('[wdt_sp_contact_details listing_id="'.esc_attr($attrs['listing_id']).'" contact_details="list" include_address="'.esc_attr($include_address).'" include_phone="'.esc_attr($include_phone).'" include_mobile="'.esc_attr($include_mobile).'" /]'); $output .= '</div>'; } if($attrs['show_favourite'] == 'true') { $current_user = wp_get_current_user(); $user_id = $current_user->ID; $favourite_items = get_user_meta($user_id, 'favourite_items', true); $favourite_items = (is_array($favourite_items) && !empty($favourite_items)) ? $favourite_items : array(); $favourite_attr = 'data-listingid="'.$attrs['listing_id'].'"'; if($user_id > 0) { if(in_array($attrs['listing_id'], $favourite_items)) { $favourite_class = 'removefavourite'; $favourite_icon_class = 'fa fa-heart'; } else { $favourite_class = 'addtofavourite'; $favourite_icon_class = 'far fa-heart'; } $favourite_attr .= ' data-userid="'.$user_id.'"'; } else { $favourite_class = 'wdt-login-link'; $favourite_attr = ''; $favourite_icon_class = 'far fa-heart'; } $output .= '<div class="wdt-listings-utils-item wdt-listings-utils-favourite">'; $output .= '<a class="wdt-listings-utils-favourite-item '.esc_attr( $favourite_class ).'" '.$favourite_attr.'><span class="'.$favourite_icon_class.'"></span></a>'; $output .= '</div>'; } if($attrs['show_pageview'] == 'true') { $total_views = get_post_meta($attrs['listing_id'], 'wdt_total_views', true); $total_views = ($total_views != '') ? $total_views : 0; $output .= '<div class="wdt-listings-utils-item wdt-listings-utils-pageview">'; $output .= '<a class="wdt-listings-utils-pageview-item"><span class="fa fa-eye-slash"></span>'.esc_html($total_views).'</a>'; $output .= '</div>'; } if($attrs['show_print'] == 'true') { $output .= '<div class="wdt-listings-utils-item wdt-listings-utils-print">'; $output .= '<a class="wdt-listings-utils-print-item"><span class="fa fa-print"></span></a>'; $output .= '</div>'; } if($attrs['show_socialshare'] == 'true') { $output .= '<div class="wdt-listings-utils-item wdt-listings-utils-socialshare">'; $output .= do_shortcode('[wdt_sp_social_share listing_id="'.esc_attr($attrs['listing_id']).'" show_facebook="true" show_delicious="true" show_digg="true" show_stumbleupon="true" show_twitter="true" show_googleplus="true" show_linkedin="true" show_pinterest="true" /]'); $output .= '</div>'; } if($attrs['show_averagerating'] == 'true') { $output .= '<div class="wdt-listings-utils-item wdt-listings-utils-averagerating">'; $output .= do_shortcode('[wdt_sp_average_rating listing_id="'.esc_attr($attrs['listing_id']).'" display="both" type="" /]'); $output .= '</div>'; } if($attrs['show_featured'] == 'true') { $output .= '<div class="wdt-listings-utils-item wdt-listings-utils-featured-item">'; $output .= do_shortcode('[wdt_sp_featured_item listing_id="'.esc_attr($attrs['listing_id']).'" type="" /]'); $output .= '</div>'; } if($attrs['show_categories'] == 'true') { $output .= '<div class="wdt-listings-utils-item wdt-listings-utils-categories">'; $output .= do_shortcode('[wdt_sp_taxonomy listing_id="'.esc_attr($attrs['listing_id']).'" taxonomy="wdt_listings_category" type="utils" /]'); $output .= '</div>'; } if($attrs['show_amenity'] == 'true') { $output .= '<div class="wdt-listings-utils-item wdt-listings-utils-contracttype">'; $output .= do_shortcode('[wdt_sp_taxonomy listing_id="'.esc_attr($attrs['listing_id']).'" taxonomy="wdt_listings_amenity" type="utils" /]'); $output .= '</div>'; } if($attrs['show_price'] == 'true' && shortcode_exists('wdt_sp_price')) { $output .= '<div class="wdt-listings-utils-item wdt-listings-utils-price">'; $output .= do_shortcode('[wdt_sp_price listing_id="'.esc_attr($attrs['listing_id']).'" type="" /]'); $output .= '</div>'; } if($attrs['show_excerpt'] == 'true') { $output .= '<div class="wdt-listings-utils-item wdt-listings-utils-excerpt">'; $output .= '<div class="wdt-listings-utils-excerpt-item">'.get_the_excerpt($attrs['listing_id']).'</div>'; $output .= '</div>'; } $output .= '</div>'; } else { $listing_singular_label = apply_filters( 'listing_label', 'singular' ); $output .= sprintf( esc_html__('Please provide %1$s id to display corresponding data!','wdt-portfolio'), strtolower($listing_singular_label) ); } return $output; } function wdt_sp_taxonomy( $attrs, $content = null ) { $attrs = shortcode_atts ( array ( 'listing_id' => '', 'taxonomy' => 'wdt_listings_category', 'type' => '', 'show_label' => 'false', 'splice' => '', 'class' => '', ), $attrs, 'wdt_sp_taxonomy' ); $output = ''; if($attrs['listing_id'] == '' && is_singular('wdt_listings')) { global $post; $attrs['listing_id'] = $post->ID; } if($attrs['listing_id'] != '') { $listing_singular_label = apply_filters( 'listing_label', 'singular' ); $listing_taxonomies = wp_get_post_terms($attrs['listing_id'], $attrs['taxonomy'], array ('orderby' => 'parent')); if(isset($attrs['splice']) && $attrs['splice'] != '') { array_splice($listing_taxonomies, $attrs['splice']); } if(!empty($listing_taxonomies)) { $output .= '<div class="wdt-listings-taxonomy-container '.esc_attr( $attrs['type'] ).' '.esc_attr( $attrs['class'] ).'">'; if($attrs['show_label'] == 'true') { if($attrs['taxonomy'] == 'wdt_listings_category') { $output .= '<label>'.esc_html__('Category:', 'wdt-portfolio').'</label>'; } else if($attrs['taxonomy'] == 'wdt_listings_amenity') { $output .= '<label>'.apply_filters( 'amenity_label', 'singular' ).':</label>'; } } $output .= '<ul class="wdt-listings-taxonomy-list">'; foreach($listing_taxonomies as $listing_taxonomy) { if(isset($listing_taxonomy->term_id)) { $icon_image_url = get_term_meta($listing_taxonomy->term_id, 'wdt-taxonomy-icon-image-url', true); $icon = get_term_meta($listing_taxonomy->term_id, 'wdt-taxonomy-icon', true); $background_color = get_term_meta($listing_taxonomy->term_id, 'wdt-taxonomy-background-color', true); $tax_bg_color = (isset($background_color) && !empty($background_color)) ? 'style="background-color:'.$background_color.';"': ''; if($attrs['type'] == 'type1') { $output .= '<li>'; $output .= '<a href="'.esc_url( get_term_link($listing_taxonomy->term_id) ).'">'; $output .= '<span>'.esc_html($listing_taxonomy->name).'</span>'; $output .= '</a>'; $output .= '</li>'; } else if($attrs['type'] == 'type2') { $output .= '<li>'; $output .= '<a href="'.esc_url( get_term_link($listing_taxonomy->term_id) ).'">'; if($icon != '') { $output .= '<span class="'.esc_attr( $icon ).'"></span>'; } $output .= '<span>'.esc_html($listing_taxonomy->name).'</span>'; $output .= '</a>'; $output .= '</li>'; } else if($attrs['type'] == 'type3') { $output .= '<li>'; $output .= '<a href="'.esc_url( get_term_link($listing_taxonomy->term_id) ).'">'; if($icon_image_url != '') { $output .= '<span class="wdt-listings-taxonomy-image" '.$tax_bg_color.'><img src="'.esc_url( $icon_image_url ).'" alt="'.sprintf( esc_html__('%1$s Taxonomy Image','wdt-portfolio'), $listing_singular_label ).'" title="'.sprintf( esc_attr__('%1$s Taxonomy Image','wdt-portfolio'), $listing_singular_label ).'" /></span>'; } $output .= '<span>'.esc_html($listing_taxonomy->name).'</span>'; $output .= '</a>'; $output .= '</li>'; } else if($attrs['type'] == 'type4') { $output .= '<li>'; $output .= '<a href="'.esc_url( get_term_link($listing_taxonomy->term_id) ).'" '.$tax_bg_color.'>'; if($icon != '') { $output .= '<span class="'.esc_attr( $icon ).'"></span>'; } $output .= '<span>'.esc_html($listing_taxonomy->name).'</span>'; $output .= '</a>'; $output .= '</li>'; } else if($attrs['type'] == 'type5') { $output .= '<li>'; $output .= '<a href="'.esc_url( get_term_link($listing_taxonomy->term_id) ).'" '.$tax_bg_color.'>'; if($icon_image_url != '') { $output .= '<span class="wdt-listings-taxonomy-image"><img src="'.esc_url( $icon_image_url ).'" alt="'.sprintf( esc_html__('%1$s Taxonomy Image','wdt-portfolio'), $listing_singular_label ).'" title="'.sprintf( esc_html__('%1$s Taxonomy Image','wdt-portfolio'), $listing_singular_label ).'" /></span>'; } $output .= '<span>'.esc_html($listing_taxonomy->name).'</span>'; $output .= '</a>'; $output .= '</li>'; } else if($attrs['type'] == 'type6') { $output .= '<li>'; $output .= '<a href="'.esc_url( get_term_link($listing_taxonomy->term_id) ).'">'; $output .= '<span>'.esc_html($listing_taxonomy->name).'</span>'; $output .= '</a>'; $output .= '</li>'; } else if($attrs['type'] == 'type7') { $output .= '<li>'; $output .= '<a href="'.esc_url( get_term_link($listing_taxonomy->term_id) ).'" '.$tax_bg_color.'>'; $output .= '<span>'.esc_html($listing_taxonomy->name).'</span>'; $output .= '</a>'; $output .= '</li>'; } else if($attrs['type'] == 'type8') { $output .= '<li>'; $output .= '<a href="'.esc_url( get_term_link($listing_taxonomy->term_id) ).'" '.$tax_bg_color.'>'; $output .= '<span>'.esc_html($listing_taxonomy->name).'</span>'; $output .= '</a>'; $output .= '</li>'; } else if($attrs['type'] == 'utils') { $output .= '<li>'; $output .= '<a href="'.esc_url( get_term_link($listing_taxonomy->term_id) ).'">'; if($icon != '') { $output .= '<span class="'.esc_attr( $icon ).'"></span>'; } $output .= '<span class="wdt-listings-taxonomy-name">'.esc_html($listing_taxonomy->name).'</span>'; $output .= '</a>'; $output .= '</li>'; } } } $output .= '</ul>'; $output .= '</div>'; } } else { $listing_singular_label = apply_filters( 'listing_label', 'singular' ); $output .= sprintf( esc_html__('Please provide %1$s id to display corresponding data!','wdt-portfolio'), strtolower($listing_singular_label) ); } return $output; } function wdt_sp_contact_form( $attrs, $content = null ) { $attrs = shortcode_atts ( array ( 'listing_id' => '', 'textarea_placeholder' => '', 'submit_label' => '', 'contact_point' => '', 'include_admin' => '', 'class' => '', ), $attrs, 'wdt_sp_contact_form' ); $output = ''; if($attrs['listing_id'] == '' && is_singular('wdt_listings')) { global $post; $attrs['listing_id'] = $post->ID; } if($attrs['listing_id'] != '') { $output .= '<div class="wdt-listings-contactform-container '.esc_attr( $attrs['class'] ).'">'; $output .= '<form method="post" class="wdt-listings-contactform" name="wdt-listings-contactform">'; $current_user = wp_get_current_user(); $user_id = $current_user->ID; if(!is_user_logged_in()) { $output .= '<div class="wdt-column wdt-one-column first"> <input class="wdt-contactform-name" name="wdt_contactform_name" type="text" placeholder="'.esc_attr__('Name','wdt-portfolio').'" required /> <span></span> </div>'; $output .= '<div class="wdt-listings-contactform-item">'; $output .= '<div class="wdt-column wdt-one-column first"> <input class="wdt-contactform-email" name="wdt_contactform_email" type="text" placeholder="'.esc_attr__('Email','wdt-portfolio').'" required /> <span></span> </div>'; $output .= '<div class="wdt-column wdt-one-column first"> <input class="wdt-contactform-phone" name="wdt_contactform_phone" type="text" placeholder="'.esc_attr__('Phone','wdt-portfolio').'" required /> <span></span> </div>'; $output .= '</div>'; } if($attrs['textarea_placeholder'] != '') { $listing_title = get_the_title($attrs['listing_id']); $textarea_placeholder = str_replace('{{title}}', $listing_title, $attrs['textarea_placeholder']); } else { $textarea_placeholder = esc_html__('Message','wdt-portfolio'); } if($attrs['submit_label'] != '') { $submit_label = $attrs['submit_label']; } else { $submit_label = esc_html__('Submit','wdt-portfolio'); } $output .= '<div class="wdt-column wdt-one-column first"> <textarea class="wdt-contactform-message" name="wdt_contactform_message" rows="5" placeholder="'.esc_attr($textarea_placeholder).'"></textarea> <span></span> </div>'; $output .= '<input class="wdt-contactform-listingid" name="wdt_contactform_listingid" type="hidden" value="'.esc_attr($attrs['listing_id']).'" />'; $output .= '<input class="wdt-contactform-userid" name="wdt_contactform_userid" type="hidden" value="'.esc_attr($user_id).'" />'; $output .= '<input class="wdt-contactform-contactpoint" name="wdt_contactform_contactpoint" type="hidden" value="'.esc_attr($attrs['contact_point']).'" />'; $output .= '<input class="wdt-contactform-includeadmin" name="wdt_contactform_includeadmin" type="hidden" value="'.esc_attr($attrs['include_admin']).'" />'; $output .= '<input class="wdt-contactform-nonce" name="wdt_contactform_nonce" type="hidden" value="'.wp_create_nonce('contact_listing_'.$attrs['listing_id']).'" />'; $output .= '<div class="wdt-contactform-notification-box"></div>'; $output .= '<a class="wdt-contactform-submit-button">'.esc_html__($submit_label).'</a>'; $output .= '</form>'; $output .= '</div>'; } else { $listing_singular_label = apply_filters( 'listing_label', 'singular' ); $output .= sprintf( esc_html__('Please provide %1$s id to display corresponding data!','wdt-portfolio'), strtolower($listing_singular_label) ); } return $output; } function wdt_sp_post_date( $attrs, $content = null ) { $attrs = shortcode_atts ( array ( 'listing_id' => '', 'type' => 'type1', 'include_posttime' => '', 'with_label' => '', 'with_icon' => '', 'class' => '' ), $attrs, 'wdt_sp_post_date' ); $output = ''; if($attrs['listing_id'] == '' && is_singular('wdt_listings')) { global $post; $attrs['listing_id'] = $post->ID; } if($attrs['listing_id'] != '') { if($attrs['type'] == 'listing') { $attrs['type'] = ''; } $output .= '<div class="wdt-listings-post-dates-container '.esc_attr( $attrs['type'] ).' '.esc_attr( $attrs['class'] ).'">'; $wdt_post_date = get_the_date( get_option('date_format'), $attrs['listing_id'] ); if($wdt_post_date != '') { $output .= '<div class="wdt-listings-post-date-container">'; if($attrs['with_icon'] == 'true') { $output .= '<span class="wdt-listings-post-date-icon"></span>'; } if($attrs['with_label'] == 'true') { $output .= '<label class="wdt-listings-post-date-label">'.esc_html__('Posted On: ','wdt-portfolio').'</label>'; } $output .= '<div class="wdt-listings-post-datetime-holder">'; $output .= '<div class="wdt-listings-post-date-holder">'; $output .= $wdt_post_date; $output .= '</div>'; if($attrs['include_posttime'] == 'true') { $output .= '<div class="wdt-listings-post-time-holder">'; $wdt_24_hour_format = get_post_meta($attrs['listing_id'], 'wdt_24_hour_format', true); if($wdt_24_hour_format == 'true') { $output .= get_the_time( 'G:i', $attrs['listing_id'] ); } else { $output .= get_the_time( 'g:i A', $attrs['listing_id'] ); } $output .= '</div>'; } $output .= '</div>'; $output .= '</div>'; } $output .= '</div>'; } else { $listing_singular_label = apply_filters( 'listing_label', 'singular' ); $output .= sprintf( esc_html__('Please provide %1$s id to display corresponding data!','wdt-portfolio'), strtolower($listing_singular_label) ); } return $output; } function wdt_sp_mls_number( $attrs, $content = null ) { $attrs = shortcode_atts ( array ( 'listing_id' => '', 'type' => 'type1', 'with_label' => '', 'class' => '', ), $attrs, 'wdt_sp_mls_number' ); $output = ''; if($attrs['listing_id'] == '' && is_singular('wdt_listings')) { global $post; $attrs['listing_id'] = $post->ID; } if($attrs['listing_id'] != '') { $wdt_mls_number = get_post_meta($attrs['listing_id'], 'wdt_mls_number', true); if($wdt_mls_number != '') { if($attrs['type'] == 'listing') { $attrs['type'] = ''; } $output .= '<div class="wdt-listings-mls-number-container '.esc_attr( $attrs['type'] ).' '.esc_attr( $attrs['class'] ).'">'; if($attrs['with_label'] == 'true') { $output .= '<label class="wdt-listings-mls-number-label">'.esc_html__('MLS Number: ','wdt-portfolio').'</label>'; } $output .= '<span>'.esc_html($wdt_mls_number).'</span>'; $output .= '</div>'; } } else { $listing_singular_label = apply_filters( 'listing_label', 'singular' ); $output .= sprintf( esc_html__('Please provide %1$s id to display corresponding data!','wdt-portfolio'), strtolower($listing_singular_label) ); } return $output; } function wdt_sp_navigation( $attrs, $content = null ) { $attrs = shortcode_atts ( array ( 'listing_id' => '', 'type' => 'type1', 'class' => '', ), $attrs, 'wdt_sp_navigation' ); $output = ''; if($attrs['listing_id'] == '' && is_singular('wdt_listings')) { global $post; $attrs['listing_id'] = $post->ID; } if($attrs['listing_id'] != '') { $output .= '<div class="wdt-listings-nav-container '.esc_attr( $attrs['type'] ).' '.esc_attr( $attrs['class'] ).'">'; $prev_post = get_previous_post(); if(!empty($prev_post)) { $output .= '<div class="wdt-listings-nav-prev-wrapper">'; if(has_post_thumbnail($prev_post->ID)) { $url = get_the_post_thumbnail_url($prev_post->ID, 'full'); $output .= '<a href="'.get_permalink($prev_post->ID).'" style=background-image:url('.esc_url($url).') class="wdt-listings-nav-prev-bgimg"></a>'; } $output .= '<div class="wdt-listings-nav-title-wrapper">'; $output .= '<p><a href="'.get_permalink($prev_post->ID).'">'.esc_html__('Previous Portfolio','wdt-portfolio').'</a></p>'; $output .= '<span class="zmdi zmdi-long-arrow-left zmdi-hc-fw"></span>'; $output .= '<h3><a href="'.get_permalink($prev_post->ID).'" title="'.esc_attr($prev_post->post_title).'">'; if(get_the_title($prev_post->ID)) { $output .= ($prev_post->post_title); } else { $output .= esc_html__('Previous Portfolio', 'wdt-portfolio'); } $output .= '</a></h3>'; $output .= '</div>'; $output .= '</div>'; } else { $output .= '<div class="wdt-listings-nav-prev-wrapper no-post">'; $output .= '<a href="#" style="background-image:url('.esc_url(WEDESIGNTECH_ROOT_URI.'/assets/images/no-post.jpg').');" class="wdt-listings-nav-prev-bgimg"></a>'; $output .= '<div class="wdt-listings-nav-title-wrapper">'; $output .= '<span class="zmdi zmdi-long-arrow-left zmdi-hc-fw"></span>'; $output .= '<h3>'.esc_html__('No previous portfolio to show!', 'wdt-portfolio').'</h3>'; $output .= '</div>'; $output .= '</div>'; } if($attrs['type'] == 'type2'){ $output .= '<a href="'.esc_url(get_post_type_archive_link('wdt_listings')).'" class="wdt-single-portfolio-nav-back-btn"><span>'.esc_html__('Back to portfolios', 'wdt-portfolio').'</span></a>'; } $next_post = get_next_post(); if(!empty($next_post)) { $output .= '<div class="wdt-listings-nav-next-wrapper">'; if(has_post_thumbnail($next_post->ID)) { $url = get_the_post_thumbnail_url($next_post->ID, 'full'); $output .= '<a href="'.get_permalink($next_post->ID).'" style=background-image:url('.esc_url($url).') class="wdt-listings-nav-next-bgimg"></a>'; } $output .= '<div class="wdt-listings-nav-title-wrapper">'; $output .= '<p><a href="'.get_permalink($next_post->ID).'">'.esc_html__('Next Portfolio','wdt-portfolio').'</a></p>'; $output .= '<span class="zmdi zmdi-long-arrow-left zmdi-hc-fw"></span>'; $output .= '<h3><a href="'.get_permalink($next_post->ID).'" title="'.esc_attr($next_post->post_title).'">'; if(get_the_title($next_post->ID)) { $output .= ($next_post->post_title); } else { $output .= esc_html__('Next Portfolio', 'wdt-portfolio'); } $output .= '</a></h3>'; $output .= '</div>'; $output .= '</div>'; } else { $output .= '<div class="wdt-listings-nav-next-wrapper no-post">'; $output .= '<a href="#" style="background-image:url('.esc_url(WEDESIGNTECH_ROOT_URI.'/assets/images/no-post.jpg').');" class="wdt-listings-nav-next-bgimg"></a>'; $output .= '<div class="wdt-listings-nav-title-wrapper">'; $output .= '<span class="zmdi zmdi-long-arrow-left zmdi-hc-fw"></span>'; $output .= '<h3>'.esc_html__('No next portfolio to show!', 'wdt-portfolio').'</h3>'; $output .= '</div>'; $output .= '</div>'; } $output .= '</div>'; } else { $listing_singular_label = apply_filters( 'listing_label', 'singular' ); $output .= sprintf( esc_html__('Please provide %1$s id to display corresponding data!','wdt-portfolio'), strtolower($listing_singular_label) ); } return $output; } } WDTPortfolioSinglePageShortcodes::instance(); } ?>
Cancel