Skip to content

Introduction to listing types

A listing type is the complete blueprint for one kind of directory content. Use separate types when listings need different fields, submission forms, search controls, cards, or single-page layouts.

Suppose a site publishes events and rental properties. Events need dates; properties need details such as bedrooms and floor area. Those are different listing types because their data and presentation differ.

Categories are taxonomy terms used to group and filter listings. A category does not define fields, packages, search forms, cards, or page layouts. A listing type does.

Go to Listing Types in WordPress to add or edit a type. Its editor controls:

  • labels, permalink value, expiry rules, reviews, schema, packages, and claim form;
  • fields shown when a listing is submitted or edited;
  • the single-listing cover, actions, tabs, content blocks, and similar listings;
  • preview cards, quick view, and map-marker taxonomy;
  • Advanced and Basic search forms, result ordering, Explore tabs, and the search index.

Each type can also use different taxonomies, packages, review criteria, and default images. A global listing type is the exception: it combines results for searching and should not be used to submit listings.

The type’s WordPress slug is set when it is first published. MyListing prevents reserved global-type slugs such as c27-posts and tsml-unified; use a distinct, descriptive slug for each real type.

Create one type for each genuinely different content model—not for every category. Start with the fields that collect the data, then configure how that data is displayed in the Single Page and Preview Card tabs. Finish with Search Forms so visitors can find and order the listings.

MyListing exposes filters for registering field types, preset fields, single-page tabs, content blocks, search filters, quick actions, and preview or quick-view templates. Relevant hooks include mylisting/listing-types/register-fields, mylisting/types/fields/presets, mylisting/listing-types/register-tabs, mylisting/listing-types/register-blocks, mylisting/listing-types/register-filters, mylisting/types/quick-actions, mylisting/type-editor/preview-card-templates, mylisting/type-editor/quick-view-templates, and mylisting/type-editor:config. The mylisting/admin/types/before-update and mylisting/admin/types/after-update actions wrap a type update.

These are PHP extension points for custom development. Keep customizations in a child theme or plugin, and retest the editor after theme updates.

NEXTStart from a ready-made configuration →