PluginProbe
WP Directory Kit / 1.3.1
WP Directory Kit v1.3.1
1.5.6 1.5.5 1.5.4 1.5.3 trunk 1.1.0 1.1.6 1.1.8 1.2.3 1.2.4 1.2.5 1.2.6 1.2.7 1.2.8 1.2.9 1.3.0 1.3.1 1.3.2 1.3.3 1.3.4 1.3.5 1.3.6 1.3.8 1.4.0 1.4.1 All 35 releases
wpdirectorykit / shortcodes / shortcode-wdk-listing-field-value.php

shortcode-wdk-listing-field-value.php in WP Directory Kit 1.3.1, at shortcodes/shortcode-wdk-listing-field-value.php

119 lines 5.5 KB
No matching file
Up and down to move Enter to open Esc to close
Raw Download Zip
1 <?php
2
3 if ( ! defined( 'ABSPATH' ) ) {
4 exit; // Exit if accessed directly.
5 }
6
7 /*
8 * Widget [wdk-listing-field-value], show latest listings in list view
9 * atts list:
10 *
11 * field_id (int) - field id
12 * post_id (int) - post_id
13 *
14 * Layout path :
15 * get_template_directory().'/wpdirectorykit/shortcodes/views/shortcode-latest-listings-list.php'
16 * WPDIRECTORYKIT_PATH.'shortcodes/views/shortcode-latest-listings-list.php'
17 */
18
19 add_shortcode('wdk-listing-field-value', 'shortcode_wdk_listing_field_value');
20 function shortcode_wdk_listing_field_value($atts, $content){
21 $atts = shortcode_atts(array(
22 'id'=>NULL,
23 'field_id'=>'',
24 'post_id'=>'',
25 'enable_html'=>'',
26 ), $atts);
27 $data = array();
28
29 /* settings from atts */
30 $data['settings'] = $atts;
31 $data['id_element'] = '';
32
33 /* load css/js */
34
35 $WMVC = &wdk_get_instance();
36 $WMVC->model('listingfield_m');
37 $WMVC->model('listing_m');
38 $WMVC->load_helper('listing');
39 global $wdk_listing_id;
40 $post_id = $wdk_listing_id;
41 if (!empty($data['settings']['post_id'])) {
42 $post_id = $data['settings']['post_id'];
43 }
44
45 $data['field_value'] = '';
46 $data['field_prefix'] = '';
47 $data['field_suffix'] = '';
48 if(!empty($data['settings']['field_id'])){
49 if(strpos($data['settings']['field_id'],'__') !== FALSE){
50 $data['settings']['field_id'] = substr($data['settings']['field_id'], strpos($data['settings']['field_id'],'__')+2);
51 }
52
53 if(wdk_field_option($data['settings']['field_id'], 'field_type') == "CHECKBOX") {
54 if(wdk_field_value ($data['settings']['field_id'], $post_id) == 1){
55 $data['field_value'] = '<span class="field_checkbox_success"><span class="label label-success"><span class="dashicons dashicons-saved"></span></span></span>';
56 } else {
57 $data['field_value'] = '<span class="field_checkbox_unsuccess"><span class="label label-success"><span class="dashicons dashicons-unsaved"></span></span></span>';
58 }
59 } else if(wdk_field_option($data['settings']['field_id'],'field_type') == "INPUTBOX") {
60 $data['field_value'] = wdk_field_value ($data['settings']['field_id'], $post_id);
61
62 if(strpos($data['field_value'], 'vimeo.com') !== FALSE)
63 {
64 $data['field_value'] = wp_oembed_get($data['field_value'], array("width"=>"800", "height"=>"450"));
65 }
66 elseif(strpos($data['field_value'], 'watch?v=') !== FALSE)
67 {
68 $embed_code = substr($data['field_value'], strpos($data['field_value'], 'watch?v=')+8);
69 $data['field_value'] = wp_oembed_get('https://www.youtube.com/watch?v='.$embed_code, array("width"=>"800", "height"=>"455"));
70 }
71 elseif(strpos($data['field_value'], 'youtu.be/') !== FALSE)
72 {
73 $embed_code = substr($data['field_value'], strpos($data['field_value'], 'youtu.be/')+9);
74 $data['field_value'] = wp_oembed_get('https://www.youtube.com/watch?v='.$embed_code, array("width"=>"800", "height"=>"455"));
75 }
76 elseif(filter_var($data['field_value'], FILTER_VALIDATE_URL) !== FALSE && preg_match('/\.(mp4|flv|wmw|ogv|webm|ogg)$/i', $data['field_value']))
77 {
78 $data['field_value'] = '<video src="'.$data['field_value'].'" controls></video> ';
79 }
80 elseif(filter_var($data['field_value'] , FILTER_VALIDATE_URL) !== FALSE) {
81 $data['field_value'] = '<a href="'.$data['field_value'] .'">'.wdk_field_label($data['settings']['field_id']).'</a>';
82 }
83 }
84 elseif($data['settings']['field_id'] == 'category_id') {
85 if(wdk_field_value ($data['settings']['field_id'], $post_id)){
86 $WMVC->model('category_m');
87 $tree_data = $WMVC->category_m->get(wdk_field_value ($data['settings']['field_id'], $post_id), TRUE);
88 $data['field_value'] = wmvc_show_data('category_title', $tree_data);
89 }
90 }
91 elseif($data['settings']['field_id'] == 'location_id') {
92 if(wdk_field_value ($data['settings']['field_id'], $post_id)){
93 $WMVC->model('location_m');
94 $tree_data = $WMVC->location_m->get(wdk_field_value ($data['settings']['field_id'], $post_id), TRUE);
95 $data['field_value'] = wmvc_show_data('location_title', $tree_data);
96 }
97 }
98 else {
99 $data['field_value'] = wdk_field_value ($data['settings']['field_id'], $post_id);
100 }
101
102 $data['field_prefix'] = wdk_field_option ($data['settings']['field_id'], 'prefix');
103 $data['field_suffix'] = wdk_field_option ($data['settings']['field_id'], 'suffix');
104 }
105
106 $data['is_edit_mode']= false;
107
108 /* return false if no content */
109 if(wdk_field_value($data['settings']['field_id'], $post_id) == '')
110 return false;
111
112 $data['field_prefix'] = apply_filters( 'wpdirectorykit/listing/field/prefix', $data['field_prefix'], $data['settings']['field_id']);
113 $data['field_value'] = apply_filters( 'wpdirectorykit/listing/field/value', (wmvc_show_data('value', $data['field_value'])), $data['settings']['field_id']);
114 $data['field_suffix'] = apply_filters( 'wpdirectorykit/listing/field/suffix',$data['field_suffix'], $data['settings']['field_id']);
115
116 return wdk_shortcodes_view('shortcode-wdk-listing-field-value', $data);
117 }
118
119 ?>