function get_post_option($option_name, $default = NULL, $post_id = NULL)
 {
     global $post, $tfuse_options;
     if (!isset($post_id) && isset($post)) {
         $post_id = $post->ID;
     }
     if (!isset($post_id)) {
         return;
     }
     $option_name = strtolower($this->_ext_name) . '_' . $option_name;
     if (isset($tfuse_options['post'][$post_id][$option_name])) {
         $value = $tfuse_options['post'][$post_id][$option_name];
     } else {
         $_options = get_post_meta($post_id, TF_THEME_PREFIX . '_tfuse_post_options', true);
         $tfuse_options['post'][$post_id] = decode_tfuse_options($_options);
         if (isset($tfuse_options['post'][$post_id][$option_name])) {
             $value = $tfuse_options['post'][$post_id][$option_name];
         }
     }
     if (isset($value) && $value !== '') {
         return $value;
     } else {
         return $default;
     }
 }
Beispiel #2
0
 public function massive()
 {
     $options = array();
     $options['framework'] = get_option(TF_THEME_PREFIX . '_tfuse_framework_options');
     $options['taxonomy'] = get_option(TF_THEME_PREFIX . '_tfuse_taxonomy_options');
     $options = decode_tfuse_options($options);
     return $options;
 }
/**
 * Set post tfuse option
 **
 * @param string $option_name Without prefix
 * @param mixed $value
 * @param null $post_id
 */
function tfuse_set_page_option($option_name, $value, $post_id = null)
{
    global $post, $tfuse_options;
    $max_cache_size = 100;
    if (!isset($post_id) && isset($post)) {
        $post_id = $post->ID;
    }
    if (!isset($post_id)) {
        return;
    }
    // optiunile sunt slavate cu PREFIX in fata, dar extragem scrim fara PREFIX
    // pentru a obtine PREFIX_logo vom folosi tfuse_page_options('logo')
    $option_name = TF_THEME_PREFIX . '_' . $option_name;
    if (!isset($tfuse_options['post'][$post_id])) {
        if (!empty($tfuse_options['post']) && count($tfuse_options['post']) > $max_cache_size) {
            // if cache limit exceeded, remove first element from cache
            array_shift($tfuse_options['post']);
        }
        $tfuse_options['post'][$post_id] = decode_tfuse_options(get_post_meta($post_id, TF_THEME_PREFIX . '_tfuse_post_options', true));
    }
    $tfuse_options['post'][$post_id][$option_name] = $value;
    tf_update_post_meta($post_id, TF_THEME_PREFIX . '_tfuse_post_options', encode_tfuse_options($tfuse_options['post'][$post_id]));
}
 function get_sliders($doNotDecode = false)
 {
     if ($doNotDecode) {
         $backup = @$this->sliders;
         unset($this->sliders);
     }
     if (!isset($this->sliders) || $this->sliders === FALSE) {
         $db = (array) get_option(TF_THEME_PREFIX . '_tfuse_slider');
         $this->sliders = $db;
     } else {
         return array_reverse($this->sliders);
     }
     if ($db === false) {
         return array();
     }
     if ($db) {
         $db_keys = array_keys($db);
         $change = TRUE;
         while ($change) {
             $change = FALSE;
             for ($i = 1; $i < count($db_keys); $i++) {
                 if ($db[$db_keys[$i]]['created_at'] > $db[$db_keys[$i - 1]]['created_at']) {
                     $tmp = $db_keys[$i];
                     $db_keys[$i] = $db_keys[$i - 1];
                     $db_keys[$i - 1] = $tmp;
                     $change = TRUE;
                 }
             }
         }
         $new_db = array();
         foreach ($db_keys as $key => $val) {
             $new_db[$val] = $db[$val];
         }
         $db = $new_db;
         unset($new_db);
     }
     $db = array_filter(array_reverse($db));
     if ($doNotDecode) {
         // Do not transform 'true' into true/1
         if ($backup) {
             $this->sliders = $backup;
         } else {
             unset($this->sliders);
         }
         unset($backup);
     } else {
         $db = decode_tfuse_options($db);
         // Transform (string)'true' into (bool)true
         $this->sliders = $db;
     }
     return $db;
 }