Learn More





DNN Community Blog

The Community Blog is a personal opinion of community members and by no means the official standpoint of DNN Corp or DNN Platform. This is a place to express personal thoughts about DNNPlatform, the community and its ecosystem. Do you have useful information that you would like to share with the DNN Community in a featured article or blog? If so, please contact .

The use of the Community Blog is covered by our Community Blog Guidelines - please read before commenting or posting.

The DotNetNuke Media Module is Relevant Again!


I knew the challenges when I first took over the Media Module.  In it’s first series of releases, it was built to make it easy to simply add an image on a page in DotNetNuke.  Eventually, it was extended to also allow you to display videos in nearly the same way.  Unfortunately, for many end-users, it’s just as easy to simply add the requisite HTML code to the Text/HTML Module to display all of the media types that the module was supporting (depending on the user, of course).


I struggled at first to find a way to make the Media Module more relevant and give it a wow factor.  Eventually, it hit me…  What’s the most common and popular form of media?  Social media!  Duh…

Social Media

I immediately added the ability to include social media types to the module issue tracker.  That alone really got the geek in me excited, considering how I was planning to implement it.

Embed Codes

Probably the most common way to bring social media into your own site is through the various embed codes that site provide to you.  For example, consider the snippet of HTML you can copy and paste from sites like YouTube and Vimeo.  You can now choose this media type, and paste in code from other websites, to embed their content into yours.  It will be displayed just  as if you had pasted it into the Text/HTML module.



If you’re not familiar with oEmbed, it’s simply a technology that is used by many popular sites to allow you to copy a URL, paste into a content management system, and when the page is rendered to the website visitor, the desired media on the original website is magically inserted into your site.  For example, you can paste the URL from Vimeo or YouTube into this setting, and the video from that page will be injected into your site when you save your settings.


The setting includes a validation routine to check and see if the URL is a supported media site.  This feature currently supports 11 different oEmbed providers, but allows you to import content from over 200 different social media and media websites.

Usability & Standards

The social media features were not the only updates to this release.  They are rather just a couple of many updates, but like usability and standards, they are some of the most significant updates.

I, like many others, have learned the importance and benefits of standards-based design and layouts over time.  I began implementing such an approach to my development about 2 years ago.  However, the edit views in modules continued to be ugly, slow, boring, and non-standards friendly tables.

DNN-Media-Module-Edit-Media-Options-[1]There are numerous reasons why you’d not want to use tables – such as the fact that the labels tend to very easily and consistently break XHTML layouts – but they are a necessary evil if you’re using the built-in DotNetNuke label control to display help.  I took a different approach in this release for a couple reasons.

First, the edit view was not standards friendly or accessible.  Second, it was the right thing to do.  And third, the new approach not only makes it incredibly easy and flexible for designers to customize the look of the edit forms, but is also the first step in making the user interface (UI) at least partially match what you will see in the version 6 series of DNN releases.

Disclaimer: This is not necessarily the “best practice” approach to implement a standards and accessible friendly UI for your edit views.  You will see a different approach in DNN 6.0.  This module will move to use that approach once it’s available.

You can clearly see in the screen shots above that the dreaded help labels are no longer in the UI.  So, even though there’s a bit of help text integrated into the module, how does someone get help?  For this release, I have added the help into the TITLE attributes of the labels and form fields.  The help appears when your mouse hovers over either of the mentioned form elements – and it’s customizable!


There are a handful of other features and updates, but I think these two things are a great start to you getting to know the latest release of the Media Module.  Download the Media Module today!


There are currently no comments, be the first to post one.

Comment Form

Only registered users may post comments.


2sic Daniel Mettler (124)
Aderson Oliveira (15)
Alec Whittington (11)
Alex Shirley (10)
Andrew Nurse (30)
Anthony Glenwright (5)
Antonio Chagoury (28)
Ash Prasad (22)
Ben Schmidt (1)
Benjamin Hermann (25)
Benoit Sarton (9)
Beth Firebaugh (12)
Bill Walker (36)
Bob Kruger (5)
Brian Dukes (2)
Brice Snow (1)
Bruce Chapman (20)
Bryan Andrews (1)
cathal connolly (55)
Charles Nurse (163)
Chris Hammond (203)
Chris Paterra (55)
Clinton Patterson (28)
Cuong Dang (21)
Daniel Bartholomew (2)
Dave Buckner (2)
David Poindexter (3)
David Rodriguez (2)
Doug Howell (11)
Erik van Ballegoij (30)
Ernst Peter Tamminga (74)
Geoff Barlow (6)
Gifford Watkins (3)
Gilles Le Pigocher (3)
Ian Robinson (7)
Israel Martinez (17)
Jan Blomquist (2)
Jan Jonas (3)
Jaspreet Bhatia (1)
Jenni Merrifield (6)
Joe Brinkman (270)
John Mitchell (1)
Jon Henning (14)
Jonathan Sheely (4)
Jordan Coopersmith (1)
Joseph Craig (2)
Kan Ma (1)
Keivan Beigi (3)
Ken Grierson (10)
Kevin Schreiner (6)
Leigh Pointer (31)
Lorraine Young (60)
Malik Khan (1)
Matthias Schlomann (15)
Mauricio Márquez (5)
Michael Doxsey (7)
Michael Tobisch (3)
Michael Washington (202)
Mike Horton (19)
Mitchel Sellers (28)
Nathan Rover (3)
Navin V Nagiah (14)
Néstor Sánchez (31)
Nik Kalyani (14)
Peter Donker (52)
Philip Beadle (135)
Philipp Becker (4)
Richard Dumas (22)
Robert J Collins (5)
Roger Selwyn (8)
Ruben Lopez (1)
Ryan Martinez (1)
Salar Golestanian (4)
Sanjay Mehrotra (9)
Scott McCulloch (1)
Scott S (11)
Scott Wilkinson (3)
Scott Willhite (97)
Sebastian Leupold (80)
Shaun Walker (237)
Shawn Mehaffie (17)
Stefan Cullmann (12)
Stefan Kamphuis (12)
Steve Fabian (31)
Timo Breumelhof (24)
Tony Henrich (3)
Torsten Weggen (2)
Vicenç Masanas (27)
Vincent Nguyen (3)
Vitaly Kozadayev (6)
Will Morgenweck (37)
Will Strohl (163)
William Severance (5)
Try Evoq
For Free
Start Free Trial
a Demo
See Evoq Live
Need More Information?