1site in meerdere landen

Pagina: 1
Acties:

  • x-force
  • Registratie: Maart 2001
  • Laatst online: 05-01-2024
Ik heb een website ontwikkeld die ik in verschillende landen wil gaan gebruiken. Ik voorzie alleen problemen met versie beheer. Het ontwikkelen aan de "main"-versie gaat goed icm een team van programmeurs, daar verwacht(en zie) ik geen problemen.

Het probleem is als volgt:
De mainsite wordt gekopieerd naar land1 t/m land10.
Per land zullen er (vrees ik) toch wel kleine aanpassingen zijn.

Een maand later is er een bug gevonden, deze wordt in de main-versie gemaakt en moet worden doorgezet naar de andere 10 landen. De files copy-pasten zoals de eerste keer gaat niet omdat er kleine aanpassingen kunnen zijn.

Een oplossing zou kunnen zijn de regels opschrijven die worden gewijzigd en deze vervolgens met de hand in de 10 landen door te voeren. Dit is erg tijdrovend.

Nu ben ik aan het kijken naar CVS en SVN maar dat is meer voor het ontwikkelen van de main-versie. Of is het mogelijk om de mainsite versie1 te geven. Een copy maken naar land1 en deze versie 1.01 te noemen. Wanneer er dan wat in de main-versie veranderd zou je met de diff's de verschillende landen kunnen upgraden naar 2.xx waarbij de lokale wijzigingen behouden blijven.

Mijn vraag dus:
- kan dat wat ik gedachte heb met cvs?
- Hoe pakken jullie dit aan icm internationalisering ?

Ps ik hoop dat het verhaal een beetje duidelijk is

VangenopBetaalwater.nl Het platform om ervaringen over betaalwater in Frankrijk te delen met andere karpervissers zodat iedereen kan vangen op betaalwater!


  • André
  • Registratie: Maart 2002
  • Laatst online: 23-02 17:02

André

Analytics dude

Even een andere gedachte: wat als je de 10 domeinen aan 1 webserver hangt, elk van die domeinen geef je dan de startpagina in hun eigen taal. Dan hoef je maar 1 site te onderhouden en heb je gewoon 10 taalmodules er aan hangen.

  • MTWZZ
  • Registratie: Mei 2000
  • Laatst online: 13-08-2021

MTWZZ

One life, live it!

Het mooiste is natuurlijk er voor zorgen dat je localisatie/globalisatie compleet gescheiden is van je CMS logica zodat je voor wijzigingen aan die logica geen extra stappen hoeft te ondernemen om het voor verschillende landen aan te kunnen passen.
Verder is het wel mogelijk om hier CVS voor te gebruiken en die door de gebruikers/admins in de betreffende landen uit te laten checken zodat ze de laatste versie hebben maar makkelijker is het denk ik om een setup (al dan niet een zip/tar) te bouwen.

Wat André zegt :)

[ Voor 3% gewijzigd door MTWZZ op 14-03-2006 15:25 ]

Nu met Land Rover Series 3 en Defender 90


  • Wacky
  • Registratie: Januari 2000
  • Laatst online: 20-01 18:47

Wacky

Dr. Lektroluv \o/

Stop de tekst van de site in een lokale database en vervang alleen de bestanden :?

Of gaat het om meer als alleen de tekst die anders is per land?

[ Voor 34% gewijzigd door Wacky op 14-03-2006 15:29 ]

Nu ook met Flickr account


  • Suepahfly
  • Registratie: Juni 2001
  • Laatst online: 05-02 13:47
Daar zijn oplossingen voor zoals Gettext, waar mee je programma logica volledig scheidt van de taal.
Za kan je (in php bijv.) je main opbouwen in een taal en vervolgens met Gettext alles laten vertalen zonder dat je speciale definities aan hoeft te maken (zoals je bij phpBB ziet).

  • x-force
  • Registratie: Maart 2001
  • Laatst online: 05-01-2024
Teksten staan in een taal file. Maar inderdaad landX die wil daar een extra stukje tekst. Dat pas je dan aan. En het file is net iets anders. Maar je kunt ook aan functionele dingetjes denken.

En helaas heeft de site geen MVC opbouw.

maar alle sites als alias onder 1site hangen. In php checken wat de opgegeven url is, dan de juiste DB gebruiken en taal files zou wel een optie zijn.

VangenopBetaalwater.nl Het platform om ervaringen over betaalwater in Frankrijk te delen met andere karpervissers zodat iedereen kan vangen op betaalwater!


  • CH4OS
  • Registratie: April 2002
  • Niet online

CH4OS

It's a kind of magic

x-force schreef op dinsdag 14 maart 2006 @ 15:42:
maar alle sites als alias onder 1site hangen. In php checken wat de opgegeven url is, dan de juiste DB gebruiken en taal files zou wel een optie zijn.
IP -> Hostnamecheck lijkt mij ook een mooie mogelijke oplossing... :)

Verwijderd

Ik zou je applicatie toch zo veel mogelijk multi language opbouwen. Echt als je app gaat opsplitsen in 10+ development tracks wordt het maintainence echt een hel... op 10+ plaatsen bugs fixen op 10+ plaatsen nieuwe functionaliteiten toevoegen etc etc etc

  • NBK
  • Registratie: Oktober 2002
  • Laatst online: 20-02 12:45

