I am trying to build a user-generated social network on WordPress. I got the member site portion down but having trouble customizing the front-end publishing with custom fields in the way I want. I have been trying different plugins but don't think I fully understand custom fields and thus having a hard time. Right now I am trying a combination of a front-end publishing plugin and considering combining that with the "Advanced custom fields" plugin but not sure I need that. I have many features that will branch out from this but for right now I'm simply trying to add a 3rd field (other than title and content) to a post submission and ensure that content shows on the back-end and also on the front-end once approved. Can someone let me know the best plugin or plugins to achieve this and tell me a bit more about custom fields and how it pertains to what I'm trying to do?
As with most things WordPress there are several solution paths you can take with this and the best will depend on the particular type of site you are trying to build. Your question suggests you may be relatively new to the platform and more comfortable with available wysiwyg / plugin tools rather than raw coding it all so here are three suggestions:
(A) Types & Views + Cred Front-End Forms Builder
this combo will allows you to define your CPTs; add as many metaboxes with custom fields as you need; build templates to display your content.
(B) Gravity Forms + Custom Post Types:
This can be used with above solution or ACF or Pods etc...
(C) Formidable Forms:
An example that shows Formidable has a built-in ability not just to create front end forms but can display the results in a ajax parametrically searchable listing with accompanying single pages.
All of these will show submissions on both front and back end and can be set to appear as draft pending approval. Submitters can also be given permission to edit their own entries or pay for display of premium tiered content if your system requires that ability.
If you provide me with more specifics we may be able to narrow it down or discover an entirely different and perhaps simpler way. There may be free plugins that do most or all of this but these are the ones I have personal experience with.
Advanced Custom Fields is probably the simplest solution. The admin UI is about as simple as anything can be in the WordPress admin, and the front end API is very easy for anyone who can customize a WP theme (beginner PHP or better).
Beyond that you're probably up against more advanced custom dev.
If you need a second opinion on the setup, I have about a decade's experience customizing WordPress heavily. Don't hesitate to ask.
Why not the "User Submitted Posts" Plugin?
This allows users to submit a post either in draft or immediate mode.