PluginProbe
Lasso Lite – Affiliate Link Manager & Product Displays / 153
Lasso Lite – Affiliate Link Manager & Product Displays v153
157 155 156 154 153 152 151 150 149 148 trunk 0.9.9 104 105 106 107 108 109 110 111 112 113 114 115 116 All 56 releases
simple-urls / classes / class-post.php

class-post.php in Lasso Lite – Affiliate Link Manager & Product Displays 153, at classes/class-post.php

92 lines 1.4 KB
No matching file
Up and down to move Enter to open Esc to close
Raw Download Zip
1 <?php
2 /**
3 * Declare class Post
4 *
5 * @package Post
6 */
7
8 namespace LassoLite\classes;
9
10 use LassoLite\Classes\Affiliate_Link as Lasso_Affiliate_Link;
11 use LassoLite\Classes\Elementor as Lasso_Elementor;
12
13 /**
14 * Handler wp_posts
15 * Post
16 */
17 class Post {
18
19 /**
20 * WP_Post
21 *
22 * @var array|WP_Post|null
23 */
24 private $post;
25
26 /**
27 * Lasso ID
28 *
29 * @var int
30 */
31 private $lasso_id;
32
33 /**
34 * Lasso URL
35 *
36 * @var object
37 */
38 private $lasso_url;
39
40 /**
41 * Post constructor.
42 *
43 * @param int $post_id WP_Post ID.
44 * @param int $lasso_id Lasso ID.
45 * @param object $lasso_url Lasso url.
46 */
47 public function __construct( $post_id, $lasso_id, $lasso_url = null ) {
48 $this->post = get_post( $post_id );
49 $this->lasso_id = $lasso_id;
50 $this->lasso_url = $lasso_url ? $lasso_url : Lasso_Affiliate_Link::get_lasso_url( $post_id );
51 }
52
53 /**
54 * Init instance
55 *
56 * @param int $post_id WP_Post ID.
57 * @param object $lasso_url Lasso url.
58 *
59 * @return Post
60 */
61
62 /**
63 * Get wp post ID
64 *
65 * @return int
66 */
67 public function get_post_id() {
68 return $this->post->ID;
69 }
70
71 /**
72 * Get JSON meta
73 *
74 * @param string $key Meta key.
75 *
76 * @return array
77 */
78 public function get_json_meta( $key ) {
79 $meta = get_post_meta( $this->post->ID, $key, true );
80
81 if ( is_string( $meta ) && ! empty( $meta ) ) {
82 $meta = json_decode( $meta, true );
83 }
84
85 if ( empty( $meta ) ) {
86 $meta = array();
87 }
88
89 return $meta;
90 }
91 }
92