当前位置: 首页>>代码示例>>PHP>>正文


PHP Sharing_Service::get_blog_services方法代码示例

本文整理汇总了PHP中Sharing_Service::get_blog_services方法的典型用法代码示例。如果您正苦于以下问题:PHP Sharing_Service::get_blog_services方法的具体用法?PHP Sharing_Service::get_blog_services怎么用?PHP Sharing_Service::get_blog_services使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在Sharing_Service的用法示例。


在下文中一共展示了Sharing_Service::get_blog_services方法的13个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。

示例1: return

 function get_default_sharing_status()
 {
     $default_sharing_status = false;
     if (class_exists('Sharing_Service')) {
         $ss = new Sharing_Service();
         $blog_services = $ss->get_blog_services();
         $default_sharing_status = !empty($blog_services['visible']);
     }
     return (bool) $default_sharing_status;
 }
开发者ID:elliott-stocks,项目名称:jetpack,代码行数:10,代码来源:class.json-api-site-base.php

示例2: sharing_display

function sharing_display($text = '', $echo = false)
{
    global $post, $wp_current_filter;
    if (empty($post)) {
        return $text;
    }
    if ((is_preview() || is_admin()) && !(defined('DOING_AJAX') && DOING_AJAX)) {
        return $text;
    }
    // Don't output flair on excerpts
    if (in_array('get_the_excerpt', (array) $wp_current_filter)) {
        return $text;
    }
    // Don't allow flair to be added to the_content more than once (prevent infinite loops)
    $done = false;
    foreach ($wp_current_filter as $filter) {
        if ('the_content' == $filter) {
            if ($done) {
                return $text;
            } else {
                $done = true;
            }
        }
    }
    // check whether we are viewing the front page and whether the front page option is checked
    $options = get_option('sharing-options');
    $display_options = $options['global']['show'];
    if (is_front_page() && (is_array($display_options) && !in_array('index', $display_options))) {
        return $text;
    }
    if (is_attachment() && in_array('the_excerpt', (array) $wp_current_filter)) {
        // Many themes run the_excerpt() conditionally on an attachment page, then run the_content().
        // We only want to output the sharing buttons once.  Let's stick with the_content().
        return $text;
    }
    $sharer = new Sharing_Service();
    $global = $sharer->get_global_options();
    $show = false;
    if (!is_feed()) {
        if (is_singular() && in_array(get_post_type(), $global['show'])) {
            $show = true;
        } elseif (in_array('index', $global['show']) && (is_home() || is_front_page() || is_archive() || is_search() || in_array(get_post_type(), $global['show']))) {
            $show = true;
        }
    }
    /**
     * Filter to decide if sharing buttons should be displayed.
     *
     * @module sharedaddy
     *
     * @since 1.1.0
     *
     * @param bool $show Should the sharing buttons be displayed.
     * @param WP_Post $post The post to share.
     */
    $show = apply_filters('sharing_show', $show, $post);
    // Disabled for this post?
    $switched_status = get_post_meta($post->ID, 'sharing_disabled', false);
    if (!empty($switched_status)) {
        $show = false;
    }
    // Private post?
    $post_status = get_post_status($post->ID);
    if ('private' === $post_status) {
        $show = false;
    }
    // Allow to be used on P2 ajax requests for latest posts.
    if (defined('DOING_AJAX') && DOING_AJAX && isset($_REQUEST['action']) && 'get_latest_posts' == $_REQUEST['action']) {
        $show = true;
    }
    $sharing_content = '';
    if ($show) {
        /**
         * Filters the list of enabled Sharing Services.
         *
         * @module sharedaddy
         *
         * @since 2.2.3
         *
         * @param array $sharer->get_blog_services() Array of Sharing Services currently enabled.
         */
        $enabled = apply_filters('sharing_enabled', $sharer->get_blog_services());
        if (count($enabled['all']) > 0) {
            global $post;
            $dir = get_option('text_direction');
            // Wrapper
            $sharing_content .= '<div class="sharedaddy sd-sharing-enabled"><div class="robots-nocontent sd-block sd-social sd-social-' . $global['button_style'] . ' sd-sharing">';
            if ($global['sharing_label'] != '') {
                $sharing_content .= '<h3 class="sd-title">' . $global['sharing_label'] . '</h3>';
            }
            $sharing_content .= '<div class="sd-content"><ul>';
            // Visible items
            $visible = '';
            foreach ($enabled['visible'] as $id => $service) {
                // Individual HTML for sharing service
                $visible .= '<li class="share-' . $service->get_class() . '">' . $service->get_display($post) . '</li>';
            }
            $parts = array();
            $parts[] = $visible;
            if (count($enabled['hidden']) > 0) {
//.........这里部分代码省略.........
开发者ID:StefanBonilla,项目名称:CoupSoup,代码行数:101,代码来源:sharing-service.php

示例3: management_page

    public function management_page()
    {
        $sharer = new Sharing_Service();
        $enabled = $sharer->get_blog_services();
        $global = $sharer->get_global_options();
        $shows = array_values(get_post_types(array('public' => true)));
        array_unshift($shows, 'index');
        if (false == function_exists('mb_stripos')) {
            echo '<div id="message" class="updated fade"><h3>' . __('Warning! Multibyte support missing!', 'jetpack') . '</h3>';
            echo "<p>" . sprintf(__('This plugin will work without it, but multibyte support is used <a href="%s">if available</a>. You may see minor problems with Tweets and other sharing services.', 'jetpack'), "http://www.php.net/manual/en/mbstring.installation.php") . '</p></div>';
        }
        if (isset($_GET['update']) && $_GET['update'] == 'saved') {
            echo '<div class="updated"><p>' . __('Settings have been saved', 'jetpack') . '</p></div>';
        }
        if (!isset($global['sharing_label'])) {
            $global['sharing_label'] = __('Share this:', 'jetpack');
        }
        ?>

	<div class="wrap">
		<div class="icon32" id="icon-options-general"><br /></div>
		<h2><?php 
        _e('Sharing Settings', 'jetpack');
        ?>
</h2>

		<?php 
        /**
         * Fires at the top of the admin sharing settings screen.
         *
         * @since 1.6.0
         */
        do_action('pre_admin_screen_sharing');
        ?>

		<?php 
        if (current_user_can('manage_options')) {
            ?>

		<div class="share_manage_options">
		<h3><?php 
            _e('Sharing Buttons', 'jetpack');
            ?>
</h3>
		<p><?php 
            _e('Add sharing buttons to your blog and allow your visitors to share posts with their friends.', 'jetpack');
            ?>
</p>

		<div id="services-config">
			<table id="available-services">
					<tr>
					<td class="description">
						<h3><?php 
            _e('Available Services', 'jetpack');
            ?>
</h3>
						<p><?php 
            _e("Drag and drop the services you'd like to enable into the box below.", 'jetpack');
            ?>
</p>
						<p><a href="#TB_inline?height=395&amp;width=600&amp;inlineId=new-service" class="thickbox" id="add-a-new-service"><?php 
            _e('Add a new service', 'jetpack');
            ?>
</a></p>
					</td>
					<td class="services">
						<ul class="services-available" style="height: 100px;">
							<?php 
            foreach ($sharer->get_all_services_blog() as $id => $service) {
                ?>
								<?php 
                if (!isset($enabled['all'][$id])) {
                    $this->output_service($id, $service);
                }
                ?>
							<?php 
            }
            ?>
						</ul>
						<?php 
            if (-1 == get_option('blog_public')) {
                echo '<p><strong>' . __('Please note that your services have been restricted because your site is private.', 'jetpack') . '</strong></p>';
            }
            ?>
						<br class="clearing" />
					</td>
					</tr>
			</table>

			<table id="enabled-services">
				<tr>
					<td class="description">
						<h3>
							<?php 
            _e('Enabled Services', 'jetpack');
            ?>
							<img src="<?php 
            echo admin_url('images/loading.gif');
            ?>
//.........这里部分代码省略.........
开发者ID:annbransom,项目名称:techishowl_prod_backup,代码行数:101,代码来源:sharing.php

示例4: management_page

    public function management_page()
    {
        $sharer = new Sharing_Service();
        $enabled = $sharer->get_blog_services();
        $global = $sharer->get_global_options();
        $shows = array_values(get_post_types(array('public' => true)));
        array_unshift($shows, 'index');
        if (false == function_exists('mb_stripos')) {
            echo '<div id="message" class="updated fade"><h3>' . __('Warning! Multibyte support missing!', 'jetpack') . '</h3>';
            echo "<p>" . sprintf(__('This plugin will work without it, but multibyte support is used <a href="%s">if available</a>. You may see minor problems with Tweets and other sharing services.', 'jetpack'), "http://www.php.net/manual/en/mbstring.installation.php") . '</p></div>';
        }
        if (isset($_GET['update']) && $_GET['update'] == 'saved') {
            echo '<div class="updated"><p>' . __('Settings have been saved', 'jetpack') . '</p></div>';
        }
        ?>

	<div class="wrap">
	  	<div class="icon32" id="icon-options-general"><br /></div>
	  	<h2><?php 
        _e('Sharing Settings', 'jetpack');
        ?>
</h2>
	  	
	  	<div id="services-config">
	  		<table id="available-services">
					<tr>
		  			<td class="description">
		  				<h3><?php 
        _e('Available Services', 'jetpack');
        ?>
</h3>
		  				<p><?php 
        _e("Drag and drop the services you'd like to enable into the box below.", 'jetpack');
        ?>
</p>
		  				<p><a href="#TB_inline?height=395&amp;width=600&amp;inlineId=new-service" title="<?php 
        echo esc_attr(__('Add a new service', 'jetpack'));
        ?>
" class="thickbox"><?php 
        _e('Add a new service', 'jetpack');
        ?>
</a></p>
		  			</td>
		  			<td class="services">
		  				<ul class="services-available" style="height: 100px;">
	  						<?php 
        foreach ($sharer->get_all_services_blog() as $id => $service) {
            ?>
	  							<?php 
            if (!isset($enabled['all'][$id])) {
                $this->output_service($id, $service);
            }
            ?>
	  						<?php 
        }
        ?>
		  				</ul>
		  				<br class="clearing" />
		  			</td>
					</tr>
	  		</table>
	
  			<table id="enabled-services">
  				<tr>
  					<td class="description">
						<h3>
							<?php 
        _e('Enabled Services', 'jetpack');
        ?>
							<img src="<?php 
        echo admin_url('images/loading.gif');
        ?>
" width="16" height="16" alt="loading" style="vertical-align: middle; display: none" />
						</h3>
						<p><?php 
        _e('Services dragged here will appear individually.', 'jetpack');
        ?>
</p>
  					</td>
	  				<td class="services" id="share-drop-target">
			  				<h2 id="drag-instructions" <?php 
        if (count($enabled['visible']) > 0) {
            echo ' style="display: none"';
        }
        ?>
><?php 
        _e('Drag and drop available services here', 'jetpack');
        ?>
</h2>
			  				
								<ul class="services-enabled">
									<?php 
        foreach ($enabled['visible'] as $id => $service) {
            ?>
										<?php 
            $this->output_service($id, $service, true);
            ?>
									<?php 
        }
        ?>
//.........这里部分代码省略.........
开发者ID:jfitzsimmons,项目名称:hoseb.com,代码行数:101,代码来源:sharing.php

示例5: build_current_site_response


//.........这里部分代码省略.........
                     $response[$key] = 0;
                     // magic
                 }
                 break;
             case 'is_following':
                 $response[$key] = (bool) $this->api->is_following($blog_id);
                 break;
             case 'options':
                 // Figure out if the blog supports VideoPress, have to do some extra checking for JP blogs
                 $has_videopress = false;
                 if (get_option('video_upgrade') == '1') {
                     $has_videopress = true;
                 } else {
                     if (class_exists('Jetpack_Options')) {
                         $videopress = Jetpack_Options::get_option('videopress', array());
                         if (isset($videopress['blog_id']) && $videopress['blog_id'] > 0) {
                             $has_videopress = true;
                         }
                     }
                 }
                 // deprecated - see separate endpoint. get a list of supported post formats
                 $all_formats = get_post_format_strings();
                 $supported = get_theme_support('post-formats');
                 $supported_formats = array();
                 if (isset($supported[0])) {
                     foreach ($supported[0] as $format) {
                         $supported_formats[$format] = $all_formats[$format];
                     }
                 }
                 // determine if sharing buttons should be visible by default
                 $default_sharing_status = false;
                 if (class_exists('Sharing_Service')) {
                     $ss = new Sharing_Service();
                     $blog_services = $ss->get_blog_services();
                     $default_sharing_status = !empty($blog_services['visible']);
                 }
                 $is_mapped_domain = false;
                 if (function_exists('get_primary_redirect')) {
                     $primary_redirect = strtolower(get_primary_redirect());
                     if (false === strpos($primary_redirect, '.wordpress.com')) {
                         $is_mapped_domain = true;
                     }
                 }
                 $is_redirect = false;
                 if (function_exists('get_primary_domain_mapping_record')) {
                     if (get_primary_domain_mapping_record()->type == 1) {
                         $is_redirect = true;
                     }
                 }
                 if (function_exists('get_mime_types')) {
                     $allowed_file_types = get_mime_types();
                 } else {
                     // http://codex.wordpress.org/Uploading_Files
                     $mime_types = get_allowed_mime_types();
                     foreach ($mime_types as $type => $mime_type) {
                         $extras = explode('|', $type);
                         foreach ($extras as $extra) {
                             $allowed_file_types[] = $extra;
                         }
                     }
                 }
                 if (function_exists('get_blog_details')) {
                     $blog_details = get_blog_details();
                     if (!empty($blog_details->registered)) {
                         $registered_date = $blog_details->registered;
                     }
开发者ID:rbryerking,项目名称:skillcrush-wordpress,代码行数:67,代码来源:class.wpcom-json-api-get-site-endpoint.php

示例6: prepare_options_for_response

 /**
  * Remove 'validate_callback' item from options available for module.
  * Fetch current option value and add to array of module options.
  * Prepare values of module options that need special handling, like those saved in wpcom.
  *
  * @since 4.3.0
  *
  * @param string $module Module slug.
  * @return array
  */
 public static function prepare_options_for_response($module = '')
 {
     $options = self::get_module_available_options($module);
     if (!is_array($options) || empty($options)) {
         return $options;
     }
     foreach ($options as $key => $value) {
         if (isset($options[$key]['validate_callback'])) {
             unset($options[$key]['validate_callback']);
         }
         $default_value = isset($options[$key]['default']) ? $options[$key]['default'] : '';
         $current_value = get_option($key, $default_value);
         $options[$key]['current_value'] = self::cast_value($current_value, $options[$key]);
     }
     // Some modules need special treatment.
     switch ($module) {
         case 'monitor':
             // Status of user notifications
             $options['monitor_receive_notifications']['current_value'] = self::cast_value(self::get_remote_value('monitor', 'monitor_receive_notifications'), $options['monitor_receive_notifications']);
             break;
         case 'post-by-email':
             // Email address
             $options['post_by_email_address']['current_value'] = self::cast_value(self::get_remote_value('post-by-email', 'post_by_email_address'), $options['post_by_email_address']);
             break;
         case 'protect':
             // Protect
             $options['jetpack_protect_key']['current_value'] = get_site_option('jetpack_protect_key', false);
             if (!function_exists('jetpack_protect_format_whitelist')) {
                 @(include JETPACK__PLUGIN_DIR . 'modules/protect/shared-functions.php');
             }
             $options['jetpack_protect_global_whitelist']['current_value'] = jetpack_protect_format_whitelist();
             break;
         case 'related-posts':
             // It's local, but it must be broken apart since it's saved as an array.
             $options = self::split_options($options, Jetpack_Options::get_option('relatedposts'));
             break;
         case 'verification-tools':
             // It's local, but it must be broken apart since it's saved as an array.
             $options = self::split_options($options, get_option('verification_services_codes'));
             break;
         case 'sharedaddy':
             // It's local, but it must be broken apart since it's saved as an array.
             if (!class_exists('Sharing_Service') && !@(include JETPACK__PLUGIN_DIR . 'modules/sharedaddy/sharing-service.php')) {
                 break;
             }
             $sharer = new Sharing_Service();
             $options = self::split_options($options, $sharer->get_global_options());
             $options['sharing_services']['current_value'] = $sharer->get_blog_services();
             break;
         case 'site-icon':
             // Return site icon ID and URL to make it more complete.
             $options['site_icon_id']['current_value'] = Jetpack_Options::get_option('site_icon_id');
             if (!function_exists('jetpack_site_icon_url')) {
                 @(include JETPACK__PLUGIN_DIR . 'modules/site-icon/site-icon-functions.php');
             }
             $options['site_icon_url']['current_value'] = jetpack_site_icon_url();
             break;
         case 'after-the-deadline':
             if (!function_exists('AtD_get_options')) {
                 @(include JETPACK__PLUGIN_DIR . 'modules/after-the-deadline.php');
             }
             $atd_options = array_merge(AtD_get_options(get_current_user_id(), 'AtD_options'), AtD_get_options(get_current_user_id(), 'AtD_check_when'));
             unset($atd_options['name']);
             foreach ($atd_options as $key => $value) {
                 $options[$key]['current_value'] = self::cast_value($value, $options[$key]);
             }
             $atd_options = AtD_get_options(get_current_user_id(), 'AtD_guess_lang');
             $options['guess_lang']['current_value'] = self::cast_value(isset($atd_options['true']), $options['guess_lang']);
             $options['ignored_phrases']['current_value'] = AtD_get_setting(get_current_user_id(), 'AtD_ignored_phrases');
             unset($options['unignore_phrase']);
             break;
         case 'minileven':
             $options['wp_mobile_excerpt']['current_value'] = 1 === intval($options['wp_mobile_excerpt']['current_value']) ? 'enabled' : 'disabled';
             $options['wp_mobile_featured_images']['current_value'] = 1 === intval($options['wp_mobile_featured_images']['current_value']) ? 'enabled' : 'disabled';
             break;
         case 'stats':
             // It's local, but it must be broken apart since it's saved as an array.
             if (!function_exists('stats_get_options')) {
                 @(include JETPACK__PLUGIN_DIR . 'modules/stats.php');
             }
             $options = self::split_options($options, stats_get_options());
             break;
     }
     return $options;
 }
开发者ID:iamtakashi,项目名称:jetpack,代码行数:95,代码来源:class.core-rest-api-endpoints.php

示例7: callback

 public function callback($path = '', $blog_id = 0, $button_id = 0)
 {
     $new = $this->api->ends_with($path, '/new');
     $input = $this->input();
     // Validate request
     $blog_id = $this->api->switch_to_blog_and_validate_user($this->api->get_blog_id($blog_id));
     if (is_wp_error($blog_id)) {
         return $blog_id;
     }
     if (!current_user_can('manage_options')) {
         return new WP_Error('forbidden', 'You do not have the capability to manage sharing buttons for this site', 403);
     } else {
         if (!class_exists('Sharing_Service') || !class_exists('Sharing_Source') || method_exists('Jetpack', 'is_module_active') && !Jetpack::is_module_active('sharedaddy')) {
             return new WP_Error('missing_jetpack_module', 'The Sharing module must be activated in order to use this endpoint', 400);
         } else {
             if (!empty($input['visibility']) && !in_array($input['visibility'], WPCOM_JSON_API_Get_Sharing_Buttons_Endpoint::$all_visibilities)) {
                 return new WP_Error('invalid_visibility', sprintf('The visibility field must be one of the following values: %s', implode(', ', WPCOM_JSON_API_Get_Sharing_Buttons_Endpoint::$all_visibilities)), 400);
             } else {
                 if ($new && empty($input['URL'])) {
                     return new WP_Error('invalid_request', 'The URL field is required', 400);
                 } else {
                     if ($new && empty($input['icon'])) {
                         return new WP_Error('invalid_request', 'The icon field is required', 400);
                     }
                 }
             }
         }
     }
     // Assign default values
     $visibility = $input['visibility'];
     if (empty($visibility) || !isset($input['visibility']) && true === $input['enabled']) {
         $visibility = 'visible';
     }
     // Update or create button
     $ss = new Sharing_Service();
     $blog_services = $ss->get_blog_services();
     if ($new) {
         // Attempt to create new button
         $updated_service = $ss->new_service($input['name'], $input['URL'], $input['icon']);
         if (false !== $updated_service && (isset($input['enabled']) && true === $input['enabled'] || isset($input['visibility']))) {
             $blog_services[$visibility][(string) $updated_service->get_id()] = $updated_service;
             $ss->set_blog_services(array_keys($blog_services['visible']), array_keys($blog_services['hidden']));
         }
     } else {
         // Find existing button
         $all_buttons = $ss->get_all_services_blog();
         if (!array_key_exists($button_id, $all_buttons)) {
             // Button doesn't exist
             return new WP_Error('not_found', 'The specified sharing button was not found', 404);
         }
         $updated_service = $all_buttons[$button_id];
         $service_id = $updated_service->get_id();
         if (is_a($all_buttons[$button_id], 'Share_Custom')) {
             // Replace options for existing custom button
             $options = $updated_service->get_options();
             $name = isset($input['name']) ? $input['name'] : $options['name'];
             $url = isset($input['URL']) ? $input['URL'] : $options['url'];
             $icon = isset($input['icon']) ? $input['icon'] : $options['icon'];
             $updated_service = new Share_Custom($service_id, array('name' => $name, 'url' => $url, 'icon' => $icon));
             $ss->set_service($button_id, $updated_service);
         }
         // Update button visibility
         $visibility_changed = (isset($input['visibility']) || true === $input['enabled']) && !array_key_exists($service_id, $blog_services[$visibility]);
         $is_disabling = false === $input['enabled'];
         if ($visibility_changed || $is_disabling) {
             // Remove from all other visibilities
             foreach ($blog_services as $service_visibility => $services) {
                 if ($service_visibility !== $visibility || $is_disabling) {
                     unset($blog_services[$service_visibility][$service_id]);
                 }
             }
             if ($visibility_changed) {
                 $blog_services[$visibility][$service_id] = $updated_service;
             }
             $ss->set_blog_services(array_keys($blog_services['visible']), array_keys($blog_services['hidden']));
         }
     }
     if (false === $updated_service) {
         return new WP_Error('invalid_request', sprintf('The sharing button was not %s', $new ? 'created' : 'updated'), 400);
     } else {
         return WPCOM_JSON_API_Get_Sharing_Button_Endpoint::format_sharing_button($ss, $updated_service);
     }
 }
开发者ID:moushegh,项目名称:blog-source-configs,代码行数:83,代码来源:class.wpcom-json-api-sharing-buttons-endpoint.php

示例8: build_current_site_response


//.........这里部分代码省略.........
                         $response[$key] = array('img' => (string) remove_query_arg('s', blavatar_url($domain, 'img')), 'ico' => (string) remove_query_arg('s', blavatar_url($domain, 'ico')));
                     }
                 } elseif (function_exists('jetpack_site_icon_url') && function_exists('jetpack_photon_url')) {
                     $response[$key] = array('img' => (string) jetpack_photon_url(jetpack_site_icon_url(get_current_blog_id(), 80), array('w' => 80), 'https'), 'ico' => (string) jetpack_photon_url(jetpack_site_icon_url(get_current_blog_id(), 16), array('w' => 16), 'https'));
                 }
                 break;
             case 'logo':
                 // Set an empty response array.
                 $response[$key] = array('id' => (int) 0, 'sizes' => array(), 'url' => '');
                 // Get current site logo values.
                 $logo = get_option('site_logo');
                 // Update the response array if there's a site logo currenty active.
                 if ($logo && 0 != $logo['id']) {
                     $response[$key]['id'] = $logo['id'];
                     $response[$key]['url'] = $logo['url'];
                     foreach ($logo['sizes'] as $size => $properties) {
                         $response[$key]['sizes'][$size] = $properties;
                     }
                 }
                 break;
             case 'subscribers_count':
                 if (function_exists('wpcom_subs_total_wpcom_subscribers')) {
                     $total_wpcom_subs = wpcom_subs_total_wpcom_subscribers(array('blog_id' => $blog_id));
                     $response[$key] = $total_wpcom_subs;
                 } else {
                     $response[$key] = 0;
                     // magic
                 }
                 break;
             case 'is_following':
                 $response[$key] = (bool) $this->api->is_following($blog_id);
                 break;
             case 'options':
                 // Figure out if the blog supports VideoPress, have to do some extra checking for JP blogs
                 $has_videopress = false;
                 if (get_option('video_upgrade') == '1') {
                     $has_videopress = true;
                 } else {
                     if (class_exists('Jetpack_Options')) {
                         $videopress = Jetpack_Options::get_option('videopress', array());
                         if ($videopress['blog_id'] > 0) {
                             $has_videopress = true;
                         }
                     }
                 }
                 // deprecated - see separate endpoint. get a list of supported post formats
                 $all_formats = get_post_format_strings();
                 $supported = get_theme_support('post-formats');
                 $supported_formats = array();
                 if (isset($supported[0])) {
                     foreach ($supported[0] as $format) {
                         $supported_formats[$format] = $all_formats[$format];
                     }
                 }
                 // determine if sharing buttons should be visible by default
                 $default_sharing_status = false;
                 if (class_exists('Sharing_Service')) {
                     $ss = new Sharing_Service();
                     $blog_services = $ss->get_blog_services();
                     $default_sharing_status = !empty($blog_services['visible']);
                 }
                 $is_mapped_domain = false;
                 if (function_exists('get_primary_redirect')) {
                     $primary_redirect = strtolower(get_primary_redirect());
                     if (false === strpos($primary_redirect, '.wordpress.com')) {
                         $is_mapped_domain = true;
                     }
                 }
                 if (function_exists('get_mime_types')) {
                     $allowed_file_types = get_mime_types();
                 } else {
                     // http://codex.wordpress.org/Uploading_Files
                     $mime_types = get_allowed_mime_types();
                     foreach ($mime_types as $type => $mime_type) {
                         $extras = explode('|', $type);
                         foreach ($extras as $extra) {
                             $allowed_file_types[] = $extra;
                         }
                     }
                 }
                 $response[$key] = array('timezone' => (string) get_option('timezone_string'), 'gmt_offset' => (double) get_option('gmt_offset'), 'videopress_enabled' => $has_videopress, 'login_url' => wp_login_url(), 'admin_url' => get_admin_url(), 'is_mapped_domain' => $is_mapped_domain, 'unmapped_url' => get_site_url($blog_id), 'featured_images_enabled' => current_theme_supports('post-thumbnails'), 'header_image' => get_theme_mod('header_image_data'), 'background_color' => get_theme_mod('background_color'), 'image_default_link_type' => get_option('image_default_link_type'), 'image_thumbnail_width' => (int) get_option('thumbnail_size_w'), 'image_thumbnail_height' => (int) get_option('thumbnail_size_h'), 'image_thumbnail_crop' => get_option('thumbnail_crop'), 'image_medium_width' => (int) get_option('medium_size_w'), 'image_medium_height' => (int) get_option('medium_size_h'), 'image_large_width' => (int) get_option('large_size_w'), 'image_large_height' => (int) get_option('large_size_h'), 'post_formats' => $supported_formats, 'allowed_file_types' => $allowed_file_types, 'default_likes_enabled' => (bool) apply_filters('wpl_is_enabled_sitewide', !get_option('disabled_likes')), 'default_sharing_status' => (bool) $default_sharing_status, 'default_comment_status' => 'closed' == get_option('default_comment_status') ? false : true, 'default_ping_status' => 'closed' == get_option('default_ping_status') ? false : true, 'software_version' => $wp_version);
                 if (!current_user_can('edit_posts')) {
                     unset($response[$key]);
                 }
                 break;
             case 'meta':
                 $xmlrpc_scheme = apply_filters('wpcom_json_api_xmlrpc_scheme', parse_url(get_option('home'), PHP_URL_SCHEME));
                 $xmlrpc_url = site_url('xmlrpc.php', $xmlrpc_scheme);
                 $response[$key] = (object) array('links' => (object) array('self' => (string) $this->get_site_link($blog_id), 'help' => (string) $this->get_site_link($blog_id, 'help'), 'posts' => (string) $this->get_site_link($blog_id, 'posts/'), 'comments' => (string) $this->get_site_link($blog_id, 'comments/'), 'xmlrpc' => (string) $xmlrpc_url));
                 break;
         }
     }
     if ($is_jetpack) {
         add_filter('option_stylesheet', 'fix_theme_location');
         if ('https' !== parse_url($site_url, PHP_URL_SCHEME)) {
             remove_filter('set_url_scheme', array($this, 'force_http'), 10, 3);
         }
     }
     return $response;
 }
开发者ID:sdh100shaun,项目名称:pantheon,代码行数:101,代码来源:class.wpcom-json-api-get-site-endpoint.php

示例9: build_current_site_response


//.........这里部分代码省略.........
                 break;
             case 'jetpack':
                 $response[$key] = false;
                 // magic
                 break;
             case 'is_private':
                 if (defined('IS_WPCOM') && IS_WPCOM) {
                     $public_setting = get_option('blog_public');
                     if (-1 == $public_setting) {
                         $response[$key] = true;
                     } else {
                         $response[$key] = false;
                     }
                 } else {
                     $response[$key] = false;
                     // magic
                 }
                 break;
             case 'visible':
                 if ($is_user_logged_in) {
                     $is_visible = true;
                     if (isset($visible[$blog_id])) {
                         $is_visible = $visible[$blog_id];
                     }
                     // null and true are visible
                     $response[$key] = $is_visible;
                 }
                 break;
             case 'post_count':
                 if ($is_user_logged_in) {
                     $response[$key] = (int) $wpdb->get_var("SELECT COUNT(*) FROM {$wpdb->posts} WHERE post_status = 'publish'");
                 }
                 break;
             case 'lang':
                 if ($is_user_logged_in) {
                     $response[$key] = (string) get_bloginfo('language');
                 }
                 break;
             case 'icon':
                 if (function_exists('blavatar_domain') && function_exists('blavatar_exists') && function_exists('blavatar_url')) {
                     $domain = blavatar_domain(home_url());
                     if (blavatar_exists($domain)) {
                         $response[$key] = array('img' => (string) remove_query_arg('s', blavatar_url($domain, 'img')), 'ico' => (string) remove_query_arg('s', blavatar_url($domain, 'ico')));
                     }
                 }
                 break;
             case 'subscribers_count':
                 if (function_exists('wpcom_subs_total_wpcom_subscribers')) {
                     $total_wpcom_subs = wpcom_subs_total_wpcom_subscribers(array('blog_id' => $blog_id));
                     $response[$key] = $total_wpcom_subs;
                 } else {
                     $response[$key] = 0;
                     // magic
                 }
                 break;
             case 'is_following':
                 $response[$key] = (bool) $this->api->is_following($blog_id);
                 break;
             case 'options':
                 // Figure out if the blog supports VideoPress, have to do some extra checking for JP blogs
                 $has_videopress = false;
                 if (get_option('video_upgrade') == '1') {
                     $has_videopress = true;
                 } else {
                     if (class_exists('Jetpack_Options')) {
                         $videopress = Jetpack_Options::get_option('videopress', array());
                         if ($videopress['blog_id'] > 0) {
                             $has_videopress = true;
                         }
                     }
                 }
                 // Get a list of supported post formats
                 $all_formats = get_post_format_strings();
                 $supported = get_theme_support('post-formats');
                 $supported_formats = array();
                 if (isset($supported[0])) {
                     foreach ($supported[0] as $format) {
                         $supported_formats[$format] = $all_formats[$format];
                     }
                 }
                 // determine if sharing buttons should be visible by default
                 $default_sharing_status = false;
                 if (class_exists('Sharing_Service')) {
                     $ss = new Sharing_Service();
                     $blog_services = $ss->get_blog_services();
                     $default_sharing_status = !empty($blog_services['visible']);
                 }
                 $response[$key] = array('timezone' => (string) get_option('timezone_string'), 'gmt_offset' => (double) get_option('gmt_offset'), 'videopress_enabled' => $has_videopress, 'login_url' => wp_login_url(), 'admin_url' => get_admin_url(), 'featured_images_enabled' => current_theme_supports('post-thumbnails'), 'header_image' => get_theme_mod('header_image_data'), 'image_default_link_type' => get_option('image_default_link_type'), 'image_thumbnail_width' => (int) get_option('thumbnail_size_w'), 'image_thumbnail_height' => (int) get_option('thumbnail_size_h'), 'image_thumbnail_crop' => get_option('thumbnail_crop'), 'image_medium_width' => (int) get_option('medium_size_w'), 'image_medium_height' => (int) get_option('medium_size_h'), 'image_large_width' => (int) get_option('large_size_w'), 'image_large_height' => (int) get_option('large_size_h'), 'post_formats' => $supported_formats, 'default_likes_enabled' => (bool) apply_filters('wpl_is_enabled_sitewide', !get_option('disabled_likes')), 'default_sharing_status' => (bool) $default_sharing_status, 'default_comment_status' => 'closed' == get_option('default_comment_status') ? false : true, 'default_ping_status' => 'closed' == get_option('default_ping_status') ? false : true, 'software_version' => $wp_version);
                 if (!current_user_can('publish_posts')) {
                     unset($response[$key]);
                 }
                 break;
             case 'meta':
                 $xmlrpc_url = site_url('xmlrpc.php');
                 $response[$key] = (object) array('links' => (object) array('self' => (string) $this->get_site_link($blog_id), 'help' => (string) $this->get_site_link($blog_id, 'help'), 'posts' => (string) $this->get_site_link($blog_id, 'posts/'), 'comments' => (string) $this->get_site_link($blog_id, 'comments/'), 'xmlrpc' => (string) $xmlrpc_url));
                 break;
         }
     }
     return $response;
 }
