Skip to main content

This site requires you to update your browser. Your browsing experience maybe affected by not having the most up to date version.

We're retiring the forums!

The SilverStripe forums have passed their heyday. They'll stick around, but will be read only. We'd encourage you to get involved in the community via the following channels instead:

All other Modules /

Discuss all other Modules here.

Moderators: martimiz, Sean, Ed, biapar, Willr, Ingo, swaiba

Add Fields: Member Profiles Module SS3

Go to End

11 Posts   2996 Views


Community Member, 158 Posts

18 January 2013 at 7:49am

Can anyone tell me how to do something as simple as adding some fields (like address, telephone) to the Member Profile Pages Module for SS3? I've found tons of tutorials that don't seem to work anymore since none of them apply to SS3 version of the module :0(

Thank you.


Community Member, 35 Posts

9 September 2013 at 10:22am

Hi Pix, maybe you figured out how to add extra fields to member profile module? :)


Community Member, 3 Posts

24 September 2014 at 5:26am

I've also spent a couple of hours on trying to add custom fields and I don't want to learn all of SS from scratch. It would be so helpful to add a few lines to the instructions on the readme file to make it clear.
I would be extremely grateful if someone could answer these two questions:
1.) "hooking into

to add the form field" - To which file in which directory do I add this?
class MemberExtension extends DataExtension {

  private static $db = array(
    'PhoneNumber' => 'Text'

  public function updateMemberFormFields(FieldList $fields) {
    $fields->push(new TextField('PhoneNumber', 'Phone number'));
- Do I save this to a specific file name and to which directory?


Community Member, 3 Posts

26 September 2014 at 5:17pm

Solved it, but I'd wish that more SS instructions were written to be used without going into ever more details. SS is great, but other cms make it easier for the beginner to extend and change.


Community Member, 4 Posts

3 October 2014 at 11:00pm

Hello. I'm exactly with de same pb...
"Solved it, but I'd wish that more SS instructions were written to be used... "
Please can you me/us more ?
I just have lost all my hair... ;-)


Community Member, 3 Posts

5 October 2014 at 5:08am

Edited: 05/10/2014 5:13am

Find and open the config.yml file here
add this:

# My new member formfields
   - MyMemberExtension

(only use spaces for indents - no tabs)
make a new file in the \mysite\code\ directory called MyMemberExtension.php

This is my example of the file "MyMemberExtension.php" with the fields that I added. Just modify according to your needs and now the fields will show up on your memberprofile page inside the admin section of SS.

// mysite/code/MyMemberExtension.php
class MyMemberExtension extends DataExtension {

  private static $db = array(
        'CURDEBT' => 'Varchar(8)',
	'username' => 'Varchar(60)',
        // 'geburtstag' => 'Date',
	'geburtstag' => 'Varchar(20)',
	'elt_email' => 'Varchar(100)',
	'CARD' => 'Varchar(11)',
	'TAXID' => 'Varchar(11)',
	'kerngruppe' => 'Varchar(5)',
        'PHONE' => 'Varchar(50)',
        'PHONE2' => 'Varchar(50)',
	'elt_vorname' => 'Varchar(50)',
	'elt_nachname' => 'Varchar(60)',
	'ADDRESS' => 'Varchar(100)',
	'POSTAL' => 'Varchar(5)',
	'NAME' => 'Varchar(50)',
	'MAXDEBT' => 'Varchar(8)',
	'NOTES' => 'Varchar(150)',
	'Karte' => 'Date',
	'dateiname' => 'Varchar(30)'

  public function updateMemberFormFields(FieldList $fields) {
    $fields->push(new TextField('CURDEBT', 'Guthaben erscheint als Minusbetrag'));
    $fields->push(new TextField('username', 'Benutzername'));
    $fields->push(new TextField('geburtstag', 'Geburtsdatum'));
    $fields->push(new TextField('elt_email', 'Eltern E-Mail'));
    $fields->push(new TextField('CARD', 'Kartennummer'));
    $fields->push(new TextField('TAXID', 'TAXID'));
    $fields->push(new TextField('kerngruppe', 'Kerngruppe'));
    $fields->push(new TextField('PHONE', 'Mobil-Telefon Nummer'));
    $fields->push(new TextField('PHONE2', 'Festnetz Telefon'));
    $fields->push(new TextField('elt_vorname', 'Eltern Vorname'));
    $fields->push(new TextField('elt_nachname', 'Eltern Nachname'));
    $fields->push(new TextField('ADDRESS', 'Anschrift'));
    $fields->push(new TextField('POSTAL', 'Postleitzahl'));
    $fields->push(new TextField('NAME', 'Unicenta Name'));
    $fields->push(new TextField('MAXDEBT', 'Schueler Kredit'));
    $fields->push(new TextField('NOTES', 'Notizen'));
    $fields->push(new TextField('Karte', 'Karte ausgestellt'));
    $fields->push(new TextField('dateiname', 'Dateiname'));

   static $has_one = array(    
      'Image' => 'Image' 
public function getCMSFields() {
    $this->extend('updateCMSFields', $fields); 
    return $fields; 
   public function updateCMSFields(FieldList $fields) {
      $fields->push($imageUpload = new UploadField('Image', 'Mein Foto')); 
      return $fields; 



Community Member, 4 Posts

5 October 2014 at 9:54pm

Thanks a lot for you're answer. You're a real Doctor for my head and my hair :-)

I just change change the directory location.

My "memberprofiles" module is in my /www/ directory.
So i created the php file in "/www/memberprofiles/code/MyMemberExtension.php"

And i've add in the "/www/memberprofiles/_config/extension.yml":
Name: extensions

And now, all is right !
Thanks for you're Help.
Sorry for by bad english... ;-)

Bruce B

Community Member, 164 Posts

15 October 2014 at 2:14pm

Thank you Till! Thank you Darkan!
Very clear, exact instructions so I can stop hitting my head against the wall. I would have liked Till's version to work (and feel that it should) but I'm happy that Darkan posted an alternate that worked immediately.
My one small contribution: If you are trying Till's version, you need exactly one space before 'extensions:' and '- MyMemberExtension'. These yml files seem to be very fussy.


Go to Top