I was write custome sharepoint field that extend functionality for select users, but now i need change default user field to my field type. I find User in fldtypes.xml and change FieldTypeClass element but if I try to add new entry in list I see older (default) field.
1 Answer
You should never, ever, ever edit any files in the SharePoint 14 or 15 hive. If you do that, a few things happen:
- The next time you deploy a hotfix or service pack your files may be overwritten and your custom code will be gone and things will stop working
- Your farm will be in an unsupported state and Microsoft will not give you any support if you have any issues in your farm
- You will unleash all the SharePoint deamons and all the ghosted files will haunt you for the rest of your live
There are a few exceptions and these may be the web.config files in some folders like the lauouts and securitytoken folders.
That said, what you should do is: 1. Deploy your custom field in a new fldtypes_something.xml file via a wsp solution 2. Create a new site column that uses your custom field 3. Create a new content type that uses your site column 4. Create a new list definition 5. Create a list instance using that list definition
This way you'll be using your custom field in a supported way. And following the SharePoint development guidelines provided by Microsoft.
-
Thanks for answer. How I can replace standard user field wich my custom in the earlier created lists? Commented Jul 13, 2013 at 15:40
-
You can add the new custom field to the existing lists, copy data from the old field to the new field using a simple PowerShell script and then delete the old field.– LuisCommented Jul 14, 2013 at 11:08
-
If you have many lists where you want to do this, you can script all three steps in a single PowerShell script.– LuisCommented Jul 14, 2013 at 11:09