1 | <?php |
---|
2 | /** |
---|
3 | * Credits administration panel. |
---|
4 | * |
---|
5 | * @package WordPress |
---|
6 | * @subpackage Administration |
---|
7 | */ |
---|
8 | |
---|
9 | /** WordPress Administration Bootstrap */ |
---|
10 | require_once( dirname( __FILE__ ) . '/admin.php' ); |
---|
11 | require_once( dirname( __FILE__ ) . '/includes/credits.php' ); |
---|
12 | |
---|
13 | $title = __( 'Credits' ); |
---|
14 | |
---|
15 | list( $display_version ) = explode( '-', get_bloginfo( 'version' ) ); |
---|
16 | |
---|
17 | include( ABSPATH . 'wp-admin/admin-header.php' ); |
---|
18 | ?> |
---|
19 | <div class="wrap about-wrap full-width-layout"> |
---|
20 | |
---|
21 | <h1><?php printf( __( 'Welcome to WordPress %s' ), $display_version ); ?></h1> |
---|
22 | |
---|
23 | <p class="about-text"><?php printf( __( 'Thank you for updating to the latest version! WordPress %s introduces a robust new content creation experience.' ), $display_version ); ?></p> |
---|
24 | |
---|
25 | <div class="wp-badge"><?php printf( __( 'Version %s' ), $display_version ); ?></div> |
---|
26 | |
---|
27 | <h2 class="nav-tab-wrapper wp-clearfix"> |
---|
28 | <a href="about.php" class="nav-tab"><?php _e( 'What’s New' ); ?></a> |
---|
29 | <a href="credits.php" class="nav-tab nav-tab-active"><?php _e( 'Credits' ); ?></a> |
---|
30 | <a href="freedoms.php" class="nav-tab"><?php _e( 'Freedoms' ); ?></a> |
---|
31 | <a href="freedoms.php?privacy-notice" class="nav-tab"><?php _e( 'Privacy' ); ?></a> |
---|
32 | </h2> |
---|
33 | |
---|
34 | <div class="about-wrap-content"> |
---|
35 | <?php |
---|
36 | |
---|
37 | $credits = wp_credits(); |
---|
38 | |
---|
39 | if ( ! $credits ) { |
---|
40 | echo '<p class="about-description">'; |
---|
41 | /* translators: 1: https://wordpress.org/about/, 2: https://make.wordpress.org/ */ |
---|
42 | printf( |
---|
43 | __( 'WordPress is created by a <a href="%1$s">worldwide team</a> of passionate individuals. <a href="%2$s">Get involved in WordPress</a>.' ), |
---|
44 | 'https://wordpress.org/about/', |
---|
45 | __( 'https://make.wordpress.org/' ) |
---|
46 | ); |
---|
47 | echo '</p>'; |
---|
48 | echo '</div>'; |
---|
49 | echo '</div>'; |
---|
50 | include( ABSPATH . 'wp-admin/admin-footer.php' ); |
---|
51 | exit; |
---|
52 | } |
---|
53 | |
---|
54 | echo '<p class="about-description">' . __( 'WordPress is created by a worldwide team of passionate individuals.' ) . "</p>\n"; |
---|
55 | |
---|
56 | echo '<p>' . sprintf( |
---|
57 | /* translators: %s: https://make.wordpress.org/ */ |
---|
58 | __( 'Want to see your name in lights on this page? <a href="%s">Get involved in WordPress</a>.' ), |
---|
59 | __( 'https://make.wordpress.org/' ) |
---|
60 | ) . '</p>'; |
---|
61 | |
---|
62 | foreach ( $credits['groups'] as $group_slug => $group_data ) { |
---|
63 | if ( $group_data['name'] ) { |
---|
64 | if ( 'Translators' == $group_data['name'] ) { |
---|
65 | // Considered a special slug in the API response. (Also, will never be returned for en_US.) |
---|
66 | $title = _x( 'Translators', 'Translate this to be the equivalent of English Translators in your language for the credits page Translators section' ); |
---|
67 | } elseif ( isset( $group_data['placeholders'] ) ) { |
---|
68 | $title = vsprintf( translate( $group_data['name'] ), $group_data['placeholders'] ); |
---|
69 | } else { |
---|
70 | $title = translate( $group_data['name'] ); |
---|
71 | } |
---|
72 | |
---|
73 | echo '<h3 class="wp-people-group">' . esc_html( $title ) . "</h3>\n"; |
---|
74 | } |
---|
75 | |
---|
76 | if ( ! empty( $group_data['shuffle'] ) ) { |
---|
77 | shuffle( $group_data['data'] ); // We were going to sort by ability to pronounce "hierarchical," but that wouldn't be fair to Matt. |
---|
78 | } |
---|
79 | |
---|
80 | switch ( $group_data['type'] ) { |
---|
81 | case 'list': |
---|
82 | array_walk( $group_data['data'], '_wp_credits_add_profile_link', $credits['data']['profiles'] ); |
---|
83 | echo '<p class="wp-credits-list">' . wp_sprintf( '%l.', $group_data['data'] ) . "</p>\n\n"; |
---|
84 | break; |
---|
85 | case 'libraries': |
---|
86 | array_walk( $group_data['data'], '_wp_credits_build_object_link' ); |
---|
87 | echo '<p class="wp-credits-list">' . wp_sprintf( '%l.', $group_data['data'] ) . "</p>\n\n"; |
---|
88 | break; |
---|
89 | default: |
---|
90 | $compact = 'compact' == $group_data['type']; |
---|
91 | $classes = 'wp-people-group ' . ( $compact ? 'compact' : '' ); |
---|
92 | echo '<ul class="' . $classes . '" id="wp-people-group-' . $group_slug . '">' . "\n"; |
---|
93 | foreach ( $group_data['data'] as $person_data ) { |
---|
94 | echo '<li class="wp-person" id="wp-person-' . esc_attr( $person_data[2] ) . '">' . "\n\t"; |
---|
95 | echo '<a href="' . esc_url( sprintf( $credits['data']['profiles'], $person_data[2] ) ) . '" class="web">'; |
---|
96 | $size = 'compact' == $group_data['type'] ? 30 : 60; |
---|
97 | $data = get_avatar_data( $person_data[1] . '@md5.gravatar.com', array( 'size' => $size ) ); |
---|
98 | $size *= 2; |
---|
99 | $data2x = get_avatar_data( $person_data[1] . '@md5.gravatar.com', array( 'size' => $size ) ); |
---|
100 | echo '<img src="' . esc_url( $data['url'] ) . '" srcset="' . esc_url( $data2x['url'] ) . ' 2x" class="gravatar" alt="" />' . "\n"; |
---|
101 | echo esc_html( $person_data[0] ) . "</a>\n\t"; |
---|
102 | if ( ! $compact ) { |
---|
103 | echo '<span class="title">' . translate( $person_data[3] ) . "</span>\n"; |
---|
104 | } |
---|
105 | echo "</li>\n"; |
---|
106 | } |
---|
107 | echo "</ul>\n"; |
---|
108 | break; |
---|
109 | } |
---|
110 | } |
---|
111 | |
---|
112 | ?> |
---|
113 | </div> |
---|
114 | </div> |
---|
115 | <?php |
---|
116 | |
---|
117 | include( ABSPATH . 'wp-admin/admin-footer.php' ); |
---|
118 | |
---|
119 | return; |
---|
120 | |
---|
121 | // These are strings returned by the API that we want to be translatable |
---|
122 | __( 'Project Leaders' ); |
---|
123 | __( 'Core Contributors to WordPress %s' ); |
---|
124 | __( 'Noteworthy Contributors' ); |
---|
125 | __( 'Cofounder, Project Lead' ); |
---|
126 | __( 'Lead Developer' ); |
---|
127 | __( 'Release Lead' ); |
---|
128 | __( 'Release Design Lead' ); |
---|
129 | __( 'Release Deputy' ); |
---|
130 | __( 'Core Developer' ); |
---|
131 | __( 'External Libraries' ); |
---|