/** * Build Plugin Metabox */ function wpbitly_build_metabox($post, $args) { global $wpbitly; $shortlink = $args['args'][0]; echo '<label class="screen-reader-text" for="new-tag-post_tag">WP Bit.ly</label>'; echo '<p style="margin-top: 8px;"><input type="text" id="wpbitly-shortlink" name="_wpbitly" size="32" autocomplete="off" value="' . $shortlink . '" style="margin-right: 4px; color: #aaa;" /></p>'; $url = sprintf($wpbitly->url['clicks'], $shortlink, $wpbitly->options['bitly_username'], $wpbitly->options['bitly_api_key']); $bitly_response = wpbitly_curl($url); echo '<h4 style="margin-left: 4px; margin-right: 4px; padding-bottom: 3px; border-bottom: 4px solid #eee;">Shortlink Stats</h4>'; if (is_array($bitly_response) && $bitly_response['status_code'] == 200) { echo "<p>Global Clicks: <strong>{$bitly_response['data']['clicks'][0]['global_clicks']}</strong><br/>"; echo "<p>User Clicks: <strong>{$bitly_response['data']['clicks'][0]['user_clicks']}</strong></p>"; } else { echo '<p class="error" style="padding: 4px;">There was a problem retrieving stats!</p>'; } }
function wpbitly_options_validate($input) { $option_parameters = wpbitly_get_option_parameters(); global $wpbitly_options; $valid_input = $wpbitly_options; // Bit.ly Username $valid_input['bitly_username'] = wp_filter_nohtml_kses($input['bitly_username']); // Bit.ly API Key $valid_input['bitly_api_key'] = wp_filter_nohtml_kses($input['bitly_api_key']); // Post Types if (!isset($input['post_types'])) { $input['post_types'] = array(); } else { foreach ($input['post_types'] as $post_type) { if (!in_array($post_type, $option_parameters['post_types']['valid_options'])) { unset($input[$post_type]); } } } $valid_input['post_types'] = $input['post_types']; // Admin Toolbar Link $valid_input['enable_admin_toolbar_shortlink'] = isset($input['enable_admin_toolbar_shortlink']) ? true : false; // Validate Bit.ly API handshake if (!empty($valid_input['bitly_username']) && !empty($valid_input['bitly_api_key'])) { global $wpbitly; $url = sprintf($wpbitly->url['validate'], $valid_input['bitly_username'], $valid_input['bitly_api_key']); $wpbitly_validate = wpbitly_curl($url); if (is_array($wpbitly_validate) && $wpbitly_validate['data']['valid'] == 1) { $valid = true; } } $valid_input['wpbitly_invalid'] = true === $valid ? false : true; return $valid_input; }