Skip to content

Listdom Membership Addon Documentation

The Listdom Membership Addon allows you to generate revenue by selling membership packages for listings. It integrates with WooCommerce to let you define listing packages (e.g. Free, Silver, Gold plans) that users can purchase. Each package can limit how many listings a user can submit and for how long their listings remain active, along with restricting certain listing features. With this addon, you can turn your listing directory into a membership-based platform where users pay for the ability to post and maintain listings.

If you want to sell packages without WooCommerce, configure Listdom’s native engine instead. The Listdom Payments documentation and Listdom Payments Settings documentation explain how to enable gateways, checkout pages, appreciation messaging, and invoicing. After setup, membership purchases and renewals are recorded in Listdom → Payments.

Site administrators can create custom membership packages which users will buy. Each package must be associated with either a WooCommerce product or, if the Listdom payment engine is enabled, one or more Listdom Payments plans. Follow these steps to set up a membership package:

  1. Create a WooCommerce Product: In your WooCommerce catalog, create a new product that represents the membership (for example, “Gold Listing Package”). Set a price and make it a simple product (or a membership product if using recurring billing plugins). You do not need to publish this product on the shop page; it will be used internally for Listdom. If you have switched to the Listdom payment engine, build the needed payment plan(s) first so you can associate them with the package instead of a WooCommerce product.

  2. Add a New Package in Listdom: In WordPress admin, navigate to Listdom → Memberships. This section lists user memberships, but also allows managing packages. Click Add New Package (you may find this under All Packages or via an “Add Package” button).

  3. Package Settings: Configure the package in these groups:

    • Plan / Product Connection
      • WooCommerce Product: Select the WooCommerce product for this package so checkout can use that product’s pricing and renewal data.
      • Listdom Plan(s): If you bill through Listdom Payments, select one or more plans instead of WooCommerce product(s). Plans control billing details; package fields below control access rules.
    • Access Rules
      • Listing Limit: Number of listings the user can submit. Leave blank or 0 for unlimited.
      • Duration (Membership Duration): Membership length in days. Leave blank or 0 for never expire.
      • One-time Purchase: Limit purchase of this package to one time per user.
    • Listing Settings
      • Auto Confirm: Auto-publish listings submitted through this package.
      • Listing Auto Label: Auto-assign selected labels from core Listdom labels taxonomy.
      • Allowed Categories: Restrict package use to specific categories.
      • Allowed Labels: Restrict which existing labels can be assigned by users on this package.
    • Limits
      • Max Gallery Images: Maximum allowed gallery images per listing.
      • Description Length: Maximum listing description length.
      • Max Tags: Maximum number of tags per listing.
      • Max Visits: Optional visit cap (works with visibility-related behavior, if configured).
    • Dashboard Modules
      • Style: Select the package display style (or inherit category/global style).
      • Modules Toggles: Enable/disable per-package sections like Contact Details, Gallery, Custom Fields, Locations, Tags, Features, Labels, Address/Map, Price Options, Work Hours, and others shown in the package sidebar meta box.
    • Identifiers & Purchase Link
      • Package ID: Internal identifier useful for advanced references.
      • Purchase URL: Direct checkout URL you can place in pricing tables or CTA buttons. It adds the package to cart and redirects to checkout.

    Custom fields by package: With the Membership add-on, you can assign custom fields to specific packages from each custom field’s create/edit form. See Custom Fields documentation.

  4. Mass Membership (Optional): In the package edit screen, you’ll see a Mass Memberships section. This lets you assign this package to existing users in bulk:

    • All Users: Check this to give every user on the site this membership package.
    • Specific Users: If you prefer, leave “All Users” unchecked and select one or more usernames from the list to grant them this package.
    • Ignore Active Members: If checked, the system will not assign the package to users who already have any active membership. (This prevents duplicate or overlapping memberships.) After selecting, click Update on the package. The addon will automatically create membership entries for those users (free of charge) as if they purchased the package.
  5. Save the Package: Click Publish or Update to save your new package. Once saved, it becomes available for users to purchase on the front-end.

Each package you create will appear on the user’s Membership selection page (detailed below), showing its title, description, listing limit, duration, and price.

In addition to creating packages, there are global settings for the Membership addon. Navigate to Listdom → Settings → Addons tab → Membership to configure these:

  • Default Membership: Choose a package to automatically assign to every new user upon registration. This is useful if you offer a free starter package. For example, select a “Free Trial” package here and any newly registered user will immediately get that membership without payment. If set to None, new users start with no listings until they purchase a package.
  • Import Membership: Select a package that will be used when importing listings via CSV/JSON/Excel. If you import listings in bulk (perhaps as an admin or via a script), those listings need a membership association. The chosen package will be applied to imported listings (typically, you might create an “Import” package with unlimited listings and never expiring for this purpose). If left None, imported listings will not be tied to a membership, and they cannot be edited by front-end users until assigned.
  • Auto Order Complete: Toggle this On (Recommended). When enabled, any WooCommerce order for a membership product will automatically be marked Completed as soon as payment is done. This means the user’s membership activates immediately. (If disabled, you or the WooCommerce system would have to manually complete the order before the membership becomes active.)
  • Redirect to Add Listing Form: (Visible only if Auto Order Complete is on.) Toggle On to redirect users straight to the Add Listing page after a successful checkout. With this on, once a user pays for a package, they’ll skip the typical WooCommerce Thank You page and instead land on the Listdom “Add New Listing” form, ready to use their new membership.

