Ejemplo n.º 1
0
/**
 * Register settings‘ input fields.
 *
 * @since 1.0.0
 * @return void
 */
function cce_register_settings()
{
    if (false == get_option('cce_options')) {
        add_option('cce_options');
    }
    foreach (cce_get_registered_settings() as $tab => $settings) {
        add_settings_section('cce_settings_' . $tab, __return_null(), '__return_false', 'cce_settings_' . $tab);
        foreach ($settings as $option) {
            add_settings_field('cce_settings[' . $option['id'] . ']', '<label for="cce_settings_' . $tab . '[' . $option['id'] . ']">' . $option['name'] . '</label>', function_exists('cce_' . $option['type'] . '_callback') ? 'cce_' . $option['type'] . '_callback' : 'cce_missing_callback', 'cce_settings_' . $tab, 'cce_settings_' . $tab, array('id' => $option['id'], 'desc' => !empty($option['desc']) ? $option['desc'] : '', 'placeholder' => !empty($option['placeholder']) ? $option['placeholder'] : '', 'name' => $option['name'], 'section' => $tab, 'size' => isset($option['size']) ? $option['size'] : null, 'options' => isset($option['options']) ? $option['options'] : '', 'std' => isset($option['std']) ? $option['std'] : ''));
        }
    }
    register_setting('cce_options', 'cce_options', 'cce_settings_sanitize');
}
Ejemplo n.º 2
0
 function cce_social($atts)
 {
     $args = shortcode_atts(array('id' => 'all', 'style' => 'normal'), $atts, 'cce_social');
     $registered_settings = cce_get_registered_settings();
     $social_urls = array_keys($registered_settings['social']);
     $settings = get_option('cce_options');
     $output = '<div class="cce-social-icons ' . esc_attr($args['style']) . '">';
     if ($args['id'] == '' || $args['id'] == 'all') {
         $social_ids = $social_urls;
     } else {
         $social_ids = explode(',', $args['id']);
     }
     foreach ($social_ids as $slug) {
         $slug = trim($slug);
         if (isset($settings[$slug]) && $settings[$slug] != '') {
             $class = $slug;
             if ('mail' == $slug) {
                 $class = 'envelope';
             }
             if ('vimeo' == $slug) {
                 $class = 'vimeo-square';
             }
             $output .= "<a href='" . esc_url($settings[$slug]) . "' target='_blank'><i class='fa fa-" . esc_attr($class) . "'></i></a>";
         }
     }
     $output .= '</div>';
     return $output;
 }