Buongiorno!
ti rispondo per punti:
1. prevedere la registrazione di più utenti: in questo Joomla! è imbattibile.
2. inserire un particolare codice: Joomla! permette moduli captcha contro lo spamm, ti riferisci a questo?
3. non serve che li alleghi tu, esistono moduli appositi già funzionanti
4. ognuno avrà una propria area personale: questo il sistema non lo prevede, in quanto le cose che chiedi, Joomla! le gestisce con diversi moduli:
Testo, link, gallery, pdf possono essere gestiti con l'editor JCE tuttavia, non c'è modo di limitare l'inserimento ad un numero definito di link/campi testo, e dovresti dare agli utenti la possibilità di pubblicare articoli.
La localizzazione la si può gestire con il plugin googlemaps, tuttavia dovrai istruire gli utenti su come inserire una mappa..
E' molto difficile realizzare tutto quello che chiedi, ma se sei appassionato di codice php, html, mysql potresti riuscire a creare tutto questo studiandoti un po' il core di joomla! e sfruttando l'estensione Jumi, che ti permette di inserire pagine in codice (e quindi con tutte le personalizzazioni che vuoi) sul tuo sito, con il vantaggio di avere come base il cms Joomla!