Why cant you use the MediaWikiSite class to get a site reference, call ->getLanguageCode() then make a language object and use the language object to get the direction?
-- Brian On Wednesday, 17 December 2025, יגאל חיטרון <[email protected]> wrote: > The answer to both of you. The extension GlobalWatchlist needs to know for > every wikisite in a wikifarm, if it's LTR or RTL. This is because the > Special Page shows many sections, each from different wiki, on this wiki's > language. So, we need a function, that gets 'en.wikipedia.org' as a > parameter and returns 'ltr'. For now, there is a hardcoded list of rtl > language codes there, as regex, which for my sake is worse that using API, > just IMHO. It was always a bad solution, but when I implemented it years > ago, we didn't know other choice. Now I'm aware of the SiteMatrix > extension, which evaluates this mapping on runtime, and I can use the API > call to retrieve the relevant information. I looked a lot for a way to > avoid it. I think I found a way to get a direction from the language code, > but I still can't get the language code from the URL. I can guess it from ' > en.wikipedia.org', but not from 'commons.wikimedia.org', and not from ' > abcdefgh.catalyst.wmcloud.org'. So, as for now, I don't see another way > except for the API call. > Igal > https://phabricator.wikimedia.org/T412505 > > > בתאריך יום ה׳, 18 בדצמ׳ 2025, 00:30, מאת John <[email protected] > >: > >> One of the rules I’ve always used when proving support is don’t tell me >> how you want to do something. Tell me the goal, and we can get a solution. >> The method you are trying to use may or may not be optimal. >> >> >> On Wed, Dec 17, 2025 at 5:13 PM Brian Wolff <[email protected]> wrote: >> >>> Generally speaking, calling the action api externally is strongly >>> discouraged. Typically there is a backend function that is prefered instead. >>> >>> Whether that is actually true in your case depends on what you are >>> doing. Whether or not your case would be an acceptable exception to the >>> general rule would depend on the specifics of what you are doing and if >>> there really is no other reasonable option. >>> >>> -- >>> Brian/bawolff >>> >>> >>> On Wednesday, 17 December 2025, יגאל חיטרון <[email protected]> >>> wrote: >>> >>>> Well, I started to think, after reading a lot of documentation and a >>>> lot of gerrit code, that my previous knowledge was wrong, and I have no >>>> choice but calling API from inside Mediawiki php, despite the words in >>>> Mediawiki developers guide "If you use an API call in Mediawiki php code, >>>> you're doing something wrong." Looks like I have no other choice. If nobody >>>> here says I can't do this, I'll start to write. Thank you. >>>> Igal >>>> >>>> >>>> >>>> <http://www.avg.com/email-signature?utm_medium=email&utm_source=link&utm_campaign=sig-email&utm_content=webmail> >>>> Virus-free.www.avg.com >>>> <http://www.avg.com/email-signature?utm_medium=email&utm_source=link&utm_campaign=sig-email&utm_content=webmail> >>>> <#m_2217923805992519085_m_-1276708365409787417_m_6372061225327250602_m_1407805277756859967_DAB4FAD8-2DD7-40BB-A1B8-4E2AA1F9FDF2> >>>> >>>> בתאריך יום ד׳, 17 בדצמ׳ 2025 ב-19:21 מאת יגאל חיטרון < >>>> [email protected]>: >>>> >>>>> Thanks, but I'm not so sure. I already saw this line. The API returns >>>>> something with more than 10000 lines. https://www.mediawiki. >>>>> org/w/api.php?action=sitematrix&format=json&smsiteprop=url%7Cdbname% >>>>> 7Ccode%7Csitename%7Clang&formatversion=2. I wanted just to call the >>>>> API from PHP, until read in developers guide "If you call API you're doing >>>>> something wrong". >>>>> Igal >>>>> >>>>> בתאריך יום ד׳, 17 בדצמ׳ 2025, 19:16, מאת Brian Wolff < >>>>> [email protected]>: >>>>> >>>>>> It should be defined at https://gerrit.wikimedia. >>>>>> org/g/operations/mediawiki-config/+/df0f99e231a682f63f82e4b4a00ecc >>>>>> e52bd22ed9/wmf-config/CommonSettings.php#1324 . As far as i can tell >>>>>> its not set dynamiclly so should have the same value at all wikimedia >>>>>> wikis. >>>>>> >>>>>> -- >>>>>> Bawolff >>>>>> >>>>>> On Wednesday, 17 December 2025, יגאל חיטרון <[email protected]> >>>>>> wrote: >>>>>> >>>>>>> I've made a Gerrit change for a Phabricator task that uses the >>>>>>> $wgSiteMatrixSites variable, which is created at runtime. How can I view >>>>>>> its value on Meta? >>>>>>> >>>>>>> The issue is that this variable seems to have a different structure >>>>>>> on each site, depending on the available data. I’ve written traversal >>>>>>> code >>>>>>> designed to handle any possible structure, but I can’t confirm if it >>>>>>> works >>>>>>> correctly for Meta. >>>>>>> >>>>>>> If I could get the Meta value—or even just the first few pages—it >>>>>>> would be very helpful. >>>>>>> >>>>>>> Thank you in advance. >>>>>>> Igal (User:Ikhitron) >>>>>>> >>>>>> _______________________________________________ >>>>>> Wikitech-l mailing list -- [email protected] >>>>>> To unsubscribe send an email to [email protected] >>>>>> https://lists.wikimedia.org/postorius/lists/wikitech-l. >>>>>> lists.wikimedia.org/ >>>>> >>>>> _______________________________________________ >>> Wikitech-l mailing list -- [email protected] >>> To unsubscribe send an email to [email protected] >>> https://lists.wikimedia.org/postorius/lists/wikitech-l. >>> lists.wikimedia.org/ >> >> _______________________________________________ >> Wikitech-l mailing list -- [email protected] >> To unsubscribe send an email to [email protected] >> https://lists.wikimedia.org/postorius/lists/wikitech-l. >> lists.wikimedia.org/ > >
_______________________________________________ Wikitech-l mailing list -- [email protected] To unsubscribe send an email to [email protected] https://lists.wikimedia.org/postorius/lists/wikitech-l.lists.wikimedia.org/
