I've found your website very difficult to find any information even for a simple question. For example, I could not seem to find anything anywhere on the site that explains the difference between Checkbox and Checkboxes custom types.
Where can I find it?
Is there a way to search your documentation?
For each question I have, I have to spend a lot of time going through all the links on your site and reading so many irrelevant search results of the forums. I've spent a lot more time searching for info than actually building my site.
I'm sorry for your frustrations with the documentation. I've advocated improving its organisation before and will add this thread as feedback in support.
What is it about the difference between checkbox fields and checkboxes fields you find confusing?
A checkbox field is a binary choice, much like a radio button field, checked or not checked, set or not set. It is stored in the database as a simple string according to the settings you choose when creating the field.
A checkboxes field has more in common with the multi-select field and is like the category selector on a post edit screen (see screenshot). A user can choose as many or as few options as they like. Checkboxes are complex and stored in the database field as an array in a proprietary format understood only by Types (and the rest of the Toolset plugins). So you can't easily import data from an external source as checkboxes fields, for example.
Is there some aspect of using the fields in practice you need clarifying?
I'm not sure if I understand completely. What would be a good example of using the checkbox and checkboxes fields? How would you know if you want to use one field instead of the other?
Let's say I have the following case for my directory site:
I want my members to be able to list their services by selecting checkboxes:
--------------------------------------------
Please select services you offer:
[ ] Service A
[ ] Service B
[ ] Service C
...
--------------------------------------------
For each checkbox they select above, another set of checkboxes for sub-services will appear underneath it for them to select from:
--------------------------------------------
Please select services you offer:
[x] Service A
......... [ ] Sub-Service 1
......... [ ] Sub-Service 2
......... [ ] Sub-Service 3
[ ] Service B
[ ] Service C
...
--------------------------------------------
For the scenario above, which field should I use, checkbox or checkboxes field?
The answer here largely depends on what you intend to do with this data once it has been entered, if you can elaborate on that.
And it is not clear from your example above whether the selections are mutually exclusive or not. Can a user Service A and Service B, or is it a question of one or the other?
Let's say one of my members selects the following services by checking the checkboxes next to their names. The selected checkboxes are displayed below with an X inside them, e.g. [X]:
--------------------------------------------
Please select services you offer:
[X] Service A
......... [ ] Sub-Service 1
......... [X] Sub-Service 2
......... [ ] Sub-Service 3
[ ] Service B
[X] Service C
......... [X] Sub-Service 1
......... [ ] Sub-Service 2
......... [X] Sub-Service 3
...
--------------------------------------------
I would then like to display on the front-end (on member's single-post page or search results) the services this member is offering based on their selected checkboxes above. So the frontend should look like this:
Actually, what you are describing sounds more like a hierarchical taxonomy (like categories for standard WordPress posts).
The checkboxes custom field would allow users to make multiple optional selections, stored in a single custom field, but is not hierarchical, and would not allow you to present sub-services.
The checkbox field is not relevant here, you would be creating a new custom field for every option, and if you wanted to include them in search you would have to add filters for each field individually.
Creating a custom hierarchical taxonomy should meet your needs.