40FINGERS Blog

Module conversie: 15.000 artikelen van Ventrian NewsArticles naar OpenContent

Module conversie: 15.000 artikelen van Ventrian NewsArticles naar OpenContent

25-06-2024

Hoewel Ventrian NewsArticles nog steeds veel wordt gebruikt binnen het DNN-ecosysteem, wordt de module al geruime tijd niet meer actief ontwikkeld of ondersteund. Omdat veel van onze klanten er nog steeds afhankelijk van zijn, proberen wij de module compatibel te houden met elke nieuwe DNN-release.

Voor nieuwe projecten maken we echter al jaren gebruik van OpenContent om vergelijkbare functionaliteit te realiseren. Wat we tot voor kort nog misten, was een manier om bestaande NewsArticles-instances om te zetten naar OpenContent.

De recente migratie van een klant met meer dan 15.000 artikelen dwong ons er in feite toe om zo’n conversietool te bouwen. Aangezien we verwachten dit in de toekomst vaker nodig te hebben, kozen we ervoor om een herbruikbare oplossing te ontwikkelen die ook werkt wanneer de volledige flexibiliteit van OpenContent wordt benut.

Hoe hebben we uiteindelijk al die 15.000+ artikelen geconverteerd?

Allereerst hadden we een OpenContent-template nodig. Timo heeft deze ontwikkeld op basis van de specifieke wensen van de klant. Aan de kant van NewsArticles maakte de site gebruik van diverse aangepaste velden die moesten worden omgezet, terwijl aan OpenContent-zijde meerdere soorten “Gerelateerde gegevens” nodig waren, zoals categorieën.

Met dat template konden we onze nieuwe plugin voor DnnMassManipulate in gebruik nemen. De plugin moet uiteraard weten welke bronmodule naar welke doelmodule geconverteerd moet worden. Daarom geven we de relevante ModuleID’s en PortalID’s op.

Daarnaast kunnen we het aantal te converteren artikelen beperken door een where-clausule toe te voegen. Dat bleek vooral tijdens de ontwikkelfase erg handig, want je werkt liever eerst met tien testartikelen dan dat je telkens op een volledige batch van 15.000 moet wachten.

Voor elk veld in NewsArticles hebben we een koppeling gemaakt naar het juiste veld in OpenContent. Een koppeling is in de meeste gevallen eenvoudig, net als het koppelen van de titel aan de titel:

of zelfs een aangepast veld uit NewsArticles:

of iets complexer door "conditional values" te gebruiken:

of de bijgevoegde afbeeldingen bij een artikel:

of zelfs een opzoekactie met behulp van de gerelateerde gegevens in OpenContent:

Met behulp van deze functies konden we elke situatie aan die we nodig hadden.

Vervolgens moesten we de gerelateerde data zelf converteren naar OpenContent. Onze MassManipulate-plugin biedt de mogelijkheid om een ​​SQL-query te configureren om de beschikbare data voor elk van de gerelateerde datavelden in OpenContent te definiëren:

The proof of the pudding

Nadat we al het bovenstaande hadden afgerond en verschillende iteraties hadden uitgevoerd, konden we alle artikelen succesvol converteren naar hun nieuwe locatie. Onze klant is erg blij met de sterk verbeterde gebruikerservaring voor redacteuren, en dat is slechts één van de verbeteringen.

Het resultaat is te vinden op Observant Online de online versie van het onafhankelijke tijdschrift van de Universiteit Maastricht.

Als je ook een conversie van NewsArticles wilt uitvoeren, helpen we je graag. Neem contact op via het contactformulier