开发者ID:lokenxo,项目名称:familygenerator,代码行数:101,代码来源:class.wpcom-json-api-get-site-endpoint.php

示例10: update_data


//.........这里部分代码省略.........
                 if (preg_match('/[a-z0-9]{40,}/i', $result)) {
                     $response[$option] = $result;
                     $updated = true;
                 }
                 break;
             case 'jetpack_protect_global_whitelist':
                 $updated = jetpack_protect_save_whitelist(explode(PHP_EOL, str_replace(array(' ', ','), array('', "\n"), $value)));
                 if (is_wp_error($updated)) {
                     $error = $updated->get_error_message();
                 }
                 break;
             case 'show_headline':
             case 'show_thumbnails':
                 $grouped_options = $grouped_options_current = (array) Jetpack_Options::get_option('relatedposts');
                 $grouped_options[$option] = $value;
                 // If option value was the same, consider it done.
                 $updated = $grouped_options_current != $grouped_options ? Jetpack_Options::update_option('relatedposts', $grouped_options) : true;
                 break;
             case 'google':
             case 'bing':
             case 'pinterest':
             case 'yandex':
                 $grouped_options = $grouped_options_current = (array) get_option('verification_services_codes');
                 $grouped_options[$option] = $value;
                 // If option value was the same, consider it done.
                 $updated = $grouped_options_current != $grouped_options ? update_option('verification_services_codes', $grouped_options) : true;
                 break;
             case 'sharing_services':
                 if (!class_exists('Sharing_Service') && !@(include JETPACK__PLUGIN_DIR . 'modules/sharedaddy/sharing-service.php')) {
                     break;
                 }
                 $sharer = new Sharing_Service();
                 // If option value was the same, consider it done.
                 $updated = $value != $sharer->get_blog_services() ? $sharer->set_blog_services($value['visible'], $value['hidden']) : true;
                 break;
             case 'button_style':
             case 'sharing_label':
             case 'show':
                 if (!class_exists('Sharing_Service') && !@(include JETPACK__PLUGIN_DIR . 'modules/sharedaddy/sharing-service.php')) {
                     break;
                 }
                 $sharer = new Sharing_Service();
                 $grouped_options = $sharer->get_global_options();
                 $grouped_options[$option] = $value;
                 $updated = $sharer->set_global_options($grouped_options);
                 break;
             case 'custom':
                 if (!class_exists('Sharing_Service') && !@(include JETPACK__PLUGIN_DIR . 'modules/sharedaddy/sharing-service.php')) {
                     break;
                 }
                 $sharer = new Sharing_Service();
                 $updated = $sharer->new_service(stripslashes($value['sharing_name']), stripslashes($value['sharing_url']), stripslashes($value['sharing_icon']));
                 // Return new custom service
                 $response[$option] = $updated;
                 break;
             case 'sharing_delete_service':
                 if (!class_exists('Sharing_Service') && !@(include JETPACK__PLUGIN_DIR . 'modules/sharedaddy/sharing-service.php')) {
                     break;
                 }
                 $sharer = new Sharing_Service();
                 $updated = $sharer->delete_service($value);
                 break;
             case 'jetpack-twitter-cards-site-tag':
                 $value = trim(ltrim(strip_tags($value), '@'));
                 $updated = get_option($option) !== $value ? update_option($option, $value) : true;
                 break;
