De vreo câteva săptămâni mă tot frământ şi nu reuşesc să dau de cap conversiei de la Kunena (forumul-plugin al CMS-ului Joomla) la phpBB. Vreau să transfer categoriile, subcategoriile, subiectele, postările şi ataşamentele din Kunena în phpBB. Nu mi-s nici programator, nici mare jongleur cu universul PHP / SQL, iar cu phpBB-ul sunt începător, aşa că prea departe nu am reuşit să ajung. Găsiţi în subsolul acestei postări detaliile tehnice.
Pe la începutul anului am creat comunitatea Motorist.ro, un site dedicat adresat amatorilor de motorizate - în special motociclete vechi. Am bazat site-ul pe platforma Joomla v2.5.9 fiindcă CMS-ul respectiv părea să fie cea mai bună soluţie pentru mine şi oferea cel mai echilibrat compromis între flexibilitate şi uşurinţă de folosire în privinţa administrării. În plus, toată lumea îl lăuda ca fiind minunat la partea de plugin-uri, iar eu ştiam că aveam să mă folosesc de câteva extensii importante.
Pentru partea de forum am folosit Kunena 2.0.4, o extensie dezvoltată ad-hoc pentru Joomla. Din nou, această variantă mi s-a părut avantajoasă în comparaţie cu soluţiile ce presupuneau "lipirea" CMS-ului cu un forum extern. La momentul respectiv eram "certat" cu phpBB-ul, fiind un sistem care-mi părea mai puţin prietenos în anumite privinţe.
Am început însă repejor să mă lovesc de felurite limitări ale sistemului folosit. Au apărut mai întâi bug-uri pe care nici până astăzi nu le-am putut înlătura, cel mult le-am camuflat ca să nu mai bată la ochi. Unde forumul Kunena se integrează frumos cu Joomla şi cu alte extensii de gestionare a membrilor (Community Builder, altă extensie mare pentru Joomla), este totuşi limitat şi nu are puterea unui sistem dedicat forumisticii. Am constatat repejor că am deocamdată un briceag, nu o sculă specializată. Şi având în vedere că 95% din activitatea de pe acest site se petrece în jurul forumului, avantajele phpBB-ului sunt nete.
Ce să mai - vreau să trec la phpBB! De ce phpBB şi nu altceva? Păi vBulletin nu mai e ce-a fost şi oricum îi scump, IPB e mare amator de resurse şi costă de ne-ndoaie, iar celelalte soluţii open source / freeware pentru forumistică par să fie în general mai puţin versatile.
Aşa că m-am împăcat la loc cu phpBB, l-am luat uşor, m-am învăţat să nu-l bruschez când vine vorba de adăugat extensii (vajnicele MOD-uri) şi iată că ne-am împrietenit. Am făcut o instalare de test a phpBB 3.0.11 la adresa forum.motorist.ro şi mi-a plăcut funcţionalitatea sistemului, extinsă subtil cu câteva MOD-uri.
Singura problemă majoră constă în transferul bazei de date (categorii, subcategorii, subiecte, postări, ataşamente) de la Kunena la phpBB. Unicul convertor existent pentru aşa ceva este un script relativ subdezvoltat - pe nume "XMas 0.3" la ultima versiune -, conceput pentru trecerea la phpBB v2.0.22 dinspre Fireboard 1.0.x, predecesorul sistemului Kunena. Am copiat script-ul de pe postarea din link, i-am modificat în consecinţă datele de conectare la propria bază de date, am salvat totul într-un fişier *.php şi l-am încărcat pe site în directorul cu phpBB. Apoi am băgat într-o singură bază de date atât tabelele Joomla / Kunena cât şi cele ale phpBB-ului şi am încercat să rulez fişierul. Problema este că - din câte înţeleg - s-au petrecut de-atunci suficiente schimbări la structura bazei de date pentru ambele sisteme, aşa că script-ul dă previzibile erori din pricina asta.
Menţionez că am reuşit să transfer utilizatorii din Kunena în phpBB-ul instalat la forum.motorist.ro cu ajutorul uneltei Import Users. Am găsit (şi instalat) o extensie pentru Joomla pentru a putea exporta datele membrilor într-un fişier *.csv, fişier pe care l-am prelucrat oleacă pentru a-l face compatibil cu unealta amintită.
Pe adresa forum2.motorist.ro am instalat phpBB 2.0.22 şi am testat script-ul, iar eroarea la care m-am înglodat este următoarea:
Cod: Selectaţi tot
Importing data from Fireboard
Connecting to Database... OK
Populating Categories...
Inserted 21 Rows... OK
Populating Forums...
Invalid query:
INSERT INTO phpbb2_forums (forum_id, cat_id, forum_name, forum_desc, forum_status, forum_order, forum_posts, forum_topics, forum_last_post_id, prune_next, prune_enable, auth_view, auth_read, auth_post, auth_reply, auth_edit,auth_delete, auth_sticky, auth_announce, auth_vote, auth_pollcreate, auth_attachments) SELECT id, parent, name, description, 0, ordering, c.posts, b.topics, d.last, NULL, 0, 0, 1, 1, 1, 1, 1, 3, 3, 1, 1, 0 FROM mot_kunena_categories LEFT JOIN (SELECT catid, COUNT(*) AS topics FROM mot_kunena_messages WHERE id=thread GROUP BY catid) b ON mot_kunena_categories.id=b.catid LEFT JOIN (SELECT catid, COUNT(*) AS posts FROM mot_kunena_messages GROUP BY catid) c ON mot_kunena_categories.id=c.catid LEFT JOIN (SELECT catid, MAX(id) AS last FROM mot_kunena_messages GROUP BY catid) d ON mot_kunena_categories.id=d.catid WHERE parent != 0 GROUP BY id;
Unknown column 'parent' in 'field list''
Detalii site:
- ce vreau să fac: (transfer şi) conversie bază de date de la Kunena 2.5.4 la phpBB 3.0.11
- URL site principal: motorist.ro - Joomla v2.5.9 (CMS) + Kunena v2.5.4 (forum)
- URL site de test phpBB3: forum.motorist.ro (phpBB 3.0.11)
- URL site de test phpBB2: forum2.motorist.ro (2.0.22)
- Sistem operare: Linux
- Versiune Apache: 2.2.22
- Versiune PHP: 5.2.17
- Versiune MySQL: 5.0.96-community-log