/** * * sorting array by order field * * @param array $array_in array to sort * @param array $fields list of fields * @param string $order_field order theme option field name * @return array array sorted by order column * @todo if statemend maby should by get from function param? */ public static function option_sort_by_order($array_in, $fields = array(), $order_field = 'order') { $array_out = array(); foreach ($array_in as $name => $label) { $name = String::sanitize_text_field($name); foreach ($fields as $key => $field) { if ('' != ($order = self::get_theme_option($order_field . '[' . $name . ']'))) { $field_value = self::get_theme_option($field . '[' . $name . ']'); $array_out[] = array('slug' => $name, 'label' => $label, 'order' => $order, $key => $field_value); } } } UtlArray::array_sort_by_column($array_out, 'order'); return $array_out; }
/** * List of all configured in theme option social accounts * * @return array * @static * @access public */ public static function getAccounts() { $accounts_list = Option::get_theme_option('social_accounts', true); $provider_list = silverwp_get_social_providers(); $social = array(); foreach ($provider_list as $provider) { foreach ($accounts_list as $slug => $value) { if (sanitize_title($provider['name']) == $slug && !empty($value['url'])) { $social[] = array('name' => $provider['name'], 'url' => $value['url'], 'order' => $value['order'], 'icon' => $provider['icon'], 'slug' => $slug); } } } UtlArray::array_sort_by_column($social, 'order'); return $social; }
/** * * get list of edit columns displayed in lists of Post Type * * * list of columns displayed in dashboard list. Example * array( * 'cb' => array( * 'html' => '<input type="checkbox" />', * ), * 'title' => array( * 'label' => 'Title', * ), * 'category' => array( * 'label' => 'Categories', * ), * 'thumbnail' => array( * 'label' => 'Thumbnail', * ), * 'tag' => array( * 'label' => 'Tags', * ), * 'date' => array( * 'label' => 'Date', * ), * 'author' => array( * 'label' => 'Author', * ), * ); * * @access protected * @return array */ protected function getEditColumns() { $columns_default = array('cb' => array('html' => '<input type="checkbox" />'), 'title' => array('label' => Translate::translate('Title')), 'thumbnail' => array('label' => Translate::translate('Thumbnail')), 'author' => array('label' => Translate::translate('Author')), 'date' => array('label' => Translate::translate('Date')), 'category' => array('label' => Translate::translate('Categories')), 'tag' => array('label' => Translate::translate('Tags'))); foreach ($this->columns as $name => $label) { $columns_default[$name]['label'] = $label; } $columns = UtlArray::array_remove_part($columns_default, $this->exclude_columns); return $columns; }