开发者ID:netmagik,项目名称:netmagik,代码行数:67,代码来源:class.jetpack-core-api-module-endpoints.php

示例11: render_option_keys


//.........这里部分代码省略.........
             case 'background_color':
                 $options[$key] = get_theme_mod('background_color');
                 break;
             case 'image_default_link_type':
                 $options[$key] = get_option('image_default_link_type');
                 break;
             case 'image_thumbnail_width':
                 $options[$key] = (int) get_option('thumbnail_size_w');
                 break;
             case 'image_thumbnail_height':
                 $options[$key] = (int) get_option('thumbnail_size_h');
                 break;
             case 'image_thumbnail_crop':
                 $options[$key] = get_option('thumbnail_crop');
                 break;
             case 'image_medium_width':
                 $options[$key] = (int) get_option('medium_size_w');
                 break;
             case 'image_medium_height':
                 $options[$key] = (int) get_option('medium_size_h');
                 break;
             case 'image_large_width':
                 $options[$key] = (int) get_option('large_size_w');
                 break;
             case 'image_large_height':
                 $options[$key] = (int) get_option('large_size_h');
                 break;
             case 'permalink_structure':
                 $options[$key] = get_option('permalink_structure');
                 break;
             case 'post_formats':
                 $options[$key] = $this->site->get_post_formats();
                 break;
             case 'default_post_format':
                 $options[$key] = get_option('default_post_format');
                 break;
             case 'default_category':
                 $options[$key] = (int) get_option('default_category');
                 break;
             case 'allowed_file_types':
                 $options[$key] = $this->site->allowed_file_types();
                 break;
             case 'show_on_front':
                 $options[$key] = get_option('show_on_front');
                 break;
                 /** This filter is documented in modules/likes.php */
             /** This filter is documented in modules/likes.php */
             case 'default_likes_enabled':
                 $options[$key] = (bool) apply_filters('wpl_is_enabled_sitewide', !get_option('disabled_likes'));
                 break;
             case 'default_sharing_status':
                 $default_sharing_status = false;
                 if (class_exists('Sharing_Service')) {
                     $ss = new Sharing_Service();
                     $blog_services = $ss->get_blog_services();
                     $default_sharing_status = !empty($blog_services['visible']);
                 }
                 $options[$key] = (bool) $default_sharing_status;
                 break;
             case 'default_comment_status':
                 $options[$key] = 'closed' !== get_option('default_comment_status');
                 break;
             case 'default_ping_status':
                 $options[$key] = 'closed' !== get_option('default_ping_status');
                 break;
             case 'software_version':
                 $options[$key] = $wp_version;
                 break;
             case 'created_at':
                 $options[$key] = $this->site->get_registered_date();
                 break;
             case 'wordads':
                 $options[$key] = $this->site->has_wordads();
                 break;
             case 'publicize_permanently_disabled':
                 $publicize_permanently_disabled = false;
                 if (function_exists('is_publicize_permanently_disabled')) {
                     $publicize_permanently_disabled = is_publicize_permanently_disabled($this->site->blog_id);
                 }
                 $options[$key] = $publicize_permanently_disabled;
                 break;
             case 'frame_nonce':
                 $options[$key] = $this->site->get_frame_nonce();
                 break;
             case 'page_on_front':
                 if ($custom_front_page) {
                     $options[$key] = (int) get_option('page_on_front');
                 }
                 break;
             case 'page_for_posts':
                 if ($custom_front_page) {
                     $options[$key] = (int) get_option('page_for_posts');
                 }
                 break;
             case 'ak_vp_bundle_enabled':
                 $options[$key] = $this->site->get_ak_vp_bundle_enabled();
         }
     }
     return $options;
 }
