The Through The Scriptures website has been one of my more complex projects that I started working on in September of 2014. It’s an online biblical learning platform with 51 courses, that will eventually be completely translated into 22 languages. I learned a lot about localizing PHP files and managing translations because of this project. As a user, purchasing a course provides them with access to that specific course for 30-50 days depending on if it’s their first time taking the course. After that time WP-Cron revokes their access to that course material. Users also have access to a “My Account” page to manage their orders, course progress, and grades. It’s built largely around WooCommerce, WP-Courseware, and WordPress Multilingual (WPML).
What’s crazy about this project is the amount of data behind it. Each one of these 51 courses has around 20 units, 5 tests, and a final test. Each test has 50 randomized questions taken from a larger question pool. The final test pulls from the question pools of all previous tests. In English alone, if we assume that each test question pool is around 80 questions, that’s around 1020 units and a minimum of 20,400 questions. When you multiply that times 22 languages, you end up with 22,440 units and an estimated 448,800 questions. This doesn’t include page translations, product translations, WordPress core translations, theme translations, or plugin translations which amount to thousands upon thousands of strings that must be translated.
A personal note: I’m a Gnostic Atheist. I feel like Einstein building the atom bomb. I don’t know where I should draw the line between doing my job, and doing what I think is morally best for society.