> For the complete documentation index, see [llms.txt](https://docs.acpt.io/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.acpt.io/custom-content-types/table-groups.md).

# Table Groups

Organize tables and control where they appear in the WordPress admin.

A **Table Group** is the container that sits between WordPress contexts (post types, taxonomies, users, option pages) and your custom tables. It controls *where* the table UI appears and *how* it is rendered.

One table group can hold multiple tables. Each table belongs to exactly one group.

## Manage Table Groups

Navigate to **ACPT → Custom Content Types → Table Groups** to list, create, edit, and delete groups.

<figure><img src="https://3235524095-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fiyf0tSKPgXiyoQ3zV3I6%2Fuploads%2Fgit-blob-84e356dc5e5a714d6ff26bd1246f4e7cce7b00d9%2Fcct-table-groups.png?alt=media" alt="Table Groups list"><figcaption><p>The Table Groups list shows name, display mode, number of tables, and location rules.</p></figcaption></figure>

## Creating a Table Group

Click **Register Table Group** to open the creation form. The form has three tabs:

### General tab

| Field            | Description                                                      |
| ---------------- | ---------------------------------------------------------------- |
| **Name**         | Unique identifier (no spaces; used internally).                  |
| **Label**        | Human-readable label shown in the admin.                         |
| **Display mode** | How the tables are rendered (see below).                         |
| **Context**      | WordPress metabox context: `normal`, `side`, or `advanced`.      |
| **Priority**     | WordPress metabox priority: `high`, `default`, `low`, or `core`. |

### Display modes

| Mode                | Description                                |
| ------------------- | ------------------------------------------ |
| **Standard**        | Each table is rendered as a plain section. |
| **Accordion**       | Tables collapsed into accordion panels.    |
| **Vertical tabs**   | Tables as a vertical tab list on the left. |
| **Horizontal tabs** | Tables as a horizontal tab bar at the top. |

### Tables tab

Select which tables belong to this group. Tables can also be assigned to a group during table creation (see [Tables](/custom-content-types/tables.md)).

### Location rules tab

Location rules determine which WordPress screen shows this group's tables.

Each rule has:

| Field          | Options                                                |
| -------------- | ------------------------------------------------------ |
| **Belongs to** | `post_type`, `taxonomy`, `user`, `option_page`         |
| **Operator**   | `=` (equals) or `!=` (not equals)                      |
| **Value**      | The post type slug, taxonomy slug, or option page slug |

Multiple rules can be combined with **AND** / **OR** logic.

**Example:** Show a group only on the `movie` post type:

```
Belongs to: post_type  |  Operator: =  |  Value: movie
```

## Editing a Table Group

Click **Edit** in the actions menu to reopen the group form. All tabs are editable.

## Viewing a Table Group

Click the group name or **View** to open a read-only summary with three tabs: **General**, **Tables**, and **Location rules**.

From the view page you can navigate directly to the group's tables or manage permissions.

## Deleting a Table Group

Click **Delete** in the actions dropdown. Deleting a group does **not** delete the tables or their data — the tables are detached from the group and can be reassigned.

{% hint style="danger" %}
Deleting a Table Group removes the location rules, which means the associated tables will no longer appear in the WordPress admin contexts that used to be covered by those rules.
{% endhint %}

## Permissions

Table groups have their own permission system. Click **Permissions** from the view page to configure which WordPress roles can **edit** or **read** the group.

See [Permissions](/custom-content-types/permissions.md) for details.