开发者ID:jordankoschei,项目名称:jordankoschei-dot-com,代码行数:101,代码来源:class.wpcom-json-api-get-site-endpoint.php

示例12: sharing_display

function sharing_display($text = '')
{
    static $shared_with_posts = array();
    global $post;
    $sharer = new Sharing_Service();
    $global = $sharer->get_global_options();
    $show = false;
    if (!is_feed()) {
        if ($global['show'] == 'posts' && (is_single() || is_page())) {
            $show = true;
        } elseif ($global['show'] == 'index' && (is_home() || is_archive() || is_search())) {
            $show = true;
        } elseif ($global['show'] == 'posts-index' && (is_single() || is_page() || is_home() || is_search() || is_archive())) {
            $show = true;
        }
    }
    // Pass through a filter for final say so
    $show = apply_filters('sharing_show', $show, $post);
    // Disabled for this post?
    $switched_status = get_post_meta($post->ID, 'sharing_disabled', false);
    if (!empty($switched_status)) {
        $show = false;
    }
    // Only show once
    if (isset($shared_with_posts[$post->ID])) {
        $show = false;
    }
    $shared_with_posts[$post->ID] = true;
    $sharing_content = '';
    if ($show) {
        $enabled = $sharer->get_blog_services();
        if (count($enabled['all']) > 0) {
            global $post;
            $dir = get_option('text_direction');
            // Wrapper
            $sharing_content .= '<div class="snap_nopreview sharing robots-nocontent">';
            $sharing_content .= '<ul>';
            // Visible items
            $visible = '';
            foreach ($enabled['visible'] as $id => $service) {
                // Individual HTML for sharing service
                $visible .= '<li class="share-' . $service->get_class() . ' share-regular">';
                $visible .= $service->get_display($post);
                $visible .= '</li>';
            }
            $parts = array();
            if ($global['sharing_label'] != '') {
                $parts[] = '<li class="sharing_label">' . $global['sharing_label'] . '</li>';
            }
            $parts[] = $visible;
            if (count($enabled['hidden']) > 0) {
                $parts[] = '<li class="share-custom"><a href="#" class="sharing-anchor">' . _x('Share', 'dropdown button', 'jetpack') . '</a></li>';
            }
            if ($dir == 'rtl') {
                $parts = array_reverse($parts);
            }
            $sharing_content .= implode('', $parts);
            $sharing_content .= '<li class="share-end"></li></ul>';
            if (count($enabled['hidden']) > 0) {
                $sharing_content .= '<div class="sharing-hidden"><div class="inner" style="display: none;';
                if (count($enabled['hidden']) == 1) {
                    $sharing_content .= 'width:150px;';
                }
                $sharing_content .= '">';
                if (count($enabled['hidden']) == 1) {
                    $sharing_content .= '<ul style="background-image:none;">';
                } else {
                    $sharing_content .= '<ul>';
                }
                $count = 1;
                foreach ($enabled['hidden'] as $id => $service) {
                    // Individual HTML for sharing service
                    $sharing_content .= '<li class="share-' . $service->get_class() . '">';
                    $sharing_content .= $service->get_display($post);
                    $sharing_content .= '</li>';
                    if ($count % 2 == 0) {
                        $sharing_content .= '<li class="share-end"></li>';
                    }
                    $count++;
                }
                // End of wrapper
                $sharing_content .= '<li class="share-end"></li></ul></div></div>';
            }
            $sharing_content .= '<div class="sharing-clear"></div></div>';
            // Register our JS
            wp_register_script('sharing-js', plugin_dir_url(__FILE__) . 'sharing.js', array('jquery'), '0.1');
            add_action('wp_footer', 'sharing_add_footer');
        }
    }
    return $text . $sharing_content;
}
开发者ID:sajidsan,项目名称:sajidsan.github.io,代码行数:91,代码来源:sharing-service.php

