7 */ |
7 */ |
8 |
8 |
9 /** WordPress Administration Bootstrap */ |
9 /** WordPress Administration Bootstrap */ |
10 require_once( dirname( __FILE__ ) . '/admin.php' ); |
10 require_once( dirname( __FILE__ ) . '/admin.php' ); |
11 |
11 |
|
12 /** WordPress Translation Install API */ |
|
13 require_once( ABSPATH . 'wp-admin/includes/translation-install.php' ); |
|
14 |
12 if ( ! current_user_can( 'manage_options' ) ) |
15 if ( ! current_user_can( 'manage_options' ) ) |
13 wp_die( __( 'You do not have sufficient permissions to manage options for this site.' ) ); |
16 wp_die( __( 'You do not have sufficient permissions to manage options for this site.' ) ); |
14 |
17 |
15 $title = __('General Settings'); |
18 $title = __('General Settings'); |
16 $parent_file = 'options-general.php'; |
19 $parent_file = 'options-general.php'; |
17 /* translators: date and time format for exact current time, mainly about timezones, see http://php.net/date */ |
20 /* translators: date and time format for exact current time, mainly about timezones, see http://php.net/date */ |
18 $timezone_format = _x('Y-m-d G:i:s', 'timezone date format'); |
21 $timezone_format = _x('Y-m-d H:i:s', 'timezone date format'); |
19 |
22 |
20 /** |
23 /** |
21 * Display JavaScript on the page. |
24 * Display JavaScript on the page. |
22 * |
25 * |
23 * @since 3.5.0 |
26 * @since 3.5.0 |
24 */ |
27 */ |
25 function options_general_add_js() { |
28 function options_general_add_js() { |
26 ?> |
29 ?> |
27 <script type="text/javascript"> |
30 <script type="text/javascript"> |
28 //<![CDATA[ |
|
29 jQuery(document).ready(function($){ |
31 jQuery(document).ready(function($){ |
|
32 var $siteName = $( '#wp-admin-bar-site-name' ).children( 'a' ).first(), |
|
33 homeURL = ( <?php echo wp_json_encode( get_home_url() ); ?> || '' ).replace( /^(https?:\/\/)?(www\.)?/, '' ); |
|
34 |
|
35 $( '#blogname' ).on( 'input', function() { |
|
36 var title = $.trim( $( this ).val() ) || homeURL; |
|
37 |
|
38 // Truncate to 40 characters. |
|
39 if ( 40 < title.length ) { |
|
40 title = title.substring( 0, 40 ) + '\u2026'; |
|
41 } |
|
42 |
|
43 $siteName.text( title ); |
|
44 }); |
|
45 |
30 $("input[name='date_format']").click(function(){ |
46 $("input[name='date_format']").click(function(){ |
31 if ( "date_format_custom_radio" != $(this).attr("id") ) |
47 if ( "date_format_custom_radio" != $(this).attr("id") ) |
32 $("input[name='date_format_custom']").val( $(this).val() ).siblings('.example').text( $(this).siblings('span').text() ); |
48 $( "input[name='date_format_custom']" ).val( $( this ).val() ).siblings( '.example' ).text( $( this ).parent( 'label' ).text() ); |
33 }); |
49 }); |
34 $("input[name='date_format_custom']").focus(function(){ |
50 $("input[name='date_format_custom']").focus(function(){ |
35 $("#date_format_custom_radio").attr("checked", "checked"); |
51 $( '#date_format_custom_radio' ).prop( 'checked', true ); |
36 }); |
52 }); |
37 |
53 |
38 $("input[name='time_format']").click(function(){ |
54 $("input[name='time_format']").click(function(){ |
39 if ( "time_format_custom_radio" != $(this).attr("id") ) |
55 if ( "time_format_custom_radio" != $(this).attr("id") ) |
40 $("input[name='time_format_custom']").val( $(this).val() ).siblings('.example').text( $(this).siblings('span').text() ); |
56 $( "input[name='time_format_custom']" ).val( $( this ).val() ).siblings( '.example' ).text( $( this ).parent( 'label' ).text() ); |
41 }); |
57 }); |
42 $("input[name='time_format_custom']").focus(function(){ |
58 $("input[name='time_format_custom']").focus(function(){ |
43 $("#time_format_custom_radio").attr("checked", "checked"); |
59 $( '#time_format_custom_radio' ).prop( 'checked', true ); |
44 }); |
60 }); |
45 $("input[name='date_format_custom'], input[name='time_format_custom']").change( function() { |
61 $("input[name='date_format_custom'], input[name='time_format_custom']").change( function() { |
46 var format = $(this); |
62 var format = $(this); |
47 format.siblings('.spinner').css('display', 'inline-block'); // show(); can't be used here |
63 format.siblings( '.spinner' ).addClass( 'is-active' ); |
48 $.post(ajaxurl, { |
64 $.post(ajaxurl, { |
49 action: 'date_format_custom' == format.attr('name') ? 'date_format' : 'time_format', |
65 action: 'date_format_custom' == format.attr('name') ? 'date_format' : 'time_format', |
50 date : format.val() |
66 date : format.val() |
51 }, function(d) { format.siblings('.spinner').hide(); format.siblings('.example').text(d); } ); |
67 }, function(d) { format.siblings( '.spinner' ).removeClass( 'is-active' ); format.siblings('.example').text(d); } ); |
|
68 }); |
|
69 |
|
70 var languageSelect = $( '#WPLANG' ); |
|
71 $( 'form' ).submit( function() { |
|
72 // Don't show a spinner for English and installed languages, |
|
73 // as there is nothing to download. |
|
74 if ( ! languageSelect.find( 'option:selected' ).data( 'installed' ) ) { |
|
75 $( '#submit', this ).after( '<span class="spinner language-install-spinner" />' ); |
|
76 } |
52 }); |
77 }); |
53 }); |
78 }); |
54 //]]> |
|
55 </script> |
79 </script> |
56 <?php |
80 <?php |
57 } |
81 } |
58 add_action('admin_head', 'options_general_add_js'); |
82 add_action('admin_head', 'options_general_add_js'); |
59 |
83 |
63 if ( ! is_multisite() ) { |
87 if ( ! is_multisite() ) { |
64 $options_help .= '<p>' . __('The WordPress URL and the Site URL can be the same (example.com) or different; for example, having the WordPress core files (example.com/wordpress) in a subdirectory instead of the root directory.') . '</p>' . |
88 $options_help .= '<p>' . __('The WordPress URL and the Site URL can be the same (example.com) or different; for example, having the WordPress core files (example.com/wordpress) in a subdirectory instead of the root directory.') . '</p>' . |
65 '<p>' . __('If you want site visitors to be able to register themselves, as opposed to by the site administrator, check the membership box. A default user role can be set for all new users, whether self-registered or registered by the site admin.') . '</p>'; |
89 '<p>' . __('If you want site visitors to be able to register themselves, as opposed to by the site administrator, check the membership box. A default user role can be set for all new users, whether self-registered or registered by the site admin.') . '</p>'; |
66 } |
90 } |
67 |
91 |
68 $options_help .= '<p>' . __('UTC means Coordinated Universal Time.') . '</p>' . |
92 $options_help .= '<p>' . __( 'You can set the language, and the translation files will be automatically downloaded and installed (available if your filesystem is writable).' ) . '</p>' . |
|
93 '<p>' . __( 'UTC means Coordinated Universal Time.' ) . '</p>' . |
69 '<p>' . __( 'You must click the Save Changes button at the bottom of the screen for new settings to take effect.' ) . '</p>'; |
94 '<p>' . __( 'You must click the Save Changes button at the bottom of the screen for new settings to take effect.' ) . '</p>'; |
70 |
95 |
71 get_current_screen()->add_help_tab( array( |
96 get_current_screen()->add_help_tab( array( |
72 'id' => 'overview', |
97 'id' => 'overview', |
73 'title' => __('Overview'), |
98 'title' => __('Overview'), |
74 'content' => $options_help, |
99 'content' => $options_help, |
75 ) ); |
100 ) ); |
76 |
101 |
77 get_current_screen()->set_help_sidebar( |
102 get_current_screen()->set_help_sidebar( |
78 '<p><strong>' . __('For more information:') . '</strong></p>' . |
103 '<p><strong>' . __('For more information:') . '</strong></p>' . |
79 '<p>' . __('<a href="http://codex.wordpress.org/Settings_General_Screen" target="_blank">Documentation on General Settings</a>') . '</p>' . |
104 '<p>' . __('<a href="https://codex.wordpress.org/Settings_General_Screen" target="_blank">Documentation on General Settings</a>') . '</p>' . |
80 '<p>' . __('<a href="http://wordpress.org/support/" target="_blank">Support Forums</a>') . '</p>' |
105 '<p>' . __('<a href="https://wordpress.org/support/" target="_blank">Support Forums</a>') . '</p>' |
81 ); |
106 ); |
82 |
107 |
83 include( ABSPATH . 'wp-admin/admin-header.php' ); |
108 include( ABSPATH . 'wp-admin/admin-header.php' ); |
84 ?> |
109 ?> |
85 |
110 |
86 <div class="wrap"> |
111 <div class="wrap"> |
87 <?php screen_icon(); ?> |
|
88 <h2><?php echo esc_html( $title ); ?></h2> |
112 <h2><?php echo esc_html( $title ); ?></h2> |
89 |
113 |
90 <form method="post" action="options.php"> |
114 <form method="post" action="options.php" novalidate="novalidate"> |
91 <?php settings_fields('general'); ?> |
115 <?php settings_fields('general'); ?> |
92 |
116 |
93 <table class="form-table"> |
117 <table class="form-table"> |
94 <tr valign="top"> |
118 <tr> |
95 <th scope="row"><label for="blogname"><?php _e('Site Title') ?></label></th> |
119 <th scope="row"><label for="blogname"><?php _e('Site Title') ?></label></th> |
96 <td><input name="blogname" type="text" id="blogname" value="<?php form_option('blogname'); ?>" class="regular-text" /></td> |
120 <td><input name="blogname" type="text" id="blogname" value="<?php form_option('blogname'); ?>" class="regular-text" /></td> |
97 </tr> |
121 </tr> |
98 <tr valign="top"> |
122 <tr> |
99 <th scope="row"><label for="blogdescription"><?php _e('Tagline') ?></label></th> |
123 <th scope="row"><label for="blogdescription"><?php _e('Tagline') ?></label></th> |
100 <td><input name="blogdescription" type="text" id="blogdescription" value="<?php form_option('blogdescription'); ?>" class="regular-text" /> |
124 <td><input name="blogdescription" type="text" id="blogdescription" aria-describedby="tagline-description" value="<?php form_option('blogdescription'); ?>" class="regular-text" /> |
101 <p class="description"><?php _e('In a few words, explain what this site is about.') ?></p></td> |
125 <p class="description" id="tagline-description"><?php _e( 'In a few words, explain what this site is about.' ) ?></p></td> |
102 </tr> |
126 </tr> |
103 <?php if ( !is_multisite() ) { ?> |
127 <?php if ( !is_multisite() ) { ?> |
104 <tr valign="top"> |
128 <tr> |
105 <th scope="row"><label for="siteurl"><?php _e('WordPress Address (URL)') ?></label></th> |
129 <th scope="row"><label for="siteurl"><?php _e('WordPress Address (URL)') ?></label></th> |
106 <td><input name="siteurl" type="text" id="siteurl" value="<?php form_option('siteurl'); ?>"<?php disabled( defined( 'WP_SITEURL' ) ); ?> class="regular-text code<?php if ( defined( 'WP_SITEURL' ) ) echo ' disabled' ?>" /></td> |
130 <td><input name="siteurl" type="url" id="siteurl" value="<?php form_option( 'siteurl' ); ?>"<?php disabled( defined( 'WP_SITEURL' ) ); ?> class="regular-text code<?php if ( defined( 'WP_SITEURL' ) ) echo ' disabled' ?>" /></td> |
107 </tr> |
131 </tr> |
108 <tr valign="top"> |
132 <tr> |
109 <th scope="row"><label for="home"><?php _e('Site Address (URL)') ?></label></th> |
133 <th scope="row"><label for="home"><?php _e('Site Address (URL)') ?></label></th> |
110 <td><input name="home" type="text" id="home" value="<?php form_option('home'); ?>"<?php disabled( defined( 'WP_HOME' ) ); ?> class="regular-text code<?php if ( defined( 'WP_HOME' ) ) echo ' disabled' ?>" /> |
134 <td><input name="home" type="url" id="home" aria-describedby="home-description" value="<?php form_option( 'home' ); ?>"<?php disabled( defined( 'WP_HOME' ) ); ?> class="regular-text code<?php if ( defined( 'WP_HOME' ) ) echo ' disabled' ?>" /> |
111 <p class="description"><?php _e('Enter the address here if you want your site homepage <a href="http://codex.wordpress.org/Giving_WordPress_Its_Own_Directory">to be different from the directory</a> you installed WordPress.'); ?></p></td> |
135 <p class="description" id="home-description"><?php _e( 'Enter the address here if you <a href="https://codex.wordpress.org/Giving_WordPress_Its_Own_Directory">want your site home page to be different from your WordPress installation directory.</a>' ); ?></p></td> |
112 </tr> |
136 </tr> |
113 <tr valign="top"> |
137 <tr> |
114 <th scope="row"><label for="admin_email"><?php _e('E-mail Address') ?> </label></th> |
138 <th scope="row"><label for="admin_email"><?php _e('E-mail Address') ?> </label></th> |
115 <td><input name="admin_email" type="text" id="admin_email" value="<?php form_option('admin_email'); ?>" class="regular-text ltr" /> |
139 <td><input name="admin_email" type="email" id="admin_email" aria-describedby="admin-email-description" value="<?php form_option( 'admin_email' ); ?>" class="regular-text ltr" /> |
116 <p class="description"><?php _e('This address is used for admin purposes, like new user notification.') ?></p></td> |
140 <p class="description" id="admin-email-description"><?php _e( 'This address is used for admin purposes, like new user notification.' ) ?></p></td> |
117 </tr> |
141 </tr> |
118 <tr valign="top"> |
142 <tr> |
119 <th scope="row"><?php _e('Membership') ?></th> |
143 <th scope="row"><?php _e('Membership') ?></th> |
120 <td> <fieldset><legend class="screen-reader-text"><span><?php _e('Membership') ?></span></legend><label for="users_can_register"> |
144 <td> <fieldset><legend class="screen-reader-text"><span><?php _e('Membership') ?></span></legend><label for="users_can_register"> |
121 <input name="users_can_register" type="checkbox" id="users_can_register" value="1" <?php checked('1', get_option('users_can_register')); ?> /> |
145 <input name="users_can_register" type="checkbox" id="users_can_register" value="1" <?php checked('1', get_option('users_can_register')); ?> /> |
122 <?php _e('Anyone can register') ?></label> |
146 <?php _e('Anyone can register') ?></label> |
123 </fieldset></td> |
147 </fieldset></td> |
124 </tr> |
148 </tr> |
125 <tr valign="top"> |
149 <tr> |
126 <th scope="row"><label for="default_role"><?php _e('New User Default Role') ?></label></th> |
150 <th scope="row"><label for="default_role"><?php _e('New User Default Role') ?></label></th> |
127 <td> |
151 <td> |
128 <select name="default_role" id="default_role"><?php wp_dropdown_roles( get_option('default_role') ); ?></select> |
152 <select name="default_role" id="default_role"><?php wp_dropdown_roles( get_option('default_role') ); ?></select> |
129 </td> |
153 </td> |
130 </tr> |
154 </tr> |
131 <?php } else { ?> |
155 <?php } else { ?> |
132 <tr valign="top"> |
156 <tr> |
133 <th scope="row"><label for="new_admin_email"><?php _e('E-mail Address') ?> </label></th> |
157 <th scope="row"><label for="new_admin_email"><?php _e('E-mail Address') ?> </label></th> |
134 <td><input name="new_admin_email" type="text" id="new_admin_email" value="<?php form_option('admin_email'); ?>" class="regular-text ltr" /> |
158 <td><input name="new_admin_email" type="email" id="new_admin_email" aria-describedby="new-admin-email-description" value="<?php form_option( 'admin_email' ); ?>" class="regular-text ltr" /> |
135 <p class="description"><?php _e('This address is used for admin purposes. If you change this we will send you an e-mail at your new address to confirm it. <strong>The new address will not become active until confirmed.</strong>') ?></p> |
159 <p class="description" id="new-admin-email-description"><?php _e( 'This address is used for admin purposes. If you change this we will send you an e-mail at your new address to confirm it. <strong>The new address will not become active until confirmed.</strong>' ) ?></p> |
136 <?php |
160 <?php |
137 $new_admin_email = get_option( 'new_admin_email' ); |
161 $new_admin_email = get_option( 'new_admin_email' ); |
138 if ( $new_admin_email && $new_admin_email != get_option('admin_email') ) : ?> |
162 if ( $new_admin_email && $new_admin_email != get_option('admin_email') ) : ?> |
139 <div class="updated inline"> |
163 <div class="updated inline"> |
140 <p><?php printf( __('There is a pending change of the admin e-mail to <code>%1$s</code>. <a href="%2$s">Cancel</a>'), esc_html( $new_admin_email ), esc_url( admin_url( 'options.php?dismiss=new_admin_email' ) ) ); ?></p> |
164 <p><?php printf( __('There is a pending change of the admin e-mail to <code>%1$s</code>. <a href="%2$s">Cancel</a>'), esc_html( $new_admin_email ), esc_url( admin_url( 'options.php?dismiss=new_admin_email' ) ) ); ?></p> |
231 <?php |
255 <?php |
232 /** |
256 /** |
233 * Filter the default date formats. |
257 * Filter the default date formats. |
234 * |
258 * |
235 * @since 2.7.0 |
259 * @since 2.7.0 |
|
260 * @since 4.0.0 Added ISO date standard YYYY-MM-DD format. |
236 * |
261 * |
237 * @param array $default_date_formats Array of default date formats. |
262 * @param array $default_date_formats Array of default date formats. |
238 */ |
263 */ |
239 $date_formats = array_unique( apply_filters( 'date_formats', array( __( 'F j, Y' ), 'Y/m/d', 'm/d/Y', 'd/m/Y' ) ) ); |
264 $date_formats = array_unique( apply_filters( 'date_formats', array( __( 'F j, Y' ), 'Y-m-d', 'm/d/Y', 'd/m/Y' ) ) ); |
240 |
265 |
241 $custom = true; |
266 $custom = true; |
242 |
267 |
243 foreach ( $date_formats as $format ) { |
268 foreach ( $date_formats as $format ) { |
244 echo "\t<label title='" . esc_attr($format) . "'><input type='radio' name='date_format' value='" . esc_attr($format) . "'"; |
269 echo "\t<label title='" . esc_attr($format) . "'><input type='radio' name='date_format' value='" . esc_attr($format) . "'"; |
245 if ( get_option('date_format') === $format ) { // checked() uses "==" rather than "===" |
270 if ( get_option('date_format') === $format ) { // checked() uses "==" rather than "===" |
246 echo " checked='checked'"; |
271 echo " checked='checked'"; |
247 $custom = false; |
272 $custom = false; |
248 } |
273 } |
249 echo ' /> <span>' . date_i18n( $format ) . "</span></label><br />\n"; |
274 echo ' /> ' . date_i18n( $format ) . "</label><br />\n"; |
250 } |
275 } |
251 |
276 |
252 echo ' <label><input type="radio" name="date_format" id="date_format_custom_radio" value="\c\u\s\t\o\m"'; |
277 echo ' <label><input type="radio" name="date_format" id="date_format_custom_radio" value="\c\u\s\t\o\m"'; |
253 checked( $custom ); |
278 checked( $custom ); |
254 echo '/> ' . __('Custom:') . ' </label><input type="text" name="date_format_custom" value="' . esc_attr( get_option('date_format') ) . '" class="small-text" /> <span class="example"> ' . date_i18n( get_option('date_format') ) . "</span> <span class='spinner'></span>\n"; |
279 echo '/> ' . __( 'Custom:' ) . '<span class="screen-reader-text"> ' . __( 'enter a custom date format in the following field' ) . "</span></label>\n"; |
255 |
280 echo '<label for="date_format_custom" class="screen-reader-text">' . __( 'Custom date format:' ) . '</label><input type="text" name="date_format_custom" id="date_format_custom" value="' . esc_attr( get_option('date_format') ) . '" class="small-text" /> <span class="screen-reader-text">' . __( 'example:' ) . ' </span><span class="example"> ' . date_i18n( get_option('date_format') ) . "</span> <span class='spinner'></span>\n"; |
256 echo "\t<p>" . __('<a href="http://codex.wordpress.org/Formatting_Date_and_Time">Documentation on date and time formatting</a>.') . "</p>\n"; |
|
257 ?> |
281 ?> |
258 </fieldset> |
282 </fieldset> |
259 </td> |
283 </td> |
260 </tr> |
284 </tr> |
261 <tr> |
285 <tr> |
278 echo "\t<label title='" . esc_attr($format) . "'><input type='radio' name='time_format' value='" . esc_attr($format) . "'"; |
302 echo "\t<label title='" . esc_attr($format) . "'><input type='radio' name='time_format' value='" . esc_attr($format) . "'"; |
279 if ( get_option('time_format') === $format ) { // checked() uses "==" rather than "===" |
303 if ( get_option('time_format') === $format ) { // checked() uses "==" rather than "===" |
280 echo " checked='checked'"; |
304 echo " checked='checked'"; |
281 $custom = false; |
305 $custom = false; |
282 } |
306 } |
283 echo ' /> <span>' . date_i18n( $format ) . "</span></label><br />\n"; |
307 echo ' /> ' . date_i18n( $format ) . "</label><br />\n"; |
284 } |
308 } |
285 |
309 |
286 echo ' <label><input type="radio" name="time_format" id="time_format_custom_radio" value="\c\u\s\t\o\m"'; |
310 echo ' <label><input type="radio" name="time_format" id="time_format_custom_radio" value="\c\u\s\t\o\m"'; |
287 checked( $custom ); |
311 checked( $custom ); |
288 echo '/> ' . __('Custom:') . ' </label><input type="text" name="time_format_custom" value="' . esc_attr( get_option('time_format') ) . '" class="small-text" /> <span class="example"> ' . date_i18n( get_option('time_format') ) . "</span> <span class='spinner'></span>\n"; |
312 echo '/> ' . __( 'Custom:' ) . '<span class="screen-reader-text"> ' . __( 'enter a custom time format in the following field' ) . "</span></label>\n"; |
289 ; |
313 echo '<label for="time_format_custom" class="screen-reader-text">' . __( 'Custom time format:' ) . '</label><input type="text" name="time_format_custom" id="time_format_custom" value="' . esc_attr( get_option('time_format') ) . '" class="small-text" /> <span class="screen-reader-text">' . __( 'example:' ) . ' </span><span class="example"> ' . date_i18n( get_option('time_format') ) . "</span> <span class='spinner'></span>\n"; |
|
314 |
|
315 echo "\t<p>" . __('<a href="https://codex.wordpress.org/Formatting_Date_and_Time">Documentation on date and time formatting</a>.') . "</p>\n"; |
290 ?> |
316 ?> |
291 </fieldset> |
317 </fieldset> |
292 </td> |
318 </td> |
293 </tr> |
319 </tr> |
294 <tr> |
320 <tr> |
295 <th scope="row"><label for="start_of_week"><?php _e('Week Starts On') ?></label></th> |
321 <th scope="row"><label for="start_of_week"><?php _e('Week Starts On') ?></label></th> |
296 <td><select name="start_of_week" id="start_of_week"> |
322 <td><select name="start_of_week" id="start_of_week"> |
297 <?php |
323 <?php |
|
324 global $wp_locale; |
|
325 |
298 for ($day_index = 0; $day_index <= 6; $day_index++) : |
326 for ($day_index = 0; $day_index <= 6; $day_index++) : |
299 $selected = (get_option('start_of_week') == $day_index) ? 'selected="selected"' : ''; |
327 $selected = (get_option('start_of_week') == $day_index) ? 'selected="selected"' : ''; |
300 echo "\n\t<option value='" . esc_attr($day_index) . "' $selected>" . $wp_locale->get_weekday($day_index) . '</option>'; |
328 echo "\n\t<option value='" . esc_attr($day_index) . "' $selected>" . $wp_locale->get_weekday($day_index) . '</option>'; |
301 endfor; |
329 endfor; |
302 ?> |
330 ?> |
303 </select></td> |
331 </select></td> |
304 </tr> |
332 </tr> |
305 <?php do_settings_fields('general', 'default'); ?> |
333 <?php do_settings_fields('general', 'default'); ?> |
306 <?php |
334 |
307 $languages = get_available_languages(); |
335 <?php |
308 if ( is_multisite() && !empty( $languages ) ): |
336 $languages = get_available_languages(); |
309 ?> |
337 $translations = wp_get_available_translations(); |
310 <tr valign="top"> |
338 if ( ! is_multisite() && defined( 'WPLANG' ) && '' !== WPLANG && 'en_US' !== WPLANG && ! in_array( WPLANG, $languages ) ) { |
311 <th width="33%" scope="row"><?php _e('Site Language') ?></th> |
339 $languages[] = WPLANG; |
|
340 } |
|
341 if ( ! empty( $languages ) || ! empty( $translations ) ) { |
|
342 ?> |
|
343 <tr> |
|
344 <th width="33%" scope="row"><label for="WPLANG"><?php _e( 'Site Language' ); ?></label></th> |
312 <td> |
345 <td> |
313 <select name="WPLANG" id="WPLANG"> |
346 <?php |
314 <?php mu_dropdown_languages( $languages, get_option('WPLANG') ); ?> |
347 $locale = get_locale(); |
315 </select> |
348 if ( ! in_array( $locale, $languages ) ) { |
|
349 $locale = ''; |
|
350 } |
|
351 |
|
352 wp_dropdown_languages( array( |
|
353 'name' => 'WPLANG', |
|
354 'id' => 'WPLANG', |
|
355 'selected' => $locale, |
|
356 'languages' => $languages, |
|
357 'translations' => $translations, |
|
358 'show_available_translations' => ( ! is_multisite() || is_super_admin() ) && wp_can_install_language_pack(), |
|
359 ) ); |
|
360 |
|
361 // Add note about deprecated WPLANG constant. |
|
362 if ( defined( 'WPLANG' ) && ( '' !== WPLANG ) && $locale !== WPLANG ) { |
|
363 if ( is_super_admin() ) { |
|
364 ?> |
|
365 <p class="description"> |
|
366 <strong><?php _e( 'Note:' ); ?></strong> <?php printf( __( 'The %s constant in your %s file is no longer needed.' ), '<code>WPLANG</code>', '<code>wp-config.php</code>' ); ?> |
|
367 </p> |
|
368 <?php |
|
369 } |
|
370 _deprecated_argument( 'define()', '4.0', sprintf( __( 'The %s constant in your %s file is no longer needed.' ), 'WPLANG', 'wp-config.php' ) ); |
|
371 } |
|
372 ?> |
316 </td> |
373 </td> |
317 </tr> |
374 </tr> |
318 <?php |
375 <?php |
319 endif; |
376 } |
320 ?> |
377 ?> |
321 </table> |
378 </table> |
322 |
379 |
323 <?php do_settings_sections('general'); ?> |
380 <?php do_settings_sections('general'); ?> |
324 |
381 |