WordPress.org

Make WordPress Core

Opened 3 years ago

Last modified 10 months ago

#15576 new defect (bug)

Proper l10n of items per page in the screen options

Reported by: SergeyBiryukov Owned by:
Milestone: Future Release Priority: normal
Severity: normal Version: 3.1
Component: I18N Keywords: has-patch commit
Focuses: Cc:

Description (last modified by SergeyBiryukov)

Sites, Users, Comments, Media items and Plugins have their own translation context on the screen options tab, e.g. “sites per page (screen options)”.

To use the right grammatical case, Posts, Pages, Categories and Tags should have that context too.

Attachments (7)

15576.patch (2.4 KB) - added by SergeyBiryukov 3 years ago.
15576.2.patch (2.3 KB) - added by SergeyBiryukov 3 years ago.
15576.3.patch (4.0 KB) - added by SergeyBiryukov 2 years ago.
15576.4.patch (1.1 KB) - added by SergeyBiryukov 21 months ago.
15576.5.patch (1.1 KB) - added by SergeyBiryukov 21 months ago.
15576.6.patch (6.3 KB) - added by SergeyBiryukov 21 months ago.
15576.7.patch (6.2 KB) - added by DrewAPicture 12 months ago.
Refresh.

Download all attachments as: .zip

Change History (29)

comment:1 zeo3 years ago

Related #13673

comment:2 dd323 years ago

  • Keywords needs-patch added
  • Milestone changed from Awaiting Review to Future Release

SergeyBiryukov3 years ago

comment:3 SergeyBiryukov3 years ago

  • Keywords 3.2-early has-patch added; needs-patch removed

SergeyBiryukov3 years ago

comment:4 SergeyBiryukov3 years ago

  • Keywords 3.3-early added; 3.2-early removed

Refreshed for 3.3.

comment:5 SergeyBiryukov3 years ago

  • Milestone changed from Future Release to 3.3

comment:6 in reply to: ↑ description SergeyBiryukov3 years ago

Also, for proper translation all of these strings should support single and plural forms.

That part won't be implemented, according to nacin's comment on #13673.

The context, however, is still needed, so this is what the patch does.

comment:7 follow-up: nacin2 years ago

  • Keywords 3.3-early removed
  • Milestone changed from 3.3 to Awaiting Review

15576.2.patch isn't very backwards compatible. per_page should be implemented like menu_name was -- if it isn't set, it goes forward with the existing "name" argument, rather than defaulting to "Posts"/"Pages".

comment:8 nacin2 years ago

  • Milestone changed from Awaiting Review to Future Release

SergeyBiryukov2 years ago

comment:9 in reply to: ↑ 7 SergeyBiryukov2 years ago

Replying to nacin:

per_page should be implemented like menu_name was -- if it isn't set, it goes forward with the existing "name" argument, rather than defaulting to "Posts"/"Pages".

Thanks, done in 15576.3.patch.

comment:10 SergeyBiryukov22 months ago

  • Milestone changed from Future Release to 3.5

SergeyBiryukov21 months ago

SergeyBiryukov21 months ago

SergeyBiryukov21 months ago

comment:11 SergeyBiryukov21 months ago

As an alternative, we could replace "Posts"/"Pages" with "items" string (15576.4.patch), which we already have in options-reading.php:
http://core.trac.wordpress.org/browser/tags/3.4.1/wp-admin/options-reading.php#L111

The use case is essentially the same, so the context might not be needed. 15576.5.patch adds it just in case (and uses the uppercased word for consistency with other screens).

With 15576.6.patch, we could remove 9 strings by making the same change on the other screens (for consistency as well).

comment:12 nacin18 months ago

  • Milestone changed from 3.5 to Future Release

Moving to "items" across the board is a decent idea. We can talk about it in 3.6.

comment:13 SergeyBiryukov18 months ago

  • Description modified (diff)

To summarize, "20 Записи" (20 Posts) isn't a valid expession in Russian.

It should be "20 записей", but it's currently impossible to use the proper translation due to the lack of context. I imagine Czech and other languages with declensions have the same problem here.

Introducing a new label just for screen options seems like an overkill, hence the "Items" suggestion.

Version 0, edited 18 months ago by SergeyBiryukov (next)

comment:14 SergeyBiryukov16 months ago

  • Milestone changed from Future Release to 3.6

DrewAPicture12 months ago

Refresh.

comment:15 DrewAPicture12 months ago

15576.7.patch refreshes .6

Standardizing to 'Items' was a nice idea, great to remove some strings.

comment:16 SergeyBiryukov12 months ago

  • Keywords commit added

comment:17 alex-ye11 months ago

  • Cc nashwan.doaqan@… added

comment:18 follow-up: ryan11 months ago

I'd like translators to weigh in on whether they can work with having one string and context for all of these. Perhaps there are some langs without a convenient generic term like Items that covers all of these cases.

comment:19 SergeyBiryukov11 months ago

  • Cc pavelevap added

comment:20 in reply to: ↑ 18 SergeyBiryukov11 months ago

Replying to ryan:

Perhaps there are some langs without a convenient generic term like Items that covers all of these cases.

If 15576.7.patch is too drastic, we could go with 15576.5.patch to just fix the lack of context for Posts/Pages/Categories/Tags.

15576.7.patch, however, seems more consistent, since the use case in all the instances is the same.

comment:21 pavelevap11 months ago

I also really like the idea of one generic term, but:

1) There are some different plural forms, for example in Czech there are "4 položky" and "5 položek". There is no problem for default 20 items, but I am not sure about other languages...

2) It would be very helpfull for translators to manipulate with order, something like "% Items", so we could do for example "Number of Items: %". This is without problems in most languages, because we can use some internal localization "hacks".

And what about to change the string "Items" to "Number of Items:" or "Number of Items per page:" and move it before number selection? It would be more explanatory, there is enough space, etc. And also much better for translators, because there are not problems with different plurals.

comment:22 nacin10 months ago

  • Milestone changed from 3.6 to Future Release

No consensus yet, and is a UI change. Punting.

Note: See TracTickets for help on using tickets.