Ohne Module wäre DotNetNuke kein Portalsystem und könnte nur wenige bis keine Inhalte anzeigen. Ein Modul ist eine Programmkomponente in DotNetNuke, die Funktionalitäten zur Dateneingabe bzw. Datendarstellung bereitstellt. Eines der einfachsten Module ist z.B. das Text / HTML Modul, mit dessen Hilfe bspw. auch der Text erstellt worden ist, den Sie jetzt gerade lesen.
Über das verwendete Layout eines DotNetNuke Portals werden Layout Bereiche definiert, in denen ein Modul platziert werden kann. Ein einfaches Layout könnte z.B. einen schmalen linken Bereich (den sog. Leftpane) und einen größeren Bereich auf der rechten Seite (den sog. Rightpane) umfassen; in beiden Bereichen könnten dann beliebig viele unterschiedliche Module untergebracht werden.
Dies sei am Beispiel dieser Seite erläutert:
Auf der linken Seite befinden sich oben eine Reihe von sog. Skinobjekten, die Funktionalitäten zur Nutzung der Seite bereitstellen; dazu später mehr. Weiter unten befindet sich eine Auflistung verschiedener weiterführender Links, des wurde mit dem Linkmodul realisiert. Im rechten Hauptteil dieser Seite sehen Sie den Text, den Sie gerade lesen, dieser wurde mit dem Text / HTML Modul erstellt. Weiter unten auf der Seite, sehen Sie wiederum einen Reihe von Texten und Links, hierbei handelt es sich abermals um Skinobjekte, die hier die Navigation zu bestimmten vordefinierten Inhalten eines Portals ermöglichen.
Module können dazu dienen, bestimmte Bentzerinformationen abzufragen, um anhand der eingegeben Daten wiederum abhängige andere Inhalte aufzurufen, es können aber auch beliebige Inhalte der im Hintergrund laufenden Datenbank dargestellt werden.
Wiederum am Beispiel dieser Seite seien beispielhaft einige Module beschrieben, die ganz unterschiedliche Funktionen bereitstellen.
Das Forummodul von Active Modules ermöglicht Online Diskussionen mit anderen Besuchern unserer Seite, das Artikel Modul von Ventrian wird von uns verwendet, um technische Hintergrundartikel zu veröffentlichen.
Module gibt es in der Regel in verschiedenen Variationen. Die einen sind kostenpflichtig, viele andere sind aber auch frei erhältlich. Module sind oftmals mit Quellcode verfügbar, Open Source Module schon alleine per Definition. Ein Modul sollte immer in einer sog. PA Version erhältlich sein, dass ermöglicht das einfache installieren des Moduls über die Modulverwaltung des Portals. PA steht in diesem Zusammenhang für Private Assembly, also eine Komponente, die über eine eigens kompillierte dll ihre Funktionalität bereitstellt.
Das Portalsystem DotNetNuke wird standardmäßig mit einer Reihe von Modulen installiert die sofort nach der Installation zur Verfügung stehen.
Jedes Modul sollte - sofern es unterstützt wird - die Möglichkeit bieten, statische Texte zu übersetzen, immer mehr Module bieten jetzt auch dynamische Übersetzungen von Inhalten an, um tatsächlich mehrsprachige Portale umzusetzen.
Modulentwickler haben die Möglichkeit, gegen Gebühr ihre Module von DotNetNuke auf verschiedene Standards prüfen zu lassen und erhalten bei erfolgreichem Bestehen der Überprüfung das DotNetNuke Reviewed Siegel.