Ticket #25382: 25382.3.diff
File 25382.3.diff, 7.0 KB (added by , 11 years ago) |
---|
-
src/wp-includes/l10n.php
27 27 global $locale; 28 28 29 29 if ( isset( $locale ) ) 30 /** 31 * Filter WordPress install's locale ID. 32 * 33 * @since 1.5.2 34 * 35 * @param string $locale The locale id. 36 */ 30 37 return apply_filters( 'locale', $locale ); 31 38 32 39 // WPLANG is defined in wp-config. … … 46 53 if ( empty( $locale ) ) 47 54 $locale = 'en_US'; 48 55 56 // duplicate_hook 49 57 return apply_filters( 'locale', $locale ); 50 58 } 51 59 … … 64 72 */ 65 73 function translate( $text, $domain = 'default' ) { 66 74 $translations = get_translations_for_domain( $domain ); 75 /** 76 * Filter text with its translation. 77 * 78 * @since 2.0.11 79 * 80 * @param string $translations Translated text. 81 * @param string $text Text to translate. 82 * @param string $domain Text domain. Unique identifier for retrieving translated strings. 83 */ 67 84 return apply_filters( 'gettext', $translations->translate( $text ), $text, $domain ); 68 85 } 69 86 … … 101 118 */ 102 119 function translate_with_gettext_context( $text, $context, $domain = 'default' ) { 103 120 $translations = get_translations_for_domain( $domain ); 121 /** 122 * Filter text with its translation based on context information. 123 * 124 * @since 2.8.0 125 * 126 * @param string $translations Translated text. 127 * @param string $text Text to translate. 128 * @param string $context Context information for the translators. 129 * @param string $domain Text domain. Unique identifier for retrieving translated strings. 130 */ 104 131 return apply_filters( 'gettext_with_context', $translations->translate( $text, $context ), $text, $context, $domain ); 105 132 } 106 133 … … 268 295 function _n( $single, $plural, $number, $domain = 'default' ) { 269 296 $translations = get_translations_for_domain( $domain ); 270 297 $translation = $translations->translate_plural( $single, $plural, $number ); 298 /** 299 * Filter text with its translation when plural option is available. 300 * 301 * @since 2.2.0 302 * 303 * @param string $translation Translated text. 304 * @param string $single The text that will be used if $number is 1. 305 * @param string $plural The text that will be used if $number is not 1. 306 * @param string $number The number to compare against to use either $single or $plural. 307 * @param string $domain Text domain. Unique identifier for retrieving translated strings. 308 */ 271 309 return apply_filters( 'ngettext', $translation, $single, $plural, $number, $domain ); 272 310 } 273 311 … … 288 326 function _nx($single, $plural, $number, $context, $domain = 'default') { 289 327 $translations = get_translations_for_domain( $domain ); 290 328 $translation = $translations->translate_plural( $single, $plural, $number, $context ); 329 /** 330 * Filter text with its translation while plural option and context are available. 331 * 332 * @since 2.8.0 333 * 334 * @param string $translation Translated text. 335 * @param string $single The text that will be used if $number is 1. 336 * @param string $plural The text that will be used if $number is not 1. 337 * @param string $number The number to compare against to use either $single or $plural. 338 * @param string $context Context information for the translators. 339 * @param string $domain Text domain. Unique identifier for retrieving translated strings. 340 */ 291 341 return apply_filters( 'ngettext_with_context', $translation, $single, $plural, $number, $context, $domain ); 292 342 } 293 343 … … 367 417 function load_textdomain( $domain, $mofile ) { 368 418 global $l10n; 369 419 420 /** 421 * Filter text domain and/or MO file path for loading translations. 422 * 423 * @since 2.9.0 424 * 425 * @param boolean Whether to override the textomain. Default false. 426 * @param string $domain Text domain. Unique identifier for retrieving translated strings. 427 * @param string $mofile Path to the MO file. 428 */ 370 429 $plugin_override = apply_filters( 'override_load_textdomain', false, $domain, $mofile ); 371 430 372 431 if ( true == $plugin_override ) { 373 432 return true; 374 433 } 375 434 435 /** 436 * Fires before the MO translation file is loaded. 437 * 438 * @since 2.9.0 439 * 440 * @param string $domain Text domain. Unique identifier for retrieving translated strings. 441 * @param string $mofile Path to the .mo file. 442 */ 376 443 do_action( 'load_textdomain', $domain, $mofile ); 377 444 445 /** 446 * Filter MO file path for loading translations for a specific text domain. 447 * 448 * @since 2.9.0 449 * 450 * @param string $mofile Path to the MO file. 451 * @param string $domain Text domain. Unique identifier for retrieving translated strings. 452 */ 378 453 $mofile = apply_filters( 'load_textdomain_mofile', $mofile, $domain ); 379 454 380 455 if ( !is_readable( $mofile ) ) return false; … … 401 476 function unload_textdomain( $domain ) { 402 477 global $l10n; 403 478 479 /** 480 * Filter text domain for loading translation. 481 * 482 * @since 3.0.0 483 * 484 * @param boolean Whether to override unloading the text domain. Default false. 485 * @param string $domain Text domain. Unique identifier for retrieving translated strings. 486 */ 404 487 $plugin_override = apply_filters( 'override_unload_textdomain', false, $domain ); 405 488 406 489 if ( $plugin_override ) 407 490 return true; 408 491 492 /** 493 * Fires before the text domain is unloaded. 494 * 495 * @since 3.0.0 496 * 497 * @param string $domain Text domain. Unique identifier for retrieving translated strings. 498 */ 409 499 do_action( 'unload_textdomain', $domain ); 410 500 411 501 if ( isset( $l10n[$domain] ) ) { … … 458 548 * @param string $plugin_rel_path Optional. Relative path to WP_PLUGIN_DIR where the .mo file resides. 459 549 */ 460 550 function load_plugin_textdomain( $domain, $deprecated = false, $plugin_rel_path = false ) { 461 $locale = apply_filters( 'plugin_locale', get_locale(), $domain ); 551 $locale = get_locale(); 552 /** 553 * Filter a plugin's locale. 554 * 555 * @since 3.0.0 556 * 557 * @param string $locale The plugin's current locale. 558 * @param string $domain Text domain. Unique identifier for retrieving translated strings. 559 */ 560 $locale = apply_filters( 'plugin_locale', $locale, $domain ); 462 561 463 562 if ( false !== $plugin_rel_path ) { 464 563 $path = WP_PLUGIN_DIR . '/' . trim( $plugin_rel_path, '/' ); … … 490 589 * @return bool True when textdomain is successfully loaded, false otherwise. 491 590 */ 492 591 function load_muplugin_textdomain( $domain, $mu_plugin_rel_path = '' ) { 592 // duplicate_hook 493 593 $locale = apply_filters( 'plugin_locale', get_locale(), $domain ); 494 594 $path = trailingslashit( WPMU_PLUGIN_DIR . '/' . ltrim( $mu_plugin_rel_path, '/' ) ); 495 595 … … 519 619 * @return bool True when textdomain is successfully loaded, false otherwise. 520 620 */ 521 621 function load_theme_textdomain( $domain, $path = false ) { 522 $locale = apply_filters( 'theme_locale', get_locale(), $domain ); 622 $locale = get_locale(); 623 /** 624 * Filter a theme's locale. 625 * 626 * @since 3.0.0 627 * 628 * @param string $locale The theme's current locale. 629 * @param string $domain Text domain. Unique identifier for retrieving translated strings. 630 */ 631 $locale = apply_filters( 'theme_locale', $locale, $domain ); 523 632 524 633 if ( ! $path ) 525 634 $path = get_template_directory();