These settings refine how the membership workflow behaves. Usually you will set a default package if you have a free plan, and enable auto-completion and redirection for a smoother user experience.

Filter Listings by Membership Package in Shortcodes

Section titled “Filter Listings by Membership Package in Shortcodes”

The shortcode builder includes a package-based filter so you can show listings from specific membership tiers only.

  • Go to Listdom -> Shortcodes and open or create a shortcode.
  • Open the Filter Options tab.
  • Use the Membership Packages checkboxes to select the package(s) you want to include in that shortcode output.

This is useful for creating pages such as “Free Listings” or “Pro Listings” without changing listing categories or labels. For full shortcode tab details, see Listdom Skin shortcodes Documentation.

Once the Membership addon is active, users will see a new “Memberships” section in their Listdom front-end dashboard. Here’s how the process works for an end user:

  • Dashboard Menu: In the user’s dashboard (usually accessed via a page using the [listdom_dashboard] shortcode), a new menu item Memberships appears. Users can click this to manage their membership or buy a new one.
  • Available Packages: The Membership dashboard page will list all the available packages (the ones you created) with their name, price, how many listings they allow, and how long they last. Users can compare the plans here.
  • Purchasing a Package: When a user selects a package to purchase, they’ll typically see a “Buy” or “Select Package” button (often represented with a shopping cart icon). Upon clicking it, the addon will add the corresponding WooCommerce product to their cart and take them to checkout. The user proceeds through the WooCommerce checkout and payment as usual.
  • Order Completion: If Auto Order Complete is enabled, the moment payment is successful, the order status changes to Completed automatically. The Membership addon will then create a new membership entry for the user tied to the package they bought. At this point, the user has an active membership and can use their package.
  • Redirect to Add Listing: With the redirect option on, the user is forwarded straight to the Add Listing form after checkout. They will see that they can now submit listings (up to the limit of their package). If the redirect is off, they’ll see the standard WooCommerce thank-you page and can navigate to add a listing on their own.
  • Using the Membership: Once their membership is active, the user can add up to the number of listings allowed by their package. The addon associates each new listing with the user’s membership. The user’s membership status and usage (e.g., how many listings used out of the limit) may be displayed on the Membership dashboard page, so they can keep track.
  • Expiration and Renewal: If the package has a duration, then from the date of purchase, it will expire after that many days. Upon expiry, the user’s listings might be automatically expired (removed from public view) by the addon. Users would then need to renew by purchasing a new package. For one-time packages, they can purchase a different package if one-time prevents re-buying the same. If you are using a recurring payments plugin (see note below), renewals can happen automatically.
  • Switching Packages: If a user still has an active membership but wants to upgrade to a higher package, they can purchase the new package as well. Listdom Membership addon allows users to have multiple membership entries. However, a single listing can only be associated with one membership at a time. The user interface includes options to switch a listing’s membership if the user has more than one active (for example, moving a listing from a free package to a paid package they bought). This is handled via a dropdown or button on the listing in the dashboard (e.g., “Switch Membership” action).
  • Membership Management: In the front-end, users can see details of their current membership (package name, remaining listing count, expiry date). They cannot manually extend it except by buying another package. Admins, however, could extend or modify memberships from the back-end if needed.

On the WordPress admin side, the Listdom → Memberships page shows all user memberships as custom post entries (post type: Listdom Membership). Each membership record includes the user (author), the package, status, and other metadata:

  • Statuses: Memberships can have statuses like Active (publish), Expired, Canceled, or On Hold. These statuses update automatically based on time or admin actions:
    • Active means the membership is currently valid.
    • Expired means the duration passed.
    • Canceled might indicate an admin or system canceled it (e.g., refunded or manually ended).
    • On Hold could indicate a paused membership (for instance, if using recurring payments and a payment failed).
  • Viewing/Editing: An admin can click on a membership to view its details (the associated package, dates, user info). You typically do not need to edit these manually, but you could adjust expiry dates or package associations if necessary.
  • Listings Association: Each listing post in Listdom will have a meta field linking it to a membership ID (lsd_subscription). Admins can see which membership a listing is under. If a membership expires, the addon (in conjunction with the Visibility addon) may expire the listings (set them offline).

In practice, most membership management (activation, expiry) is automated. Admins mainly intervene to set up packages and handle edge cases (like granting free packages via Mass Membership or troubleshooting payment issues).

Free and Paid Plans

You offer a Free package (1 listing, 7-day duration) for new users and a Premium package (unlimited listings for 30 days). A new user automatically gets the Free plan on signup, then upgrades to Premium via the Membership page to post more listings

Tiered Feature Access

Using Dashboard Modules settings, you create a Basic plan that does not allow Gallery or Video embeds, and an Advanced plan that enables all features. Users on Basic can list items with text only, enticing them to upgrade for rich media features

Recurring Revenue Model

You set up a Monthly Membership product in WooCommerce tied to a Listdom package. With WooCommerce Subscriptions, users are automatically charged each month and their listing quota renews without manual intervention, ensuring continuous revenue