Gospel Translations:Technology/Multi-wiki project

From Gospel Translations

Revision as of 17:27, 3 September 2008 by Mahra (Talk | contribs)
Jump to:navigation, search

Read on to learn more. Use the discussion tab to make comments, post solutions, etc.

Contents

Description

Goal

to have a separate wiki for every language we support, with fully automated content loading and updating

Requirements


Technical process

Currently working

This is one process that could be used to accomplish the multi-wiki setup and updates. There are some underlying techniques not spelled out here, so feel free to ask questions if something isn't connecting for you.

  1. [working] Cronjob imports up-to-date info DabbleDB database and stores it in local PHP array (see structure)
  2. [quirky, but working] Automating bot (how to make one)
    1. reads local PHP array to find all entries for language X
    2. for each entry, gets translated title off of the English wiki (i.e., for Gospel_Implications/es, it finds the title Consecuencias del evangelio)
    3. for each entry, creates a page on the target wiki, i.e., http://fr.gospeltranslations.org/wiki/ENTRY_TRANSLATED_TITLE
    4. on each page created, writes in transclusion code: {{:gt_en:ENTRY_ENGLISH_NAME}}
    5. bot code: trans_bot.php
      bot framework: basic_bot.php
  3. [working] Non-English wiki uses transclusion code to pull article text from English wiki. For example, the code {{:gt_en:Gospel_Implications/es}} will grab the entire article text from Gospel_Implications/es
Still needed
  1. Multiple wiki support. Right now this wiki relies on the account settings in basic_bot.php, which are wiki specific. The code should be upgraded so that the user can run the script once and it will update multiple wikis.
  2. Data gathering. Currently the user has to first populate a wiki page with CSV-style data (see test wiki page for a messy example) telling the bot where to go and what to do. The bot should be able to automatically gather this information for each language from the English wiki.
  3. Page moving. The script should check a wiki for outdated pages (perhaps using the "last edited" date) and delete them. This will be necessary if the title of an article is re-translated, in which case the page for that article will need to move to its new title.
  4. Category management. Once a wiki is populated with articles, the categories on that wiki will need to be updated. The current script does not support that.
Navigation
Volunteer Tools
Other Wikis
Toolbox