If you are using Salesforce.com sites in order to expose Visualforce pages for anonymous access, the system creates a hidden profile that controls field level access. By default most common standard fields are displayed but if you find that you cannot display some fields when browsing anonymously do the following to access the profile:
- Click Setup
- Develop
- Sites
- Click the Name of the site under ‘Site Label’
- Click at the top ‘Public Access Settings’
This will bring you in to the Profile related to the site that does not show up under Manage Users –> Profiles.
I found this while putting together a quick email opt out front end page for Marketing. Account, Name, and Email displayed with no problems but the Opt Out check box was no where to be found hence being new to Sites I found this nugget of knowledge. Something I could have done in 2 seconds with ‘Click Tools‘ but at my current company we do not have an integrate forms engine.
As always I give credit for where I found the solution, hats off to sfdcfox: Column not showing up in visualforce page on Sites