| Server IP : 172.67.187.206 / Your IP : 172.71.28.155 Web Server : Apache/2.4.25 (Win32) OpenSSL/1.0.2j PHP/5.6.30 System : Windows NT WIN-ECQAAA40806 6.2 build 9200 (Windows Server 2012 Standard Edition) i586 User : SYSTEM ( 0) PHP Version : 5.6.30 Disable Function : NONE MySQL : ON | cURL : ON | WGET : OFF | Perl : OFF | Python : OFF | Sudo : OFF | Pkexec : OFF Directory : E:/Inetpub/www/training/wp-content/themes/flatsome/inc/builder/core/server/src/Post/ |
Upload File : |
<?php
namespace UxBuilder\Post;
use UxBuilder\Options\Options;
class PostOptions {
protected $attributes;
protected $meta;
public function __construct( $post ) {
$attribute_options = apply_filters( 'ux_builder_post_options', array(), $post );
$meta_options = apply_filters( 'ux_builder_meta_options', array(), $post );
$meta = get_post_meta( $post->ID, null, true );
$this->attributes = new Options( $attribute_options );
$this->meta = new Options( $meta_options );
foreach ( $this->attributes->get_options() as $name => $option ) {
$option->set_value( $post->{$name} );
}
foreach ( $this->meta->get_options() as $name => $option ) {
if ( array_key_exists( $name, $meta ) ) {
$option->set_value( maybe_unserialize( $meta[$name][0] ) );
}
}
}
public function get_attributes_array() {
return array(
'values' => $this->attributes->get_values(),
'options' => $this->attributes->to_array(),
);
}
public function get_meta_array() {
return array(
'values' => $this->meta->get_values(),
'options' => $this->meta->to_array(),
);
}
}