Make WordPress Core

Ticket #48606: 48606-ordinal-suffix-mandatory-to-decline-month.patch

File 48606-ordinal-suffix-mandatory-to-decline-month.patch, 2.3 KB (added by Rarst, 5 years ago)
  • tests/phpunit/tests/functions/maybeDeclineDate.php

    IDEA additional info:
    Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP
    <+>UTF-8
     
    7070                        array( 'ru_RU', '21 Июнь', '21 июня' ),
    7171                        array( 'ru_RU', '1 Январь 2016', '1 января 2016' ),
    7272                        array( 'ru_RU', 'Январь 1st 2016', '1 января 2016' ),
    73                         array( 'ru_RU', 'Январь 1 2016', '1 января 2016' ),
     73                        array( 'ru_RU', 'Январь 1 2016', 'Январь 1 2016' ),
     74                        array( 'ru_RU', 'Пятница 1 Январь 2016', 'Пятница 1 Январь 2016' ),
    7475                        array( 'pl_PL', '1 Styczeń', '1 stycznia' ),
    7576                        array( 'hr', '1. Siječanj', '1. siječnja' ),
    7677                        array( 'ca', '1 de abril', "1 d'abril" ),
  • src/wp-includes/functions.php

    IDEA additional info:
    Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP
    <+>UTF-8
     
    335335                $months          = $wp_locale->month;
    336336                $months_genitive = $wp_locale->month_genitive;
    337337
    338                 // Match a format like 'j F Y' or 'j. F'
     338                // Match a format like 'j F Y' or 'j. F' (day of the month, followed by month name) and decline the month.
    339339                if ( preg_match( '#^\d{1,2}\.? [^\d ]+#u', $date ) ) {
    340340
    341341                        foreach ( $months as $key => $month ) {
     
    349349                        $date = preg_replace( $months, $months_genitive, $date );
    350350                }
    351351
    352                 // Match a format like 'F jS' or 'F j' and change it to 'j F'
    353                 if ( preg_match( '#^[^\d ]+ \d{1,2}(st|nd|rd|th)? #u', trim( $date ) ) ) {
     352                // Match a format like 'F jS' (month name, followed by day with ordinal suffix) and change it to declined 'j F'.
     353                if ( preg_match( '#^[^\d ]+ \d{1,2}(st|nd|rd|th)#u', trim( $date ) ) ) {
    354354                        foreach ( $months as $key => $month ) {
    355                                 $months[ $key ] = '#' . $month . ' (\d{1,2})(st|nd|rd|th)?#u';
     355                                $months[ $key ] = '#' . $month . ' (\d{1,2})(st|nd|rd|th)#u';
    356356                        }
    357357
    358358                        foreach ( $months_genitive as $key => $month ) {