NBK

Weercam-Avatar

Als het echt kleine dingen betreft als "hier en daar een extra regel tekst" zou je er natuurlijk ook voor kunnen kiezen om dat kleine aanpassingen iedere keer weer toe te passen nadat de site is geupdate. Grotere pakketten als phpBB werken ook met MOD's en updaten gaat daar via scripts die alleen stukken code vervangen die bugs bevatten. Nou is dat laatste volgens mij vrij lastig te implementeren maar het gebruik van MOD's om die kleine wijzigingen iedere keer opnieuw toe te passen zou niet zo'n probleem moeten zijn.

[ Voor 24% gewijzigd door NBK op 14-03-2006 16:16 ]

PC's; Home; Met 8619 units als 72e geëindigd bij DPC @ SETI-classic


  • xtra
  • Registratie: November 2001
  • Laatst online: 19-11-2025
Zelf heb ik ook zoiets maar dan gaat het niet om verschillende landen maar om websites van verschillende organisaties. De layout is op een paar uitzonderingen na volledig gelijk. De verschillen zitten in de content en wat grafische dingen als een logo. De uitzonderingen hebben een volledig eigen layout.
De content staat in een database dus ik hoef alleen daar naar te verwijzen. Omdat alles ook op één webserver draait kan ik bijna alle code delen. Hierdoor zijn wijzigingen snel te doen en goed te beheersen. Voor de specifieke instellingen per site gebruik ik een include-bestand van een regel of 20.
Het wijzigen van kleine dingen in één site komt ook bij mij voor. Een mogelijkheid is om de code te kopiëren en aan te passen maar dan krijg je dus het probleem waar jij mee zit. Ik heb ervoor gekozen alles zeer flexibel en modulair op te zetten. Het enige verschil per site zit dan nog in het include-bestand en is later voor andere sites ook eenvoudig toe te passen als je dat wilt.
In eerste instantie kost het natuurlijk veel tijd maar na verloop van tijd voorkomt het veel fouten en bespaart het tijd. Bij nieuwe code kun je er natuurlijk meteen rekening mee houden.

  • No13
  • Registratie: Januari 2001
  • Laatst online: 23-02 20:18

No13

/me was here

Om puur even op die laatste eerste vraag in te gaan: Subversion bijvoorbeeld (maar ook cvs enz) kan voor ieder land een aparte branch aanmaken en dan kan je patches (aanpassingen) mergen naar 1 of meerdere andere branches in je versiebeheer, zo zou je indien je niet teveel conflicterende wijzigingen maakt iedere verandering maar 1 keer hoeven te maken en vervolgens even naar een andere branch mergen...

Als dit verhaal te ingewikkeld/technisch klinkt ga dan eens kijken bij: http://svnbook.red-bean.c...book.html#svn.branchmerge

  • djluc
  • Registratie: Oktober 2002
  • Laatst online: 20-02 15:44
Ik weet niet hoe uitgebreid je website is maar je zou kunnen overwegen om de site opnieuw te programmeren. Doe dit dan op basis van een framework welke meerdere websites en meerdere talen ondersteunt. Dat lost je probleem op een zeer degelijke manier voor de toekomst op.

  • zneek
  • Registratie: Augustus 2001
  • Laatst online: 08-02-2025
Ik zou je ook zeker adviseren dit goed uit te modelleren om tot een sluitend multilanguage en multicountry ontwerp te komen (let op! dit zijn verschillende dingen)

Laatste project wat ik gedaan heb was multilanguage en multicountry. Daarin werd op 3 niveaus met vertalingen gewerkt: land en taal afhankelijke content in de database(cms content zeg maar), platform messages en applicatie messages.

Bijvoorbeeld, de content voor de homepage staat in alle beschikbare talen in de db. Maar het label van de contactform knop voor verzenden heeft als value iets van "applicationMessage(contactform_sendbutton)" waarbij de correcte waarde weer uit een language library voor de gekozen taal gehaald wordt. De platform messages komen op een vergelijkbare manier ook uit een language library, maar dan 1 die in het platform/framework zit.

Verwijderd

Ik zou gaan voor een template gestuurde site. Ik ben ongeveer hetzelfde aan het bouwen voor 10 cultuurorganisaties die via een shared DB sterk verschillende sites gaan krijgen. Er is 1 site controller (SmartySite class) en er is per site een directory met daarin de specifieke templates, images, enz.
Op die manier is alle programmacode centraal in de controller, die dan methods heeft als assignNews($newsId) en subactions als UserAuthenticationAction of ForumAction (dit zijn aparte classes).
De templates zijn gedaan met Smarty, waarmee je heel makkelijk eigen functies kan definieren die dan in de template aangeroepen worden. Iedere site heeft bvb een eigen startpagina.tpl waar dan functie aanroepen instaan als {zoek_nieuws var="nieuws" maximum="10" categorie="6"}. Maar de zoek_nieuws methode is maar 1 keer gedefinieerd, dus eventuele bugfixing gebeurt ook maar één keer. de backend is trouwens ook shared.
Pagina: 1