示例13: sharing_display

function sharing_display( $text = '' ) {
	global $post, $wp_current_filter;

	if ( is_preview() ) {
		return $text;
	}

	// Don't output flair on excerpts
	if ( in_array( 'get_the_excerpt', (array) $wp_current_filter ) ) {
		return $text;
	}

	// Don't allow flair to be added to the_content more than once (prevent infinite loops)
	$done = false;
	foreach ( $wp_current_filter as $filter ) {
		if ( 'the_content' == $filter ) {
			if ( $done )
				return $text;
			else
				$done = true;
		}
	}

	// check whether we are viewing the front page and whether the front page option is checked
	$options = get_option( 'sharing-options' );
	$display_options = $options['global']['show'];

	if ( is_front_page() && ( is_array( $display_options ) && ! in_array( 'index', $display_options ) ) )
		return $text;

	if ( is_attachment() && in_array( 'the_excerpt', (array) $wp_current_filter ) ) {
		// Many themes run the_excerpt() conditionally on an attachment page, then run the_content().
		// We only want to output the sharing buttons once.  Let's stick with the_content().
		return $text;
	}

	$sharer = new Sharing_Service();
	$global = $sharer->get_global_options();

	$show = false;
	if ( !is_feed() ) {
		if ( is_singular() && in_array( get_post_type(), $global['show'] ) ) {
			$show = true;
		} elseif ( in_array( 'index', $global['show'] ) && ( is_home() || is_archive() || is_search() ) ) {
			$show = true;
		}
	}

	// Pass through a filter for final say so
	$show = apply_filters( 'sharing_show', $show, $post );

	// Disabled for this post?
	$switched_status = get_post_meta( $post->ID, 'sharing_disabled', false );

	if ( !empty( $switched_status ) )
		$show = false;

	// Allow to be used on P2 ajax requests for latest posts.
	if ( defined( 'DOING_AJAX' ) && DOING_AJAX && isset( $_REQUEST['action'] ) && 'get_latest_posts' == $_REQUEST['action'] )
		$show = true;

	$sharing_content = '';

	if ( $show ) {
		$enabled = $sharer->get_blog_services();

		if ( count( $enabled['all'] ) > 0 ) {
			global $post;

			$dir = get_option( 'text_direction' );

			// Wrapper
			$sharing_content .= '<div class="sharedaddy sd-sharing-enabled"><div class="robots-nocontent sd-block sd-social sd-social-' . $global['button_style'] . ' sd-sharing">';
			if ( $global['sharing_label'] != '' )
				$sharing_content .= '<h3 class="sd-title">' . $global['sharing_label'] . '</h3>';
			$sharing_content .= '<div class="sd-content"><ul>';

			// Visible items
			$visible = '';
			foreach ( $enabled['visible'] as $id => $service ) {
				// Individual HTML for sharing service
				$visible .= '<li class="share-' . $service->get_class() . '">' . $service->get_display( $post ) . '</li>';
			}

			$parts = array();
			$parts[] = $visible;
			if ( count( $enabled['hidden'] ) > 0 ) {
				if ( count( $enabled['visible'] ) > 0 )
					$expand = __( 'More', 'jetpack' );
				else
					$expand = __( 'Share', 'jetpack' );
				$parts[] = '<li><a href="#" class="sharing-anchor sd-button share-more"><span>'.$expand.'</span></a></li>';
			}

			if ( $dir == 'rtl' )
				$parts = array_reverse( $parts );

			$sharing_content .= implode( '', $parts );
			$sharing_content .= '<li class="share-end"></li></ul>';

//.........这里部分代码省略.........
开发者ID:kevinreilly,项目名称:mendelements.com,代码行数:101,代码来源:sharing-service.php


注:本文中的Sharing_Service::get_blog_services方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。