mirror of
https://github.com/WordPress/WordPress.git
synced 2024-11-05 18:32:23 +01:00
aaf99e6913
WordPress' code just... wasn't. This is now dealt with. Props jrf, pento, netweb, GaryJ, jdgrimes, westonruter, Greg Sherwood from PHPCS, and everyone who's ever contributed to WPCS and PHPCS. Fixes #41057. Built from https://develop.svn.wordpress.org/trunk@42343 git-svn-id: http://core.svn.wordpress.org/trunk@42172 1a063a9b-81f0-0310-95a4-ce76da25c4cd
79 lines
2.2 KiB
PHP
79 lines
2.2 KiB
PHP
<?php
|
|
/**
|
|
* WordPress Credits Administration API.
|
|
*
|
|
* @package WordPress
|
|
* @subpackage Administration
|
|
* @since 4.4.0
|
|
*/
|
|
|
|
/**
|
|
* Retrieve the contributor credits.
|
|
*
|
|
* @since 3.2.0
|
|
*
|
|
* @return array|false A list of all of the contributors, or false on error.
|
|
*/
|
|
function wp_credits() {
|
|
// include an unmodified $wp_version
|
|
include( ABSPATH . WPINC . '/version.php' );
|
|
|
|
$locale = get_user_locale();
|
|
|
|
$results = get_site_transient( 'wordpress_credits_' . $locale );
|
|
|
|
if ( ! is_array( $results )
|
|
|| false !== strpos( $wp_version, '-' )
|
|
|| ( isset( $results['data']['version'] ) && strpos( $wp_version, $results['data']['version'] ) !== 0 )
|
|
) {
|
|
$url = "http://api.wordpress.org/core/credits/1.1/?version={$wp_version}&locale={$locale}";
|
|
$options = array( 'user-agent' => 'WordPress/' . $wp_version . '; ' . home_url( '/' ) );
|
|
|
|
if ( wp_http_supports( array( 'ssl' ) ) ) {
|
|
$url = set_url_scheme( $url, 'https' );
|
|
}
|
|
|
|
$response = wp_remote_get( $url, $options );
|
|
|
|
if ( is_wp_error( $response ) || 200 != wp_remote_retrieve_response_code( $response ) ) {
|
|
return false;
|
|
}
|
|
|
|
$results = json_decode( wp_remote_retrieve_body( $response ), true );
|
|
|
|
if ( ! is_array( $results ) ) {
|
|
return false;
|
|
}
|
|
|
|
set_site_transient( 'wordpress_credits_' . $locale, $results, DAY_IN_SECONDS );
|
|
}
|
|
|
|
return $results;
|
|
}
|
|
|
|
/**
|
|
* Retrieve the link to a contributor's WordPress.org profile page.
|
|
*
|
|
* @access private
|
|
* @since 3.2.0
|
|
*
|
|
* @param string $display_name The contributor's display name (passed by reference).
|
|
* @param string $username The contributor's username.
|
|
* @param string $profiles URL to the contributor's WordPress.org profile page.
|
|
*/
|
|
function _wp_credits_add_profile_link( &$display_name, $username, $profiles ) {
|
|
$display_name = '<a href="' . esc_url( sprintf( $profiles, $username ) ) . '">' . esc_html( $display_name ) . '</a>';
|
|
}
|
|
|
|
/**
|
|
* Retrieve the link to an external library used in WordPress.
|
|
*
|
|
* @access private
|
|
* @since 3.2.0
|
|
*
|
|
* @param string $data External library data (passed by reference).
|
|
*/
|
|
function _wp_credits_build_object_link( &$data ) {
|
|
$data = '<a href="' . esc_url( $data[1] ) . '">' . esc_html( $data[0] ) . '</a>';
|
|
}
|