About .pot, .po, and .mo Translation Files in BuddyPress

I have been using Eric Johnson’s BuddyPress Custom Groups Name plugin for a few years on a site and recently discovered that it stopped working properly on all of the BuddyPress components. The issue is that the default BuddyPress theme has updated some of its translation definitions.

So, I had to figure out how to hack into the .po file and update the plugin accordingly. There were only two items that needed to be added, but working with translation files is always confusing to me.

The first step was to open up the custom-language.po file located in the bp-custom-groups-name folder. I needed to add new definitions, so I opened it in a text editor and added the following definition:

#: bp-forums/bp-forums-template.php:1293
#, php-format
msgid "Viewing post %1$s to %2$s (%3$s total posts)"
msgstr "Viewing conversation topic %1$s to %2$s (%3$s total topics)"

I saved the file and then opened it up in Poedit. Without touching it further, I did a “save as” in Poedit and saved it as custom-language.mo, overwriting the file of the same name in the plugin’s folder.

Then I uploaded and, wahhhlah! My new language definition works!

One breakthrough I had in this regard was recognizing that .po is intended to be human readable. This means that I can open .po files in a text editor. I previously was stumped trying to open .mo files in text editors – it turns out that .mo files are intended to be read by machines-only.

On a side note, I really don’t know why language files are such a pain to work with. I mean, why can’t there just be a simple .php or .txt file with all the definitions in it? In my Flash days, we would have done this with a simple xml file. Oh well… It still feels good to learn something. 🙂

The Mighty Mo! Design Co.

RSS From Toby’s Blog

  • Where uncertainty exists, don’t order specific.
    4 Idiot Case Studies with 2 simple age-old business lessons. The post Where uncertainty exists, don’t order specific. appeared first on Toby Cryns, WordPress Trainer in Minneapolis, MN.
  • “Now THAT was a good meeting!”
    A single effective meeting can change the course of history for a company. Imagine if you could lead effective meetings EVERY DAY! You can, but it takes curiosity & practice. This article is a good place to start your journey to a more effective you. The post “Now THAT was a good meeting!” appeared first […]
  • Never Respond to RFPs & Custom Proposal Requests
    Y'all who work at normal 9-5 jobs don't need to deal with the B.S. that is an RFP process (or rather you get paid to deal with it). But us freelancers gotta deal with a whole big bag of schtuff when it comes to custom proposals. Here's my quick-and-dirty RFP filtering process that I use […]

More posts from themightymo.com

How to merge two folders, including all sub-folders and files, on Mac

By The Mighty Mo! Design Co. | November 3, 2022

Today I had an issue where I needed to merge two folders, each of which contained many sub- and sub-sub folders that had lots of images. After a lot of trial-and-error and some Googling, I found the best solution is to use the “ditto” command in Terminal like this: That’s it! Hat tip to AppleInsider.

mailchimp usage stats

Some Surprising Trends in Website Development

By Toby Cryns | October 17, 2022

I wasted some time today to bring you (dum dum duuuuum!): Some Surprising Trends in Website Development!

How to Configure WordPress with Cloudflare, HSTS, TLS, and Secure Headers

By The Mighty Mo! Design Co. | October 11, 2022

I was recently asked to look into creating some secure http headers as well as forcing a website to load over TLS1.2+. Below are my “how to” instructions for updating these settings within WordPress and Cloudflare. Install & Configure the Cloudflare WordPress plugin. Make sure an SSL Certificate is installed on your host for your…

RSS From Toby’s Blog

  • Where uncertainty exists, don’t order specific.
    4 Idiot Case Studies with 2 simple age-old business lessons. The post Where uncertainty exists, don’t order specific. appeared first on Toby Cryns, WordPress Trainer in Minneapolis, MN.
  • “Now THAT was a good meeting!”
    A single effective meeting can change the course of history for a company. Imagine if you could lead effective meetings EVERY DAY! You can, but it takes curiosity & practice. This article is a good place to start your journey to a more effective you. The post “Now THAT was a good meeting!” appeared first […]
  • Never Respond to RFPs & Custom Proposal Requests
    Y'all who work at normal 9-5 jobs don't need to deal with the B.S. that is an RFP process (or rather you get paid to deal with it). But us freelancers gotta deal with a whole big bag of schtuff when it comes to custom proposals. Here's my quick-and-dirty RFP filtering process that I use […]