Ticket #39087: 39087.11.diff
File 39087.11.diff, 6.9 KB (added by , 6 years ago) |
---|
-
src/wp-admin/js/customize-widgets.js
diff --git src/wp-admin/js/customize-widgets.js src/wp-admin/js/customize-widgets.js index d3a4edcc64..b482e8d607 100644
1616 1616 * @returns {void} 1617 1617 */ 1618 1618 updateNotice = function() { 1619 var activeSectionCount = getActiveSectionCount(), message, nonRenderedAreaCount, registeredAreaCount;1619 var activeSectionCount = getActiveSectionCount(), someRenderedMessage, nonRenderedAreaCount, registeredAreaCount; 1620 1620 noticeContainer.empty(); 1621 1621 1622 1622 registeredAreaCount = api.Widgets.data.registeredSidebars.length; … … 1624 1624 1625 1625 if ( 0 !== activeSectionCount ) { 1626 1626 nonRenderedAreaCount = registeredAreaCount - activeSectionCount; 1627 message = ( 1 === nonRenderedAreaCount ? l10n.someAreasShown.singular : l10n.someAreasShown.plural ).replace( '%d', nonRenderedAreaCount );1627 someRenderedMessage = l10n.someAreasShown[ nonRenderedAreaCount ]; 1628 1628 } else { 1629 message = ( 1 === registeredAreaCount ? l10n.noAreasShown.singular : l10n.noAreasShown.plural ).replace( '%d', registeredAreaCount ); 1629 someRenderedMessage = l10n.noAreasShown; 1630 } 1631 if ( someRenderedMessage ) { 1632 noticeContainer.append( $( '<p></p>', { 1633 text: someRenderedMessage 1634 } ) ); 1630 1635 } 1631 1636 1632 1637 noticeContainer.append( $( '<p></p>', { 1633 text: message1634 } ) );1635 noticeContainer.append( $( '<p></p>', {1636 1638 text: l10n.navigatePreview 1637 1639 } ) ); 1638 1640 } -
src/wp-includes/class-wp-customize-widgets.php
diff --git src/wp-includes/class-wp-customize-widgets.php src/wp-includes/class-wp-customize-widgets.php index 887c11fa0c..2522ac8b0b 100644
final class WP_Customize_Widgets { 720 720 </div>' 721 721 ); 722 722 723 /* 724 * Gather all strings in PHP that may be needed by JS on the client. 725 * Once JS i18n is implemented (in #20491), this can be removed. 726 */ 727 $some_non_rendered_areas_messages = array(); 728 $some_non_rendered_areas_messages[1] = html_entity_decode( 729 /* translators: placeholder is the number of other widget areas registered but not rendered */ 730 __( 'Your theme has 1 other widget area, but this particular page doesn’t display it.' ), 731 ENT_QUOTES, 732 get_bloginfo( 'charset' ) 733 ); 734 $registered_sidebar_count = count( $wp_registered_sidebars ); 735 for ( $non_rendered_count = 2; $non_rendered_count < $registered_sidebar_count; $non_rendered_count++ ) { 736 $some_non_rendered_areas_messages[ $non_rendered_count ] = html_entity_decode( sprintf( 737 /* translators: placeholder is the number of other widget areas registered but not rendered */ 738 _n( 739 'Your theme has %s other widget area, but this particular page doesn’t display it.', 740 'Your theme has %s other widget areas, but this particular page doesn’t display them.', 741 $non_rendered_count 742 ), 743 number_format_i18n( $non_rendered_count ) 744 ), ENT_QUOTES, get_bloginfo( 'charset' ) ); 745 } 746 747 if ( 1 === $registered_sidebar_count ) { 748 $no_areas_shown_message = html_entity_decode( sprintf( 749 /* translators: placeholder is the total number of widget areas registered */ 750 __( 'Your theme has 1 widget area, but this particular page doesn’t display it.' ) 751 ), ENT_QUOTES, get_bloginfo( 'charset' ) ); 752 } else { 753 $no_areas_shown_message = html_entity_decode( sprintf( 754 /* translators: placeholder is the total number of widget areas registered */ 755 _n( 756 'Your theme has %s widget area, but this particular page doesn’t display it.', 757 'Your theme has %s widget areas, but this particular page doesn’t display them.', 758 $registered_sidebar_count 759 ), 760 number_format_i18n( $registered_sidebar_count ) 761 ), ENT_QUOTES, get_bloginfo( 'charset' ) ); 762 } 763 723 764 $settings = array( 724 765 'registeredSidebars' => array_values( $wp_registered_sidebars ), 725 766 'registeredWidgets' => $wp_registered_widgets, … … final class WP_Customize_Widgets { 733 774 'widgetMovedUp' => __( 'Widget moved up' ), 734 775 'widgetMovedDown' => __( 'Widget moved down' ), 735 776 'navigatePreview' => __( 'You can navigate to other pages on your site while using the Customizer to view and edit the widgets displayed on those pages.' ), 736 'someAreasShown' => wp_array_slice_assoc( 737 /* translators: placeholder is the number of other widget areas registered */ 738 _n_noop( 739 'Your theme has %d other widget area, but this particular page doesn\'t display it.', 740 'Your theme has %d other widget areas, but this particular page doesn\'t display them.' 741 ), 742 array( 'singular', 'plural' ) 743 ), 744 'noAreasShown' => wp_array_slice_assoc( 745 /* translators: placeholder is the total number of widget areas registered */ 746 _n_noop( 747 'Your theme has %d widget area, but this particular page doesn\'t display it.', 748 'Your theme has %d widget areas, but this particular page doesn\'t display them.' 749 ), 750 array( 'singular', 'plural' ) 751 ), 777 'someAreasShown' => $some_non_rendered_areas_messages, 778 'noAreasShown' => $no_areas_shown_message, 752 779 'reorderModeOn' => __( 'Reorder mode enabled' ), 753 780 'reorderModeOff' => __( 'Reorder mode closed' ), 754 781 'reorderLabelOn' => esc_attr__( 'Reorder widgets' ), -
tests/qunit/fixtures/customize-widgets.js
diff --git tests/qunit/fixtures/customize-widgets.js tests/qunit/fixtures/customize-widgets.js index 14d43fb872..cee4c6db13 100644
window._wpCustomizeWidgetsSettings = { 48 48 'l10n': { 49 49 'error': 'An error has occurred. Please reload the page and try again.', 50 50 'navigatePreview': 'You can navigate to other pages on your site while using the Customizer to view and edit the widgets displayed on those pages.', 51 'noAreasShown': { 52 'plural': 'Your theme has %d widget areas, but this particular page doesn\'t display them.', 53 'singular': 'Your theme has %d widget area, but this particular page doesn\'t display it.' 54 }, 51 'noAreasShown': 'Your theme has 3 widget areas, but this particular page doesn\u2019t display them.', 55 52 'noWidgetsFound': 'No widgets found.', 56 53 'removeBtnLabel': 'Remove', 57 54 'removeBtnTooltip': 'Trash widget by moving it to the inactive widgets sidebar.', … … window._wpCustomizeWidgetsSettings = { 61 58 'saveBtnLabel': 'Apply', 62 59 'saveBtnTooltip': 'Save and preview changes before publishing them.', 63 60 'someAreasShown': { 64 ' plural': 'Your theme has %d other widget areas, but this particular page doesn\'t display them.',65 ' singular': 'Your theme has %d other widget area, but this particular page doesn\'t display it.'61 '1': 'Your theme has 1 other widget area, but this particular page doesn\u2019t display it.', 62 '2': 'Your theme has 2 other widget areas, but this particular page doesn\u2019t display them.' 66 63 }, 67 64 'widgetMovedDown': 'Widget moved down', 68 65 'widgetMovedUp': 'Widget moved up',