Making it easy for you to use.

All documentation.
In one place.

View our change log and user documentation below.

v3.0.3
v3.0.3Patch Release

Released: March 2026

Bug fix

Vaccination custom icon upload now saves correctly

The vaccination icon was missing from two places in the custom icon configuration handler, so uploading a custom image for the vaccination attribute had no effect — the upload appeared to succeed but the icon was never persisted. Two fixes applied:

  • savecustomicons(): vaccination was absent from the recognised icon keys list, so the posted attachment ID was silently discarded on save
  • Adopted Animals tab in rendercustomicons_section(): vaccination was missing from the icon group definition, so the upload control was not rendered for the adopted animals context

The adoptable animals tab already had the vaccination entry correctly and was unaffected.

Who is affected: Any installation that attempted to upload a custom vaccination icon via ShelterSync → Animal Display → Custom Icons. The vaccination icon now saves and displays correctly after this update.
Upgrade action required: If you previously uploaded a custom vaccination icon and it did not appear, re-upload it after updating. The existing entry (if any) may be incomplete.

v3.0.2Patch Release

Released: March 2026

Bug fix

Attribute icon states now correctly prefer NAME fields over integer fields

This release corrects the root cause of the icon state problem first addressed in v3.0.1.

ShelterManager returns attribute state data in two forms for the same field — an integer field (e.g. ISHOUSETRAINED: 0) and a string NAME field (e.g. ISHOUSETRAINEDNAME: "Yes"). PHP's ?? null-coalescing operator does not treat integer 0 as absent, so when both fields are present in the API response, the integer field was winning the lookup — and $ss_bool(0) correctly returned negative state, ignoring the NAME field entirely. This caused attributes to display as negative (cross icon) when they should have shown positive (tick icon).

The fix reverses the lookup priority for all 11 attribute fields — Core and PLUS: the *NAME string field is now checked first, the integer field second. The NAME field is what ShelterManager displays in its own UI and is the authoritative value. This matches the pattern documented in the ShelterManager API field behaviour notes and applies consistently across all attributes.

Who is affected: Installations where ShelterManager returns both integer and NAME fields for the same attribute in the same API response — which is the standard API behaviour. Any attribute icon that was displaying as negative when the animal's record in ShelterManager showed positive is corrected by this update.
Upgrade action required: None. A background sync runs automatically on update. Icons will display their corrected states after the next sync completes.

v3.0.1Patch Release

Released: March 2026

Bug fix

Attribute icons fall back to NAME fields when integer fields are absent

ShelterManager API responses may include only the string NAME variant of an attribute field (ISHOUSETRAINEDNAME) without the corresponding integer field (ISHOUSETRAINED). The plugin was reading only the integer field, so when only the NAME field was present, the icon fell back to unknown state (question mark) even when the animal's record clearly indicated a value.

This release adds *NAME fallbacks to the lookup chain for house trained, neutered/spayed, microchipped, and all good-with attribute fields. When the integer field is absent or null, the NAME field is resolved via the $ss_bool() helper ("Yes" → positive, "No" → negative).

Note: v3.0.2 further refines this fix by reversing the lookup priority so NAME fields always take precedence — see v3.0.2 release notes above.


v3.0.0Major Feature Release

Released: March 2026

Upgrading from: v2.0.1

v3.0.0 is the Phase 3 release. It delivers EDD-based licence key activation, support for self-hosted ShelterManager instances, the reserved animal badge, the vaccination status icon, shortcode exclusion parameters, and a set of PLUS display enhancements.

Upgrade actions required

Licence key re-activation required for PLUS users. Phase 3 integrates directly with the EDD licence server at sheltersync.app. Existing PLUS installations must enter their licence key under ShelterSync → Settings → Licence and activate against the server. Until activated, the plugin falls back to Core behaviour. A 7-day grace period applies if the licence server is temporarily unreachable after the initial activation.

A background sync runs automatically on update. All enabled datasets are re-synced in the background after updating. No manual action is required.

Self-hosted users: If you are running a self-hosted ShelterManager (ASM3) instance, configure the API mode and your instance URL under ShelterSync → Settings → Advanced before running a sync.

---

What's new

EDD licence key activation

PLUS licensing is now validated against the ShelterSync EDD store at sheltersync.app. The licence key entry and management UI lives under ShelterSync → Settings → Licence:

  • Enter your 32-character licence key and click Activate. The key is validated against the EDD server immediately.
  • The activation status, activation date, and expiry date (where provided) are displayed.
  • Deactivating a key frees the activation slot on the server and immediately reverts PLUS features to Core.
  • The licence is re-validated daily in the background. If the server is unreachable, a 7-day grace period keeps PLUS features active while the issue resolves.
  • The licence key is masked on display after activation (last four characters only) and is never written to logs, front-end output, or API responses.

If the daily re-validation detects a status change (e.g. an expired subscription), a persistent admin notice appears on all ShelterSync pages.

Self-hosted ShelterManager support

The plugin now supports installations connecting to a self-hosted ShelterManager (ASM3) instance rather than the cloud service. Configure this under ShelterSync → Settings → Advanced:

  • API Mode — toggle between Cloud (default) and Self-Hosted
  • Service URL — the base URL for your self-hosted ASM3 service endpoint (e.g. http://yourserver.example.com/service)

In self-hosted mode, the Account ID field is hidden (self-hosted instances do not use an account parameter), and images are served from your configured instance URL rather than the ShelterManager cloud endpoint. HTTP is permitted for self-hosted instances, but a persistent warning appears on all ShelterSync admin pages when a non-HTTPS URL is configured. HTTPS is still strongly recommended.

The connection test automatically targets the configured endpoint and confirms the URL in the success message.

Reserved badge on animal cards and overlays

Animals with an active reservation in ShelterManager now display a Reserved badge automatically — no admin configuration required. The badge appears:

  • On list cards — top-right corner of the animal photo, overlaying the image
  • In the detail overlay — top-right of the primary photo column

The badge is triggered by the HASACTIVERESERVENAME field being the exact string "Yes". The reservation holder's name is used only as a boolean signal and is never displayed publicly.

The badge label defaults to "Reserved" and can be customised via ShelterSync → Animal Display → Field Labels (field key: reserved). The background colour defaults to green (#1a7a3f) and can be overridden via the --sheltermgr-reserved-badge-bg CSS custom property. To suppress the badge entirely, use display: none on .sheltermgr-reserved-badge in your theme CSS.

Reserved status as a filter dimension

Reserved status is now a Core filter dimension available in the filter overlay. Visitors can filter to show only unreserved animals (reserved = No), or only reserved animals (reserved = Yes), depending on your use case.

The filter is manageable under ShelterSync → Filters & Sort → Adoptable Animals and can be toggled on or off like any other filter dimension. It also participates in filter display order configuration (PLUS).

Shortcode exclusion parameters

All shortcodes now support exclude_* parameters to remove specific animals from the dataset server-side before the page is rendered. Excluded animals are entirely absent from the page source — they are not hidden via CSS or JS.

[shelter_adoptables exclude_species="Rabbit"]
[shelter_adoptables exclude_reserved="yes"]
[shelter_adoptables species="Cat" exclude_sex="Male"]

Exclusion parameters mirror all available filter dimensions. Multi-value exclusions use the + delimiter. Exclusions and pre-filter include parameters can be combined on the same shortcode.

Reserved CTA suppression with notice banner PLUS

A new PLUS toggle under ShelterSync → Animal Display → Adoptable Animals → Call to Action replaces the CTA button with a notice banner for animals where HASACTIVERESERVENAME is "Yes". This prevents reserved animals from receiving adoption enquiries while keeping them visible in the listing.

  • The banner displays configurable text. Default: Reserved — Not Available For Adoption
  • The banner is styled using --sheltermgr-reserved-badge-bg, keeping the reserved colour consistent
  • The CTA button is completely absent for reserved animals when this toggle is on — it is not rendered alongside the banner
  • This applies to adoptable animal overlays only; LFS and adopted animal overlays are unaffected

For unreserved animals, the CTA continues to render normally regardless of whether the toggle is on.

Vaccination status icon

A vaccination icon now appears in animal overlays (adoptable, adopted, and stray) showing the animal's vaccination status, calculated from ShelterManager's vaccination count fields:

  • Positive (tick) — at least one vaccination given and no outstanding vaccinations
  • Negative (cross) — one or more outstanding vaccinations
  • Unknown (question) — both fields absent, null, or zero

The icon is togglable under ShelterSync → Animal Display → Icons and defaults to visible. It does not appear in Lost and Found overlays, where vaccination data is not part of the confirmed field set. A custom icon image can be uploaded via the Media Library (PLUS), and state labels are customisable (PLUS).

Filter display order configuration PLUS

PLUS installations can now control the sequence in which filter dimensions appear in the filter overlay via ShelterSync → Filters & Sort → Filter Display Order. A drag-and-drop interface with keyboard alternative lets you arrange all enabled dimensions into the preferred order. A Reset to Default button restores the factory sequence.

The LFS Type filter is always first in LFS listings; date range filter controls are always last. Custom field filters not yet present in the saved order are appended automatically, so new custom fields are never silently dropped.


Open Items Carrying Forward

  • SM-OI-036 — Vaccination icon SVG sprite: the vaccination icon is currently a PNG (vaccination.png), consistent with the rest of the icon set. An SVG sprite symbol (for inline state-aware rendering) is deferred to Phase 4.
  • SM-OI-029 — Online form file upload: IMAGE fields continue to show an email-separately prompt pending ShelterManager API support for remote multipart uploads.
  • SM-OI-033 — Online form file upload remote server restriction: same status as SM-OI-029.

SM-OI-027 closed. The attribution footer URL is now https://sheltersync.app.


ShelterSync for ShelterManager is developed by Reput8n. For support and licensing, visit sheltersync.app.

v3.0.3

Version 3.0.3 | For shelter administrators and website managers


  1. What is ShelterSync?
  2. Requirements
  3. Installation and First Setup
  4. The ShelterSync Admin Menu
    • Dashboard
    • Settings
    • Animal Display
    • Filters & Sort
    • Custom Fields (PLUS)
    • Online Forms
    • Notifications
    • Diagnostic Log
    • Help
  1. Displaying Animals on Your Site
    • Adoptable Animals
    • Adopted Animals
    • Lost, Found & Stray Animals
    • Online Forms
  1. How the Listing Works
  2. PLUS Features Overview
  3. Troubleshooting

1. What is ShelterSync?

ShelterSync connects your WordPress website directly to your ShelterManager account. It automatically pulls your animal records from ShelterManager, caches them on your server, and displays them on your site in responsive grids with full animal detail overlays.

Your site visitors can search, filter, and sort animals, open a detailed profile for any individual animal, and click through to your adoption application or enquiry form.

ShelterSync comes in two tiers:

  • Core — free, published on WordPress.org. Includes the full adoptable animals listing, adopted animals display, lost/found/stray listings, online forms, search, pagination, attribute icons (including vaccination status), bonded animal labelling, reserved animal badge, video embedding, and more.
  • PLUS — a paid upgrade, activated with a licence key from sheltersync.app. Adds photo galleries, additional filters, filter display order configuration, custom sync intervals, merged bonded profiles, custom fields, drag-and-drop display order configuration, reserved CTA suppression, CSS styling controls, and more.

Throughout this guide, features marked PLUS require an active PLUS licence.


2. Requirements

  • WordPress 6.0 or later
  • PHP 8.0 or later (PHP 8.1+ recommended)
  • An active ShelterManager account with API access, or a self-hosted ASM3 instance
  • HTTPS on your website (strongly recommended; required for cloud ShelterManager connections)

3. Installation and First Setup

Installing the plugin

  1. In your WordPress admin, go to Plugins → Add New Plugin.
  2. Search for ShelterSync for ShelterManager.
  3. Click Install Now, then Activate.

Alternatively, download the zip from WordPress.org and upload it via Plugins → Add New Plugin → Upload Plugin.

Entering your ShelterManager credentials

After activation, the ShelterSync menu appears in your WordPress admin sidebar.

  1. Go to ShelterSync → Settings.
  2. Under the General tab, enter your Account ID, Username, and Password.
  3. Click Save Settings.
  4. Click Test Connection to confirm the plugin can reach ShelterManager.

Your credentials are encrypted before being stored. They are never written to log files or exposed in page source.

Activating your PLUS licence

If you have purchased a PLUS licence from sheltersync.app:

  1. Go to ShelterSync → Settings → Licence.
  2. Enter your licence key and click Activate.
  3. The key is validated against the ShelterSync licence server. PLUS features are unlocked immediately on success.

The licence is re-validated daily in the background. A 7-day grace period keeps PLUS features active if the licence server is temporarily unreachable. If your licence expires or is deactivated, the plugin reverts to Core behaviour and a notice appears on ShelterSync admin pages.

Running your first sync

After saving valid credentials, a background sync is scheduled automatically. To trigger one immediately, go to ShelterSync → Dashboard and click Sync Now.

Adding the listing to a page

Add [shelter_adoptables] to any WordPress page or post. Your adoptable animals will appear once a sync has completed.


4. The ShelterSync Admin Menu

All ShelterSync settings live under the ShelterSync top-level menu in your WordPress admin sidebar.


Dashboard

Your at-a-glance status view showing connection status, last sync timestamp, the Sync Now button, and any admin notices (sync failures, licence warnings, credential errors).

A dismissible notice appears here after plugin activation or update confirming that a background sync has been scheduled.


Settings

General tab

  • Account ID, Username, Password — your ShelterManager login credentials (cloud mode)
  • Test Connection — verifies credentials and connectivity. In self-hosted mode, the test targets your configured service URL.
  • Sync Interval — Core: fixed 1-hour schedule. PLUS configurable from 15 minutes to 24 hours.
  • Cache TTL — PLUS how long cached data is considered fresh before a re-sync is attempted.
  • Placeholder Image — fallback image when an animal has no photo. Upload a square image for best results.
  • No Results Message — shown when visitor filters match no animals.
  • Unavailable Message — shown when the cache is empty and the API cannot be reached.
  • Weight Unit — unit label for weight fields: kg, lbs, or None.
  • Pagination — enable or disable paginated display globally.
  • Animals per page — default page size (5, 10, 15, 20, or 25).

Licence tab

  • Licence Key — enter your ShelterSync PLUS key here and click Activate. The key is masked on display after activation (last four characters only).
  • Status — shows whether the licence is active, expired, inactive, or in the grace period.
  • Activation date / Expiry date — displayed when active.
  • Deactivate — frees your activation slot on the licence server and reverts PLUS features immediately.

To purchase or manage a licence, visit sheltersync.app.

Advanced tab

  • API Mode — choose Cloud (default, for sheltermanager.com accounts) or Self-Hosted (for ASM3 instances you host yourself).
  • Service URL (Self-Hosted mode only) — the base URL for your ASM3 service endpoint. The Account ID field is hidden in self-hosted mode. HTTP is permitted but a warning is shown on all ShelterSync admin pages when a non-HTTPS URL is configured.
  • WP-Cron guidance — for high-traffic sites, configuring an external cron job is recommended for reliable background syncing.

Animal Display

Controls what information appears on animal cards and in detail overlays. The page has three tabs: Adoptable Animals, Adopted Animals, and Lost, Found & Stray. Each tab has its own independent configuration.

Adoptable Animals tab

Field display — toggle individual fields on or off for the animal card and detail overlay.

Description field — choose whether the animal description comes from Animal Comments or Website Media Notes in ShelterManager.

Call to Action — configure the button shown in animal detail overlays:

  • External URL or WordPress page destination
  • Button label (default: Apply to Adopt)
  • Open in new tab toggle
  • PLUS Reserved CTA suppression — when enabled, the CTA button is replaced by a notice banner for animals with an active reservation. Default banner text: Reserved — Not Available For Adoption. The banner text is configurable. Styled using the reserved badge colour (--sheltermgr-reserved-badge-bg). This applies to adoptable overlays only.

Field labels PLUS — override the displayed label for any field. The reserved key customises the label on the reserved badge.

Display order (overlay) PLUS — drag-and-drop field ordering for detail overlays. Add section dividers to group fields visually.

Display order (card) PLUS — separately configure card field order.

Icon configuration — controls attribute icons (Neutered/Spayed, Microchipped, House Trained, Vaccination, and others):

  • Toggle each icon on or off
  • PLUS Customise positive, negative, and unknown state labels
  • PLUS Upload a replacement icon via the WordPress Media Library

Bonded badge — configure the badge shown on bonded animal list cards: icon (Dashicons), label text (max 20 characters, default: BONDED), and visibility toggle.

CSS Configuration PLUS — see Section 7.

Adopted Animals tab

Independent configuration for the [shelter_adopted] shortcode:

  • Field display, description field selector, icon configuration, display order (overlay and card, PLUS)
  • No Call to Action is configured here — adopted animal overlays are success story profiles, not adoption enquiry pages
  • Vaccination icon is available for adopted animals

Lost, Found & Stray tab

Independent configuration per sub-type (Lost, Found, Stray):

  • Field display, icon configuration, and CTA per sub-type
  • Shared display order with optional per-sub-type override PLUS
  • Vaccination icon is available for Stray animals; absent for Lost and Found (those field sets do not include vaccination data)

Filters & Sort

Controls which filter dimensions and sort options are available to visitors, per listing area.

Adoptable Animals tab

Filter visibility — toggle each filter dimension:

Filter Tier
Species Core
Sex Core
Age Group Core
Reserved Status Core
Breed PLUS
Size PLUS
Bonded Status PLUS
Location PLUS

The Reserved Status filter lets visitors show only unreserved animals (the most common use case), or only reserved animals. Values shown to visitors are Yes and No.

Sort configuration — toggle which sort options are available.

Filter display order PLUS — drag-and-drop reordering of filter dimensions within the filter overlay. A Reset to Default button restores the factory order. Custom field filter dimensions are appended automatically when added — they are never silently dropped.

Adopted Animals tab

Filter visibility and sort configuration for the adopted animals context. Adoption Date is available as a sort option here.

Lost, Found & Stray tab

Filter visibility including date range filters. Date Reported is available in Core; Date Lost and Date Found are available with PLUS.


Custom Fields PLUS

Add any ShelterManager API field to cards, overlays, filters, and sorting:

  1. Click Discover Fields to load available API field keys from your cached data.
  2. Click Add Field and configure: API field key, display label, listing types (Adoptable, Adopted, Lost, Found, Stray), card/overlay visibility, filterable, sortable.
  3. Click Save Custom Fields.

Custom fields appear in display order panels for their configured listing types. Up to 20 custom fields can be configured.


Online Forms

Configure ShelterManager online forms for use with the [shelter_form] shortcode.

  1. Click Add Form and enter the ShelterManager form ID and a Display Label.
  2. Use [shelter_form form="Your Display Label"] on any page.

Supported field types: Text, Notes, Lookup (select), Yes/No, Checkbox, Date, Signature, Adoptable Animal selector, Section Headings.

IMAGE fields display a note directing applicants to email photos separately — a ShelterManager API restriction prevents remote file uploads.


Notifications

Email notifications to a configurable address for sync failures, sync resolution, credential errors, and credential resolution. Each notification type is independently togglable. Repeated failure notifications are suppressed for 24 hours after the first alert.


Diagnostic Log

Timestamped log of plugin events: syncs, failures, API errors, auto-sync triggers, licence validation events. Maximum 50 entries (configurable). Use this when troubleshooting API or sync issues.


Help

Links to ShelterSync documentation, support, and external cron configuration guidance.


5. Displaying Animals on Your Site


Adoptable Animals

Basic usage:

[shelter_adoptables]

Pre-filtering — include parameters:

[shelter_adoptables species="Rabbit"]
[shelter_adoptables species="Rabbit+Cat" sex="Female"]
[shelter_adoptables reserved="no"]
[shelter_adoptables species="Cat" exclude_reserved="yes"]

Pre-set filter values lock the corresponding filter control — visitors cannot change them. To allow visitor adjustment, use allow_override="true" (PLUS).

Exclusion parameters:

Exclusion parameters remove animals from the dataset server-side before the page renders. Excluded animals are entirely absent from page source.

[shelter_adoptables exclude_species="Rabbit"]
[shelter_adoptables exclude_reserved="yes"]
[shelter_adoptables species="Cat" exclude_sex="Male"]

Exclusions can be combined with include parameters on the same shortcode.

Available filter parameters:

Parameter Description Tier
species Filter by species name (multi-value: "Rabbit+Cat") Core
sex Filter by sex Core
age Filter by age group Core
reserved Filter by reservation status ("yes" or "no") Core
breed Filter by breed PLUS
size Filter by size PLUS
bonded Filter by bonded status PLUS
location Filter by location PLUS
animal_type Filter by animal type PLUS
colour Filter by colour PLUS
coat Filter by coat type PLUS
display_loc Filter by display location PLUS
neutered_name Filter by neutered/spayed status label PLUS
declawed_name Filter by declawed status label PLUS
cf{apikey} Filter by configured custom field PLUS

Exclusion parameters — prefix any filter parameter with exclude_:

Parameter Example
exclude_species exclude_species="Rabbit"
exclude_sex exclude_sex="Male"
exclude_age exclude_age="Baby"
exclude_reserved exclude_reserved="yes"
exclude_breed exclude_breed="Labrador"
exclude_size exclude_size="Large"
exclude_bonded exclude_bonded="yes"
exclude_location exclude_location="Foster"
exclude_colour exclude_colour="Black"

Other parameters:

Parameter Description Tier
per_page Animals per page (5, 10, 15, 20, or 25) Core
pagination Set to "off" to disable pagination for this instance Core
search Pre-fill the search box Core
allow_override "true" allows visitors to adjust pre-set filters PLUS

Adopted Animals

[shelter_adopted]
[shelter_adopted species="Rabbit"]
[shelter_adopted per_page="10"]

Displays recently adopted animals. The date range is configured under ShelterSync → Settings. Configure display options independently under ShelterSync → Animal Display → Adopted Animals tab.

The same filter and exclusion parameters available for [shelter_adoptables] work here (excluding PLUS-only extended dimensions not applicable to the adopted context).


Lost, Found & Stray Animals

Shortcode Shows
[shelter_community] All sub-types together with a Type filter
[shelter_lost] Lost animals only
[shelter_found] Found animals only
[shelter_stray] Stray animals only
[shelter_community]
[shelter_community type="lost+found"]
[shelter_lost species="Cat"]
[shelter_community exclude_species="Dog"]

The type parameter on [shelter_community] narrows which sub-types are shown. All filter and exclusion parameters apply.


Online Forms

[shelter_form form="Adoption Enquiry"]

The form parameter must match the Display Label configured under ShelterSync → Online Forms exactly (case-sensitive).


6. How the Listing Works

Reserved badge

Animals with an active reservation in ShelterManager automatically show a Reserved badge — a small label overlaying the top-right corner of the animal's photo on list cards, and the top-right of the photo column in the detail overlay. No admin configuration is needed for the badge to appear.

The badge label defaults to "Reserved" and can be customised via ShelterSync → Animal Display → Field Labels (field key: reserved). The badge colour defaults to green and can be changed by adding --sheltermgr-reserved-badge-bg to your theme CSS. To remove the badge entirely, add .sheltermgr-reserved-badge { display: none; } to your theme.

Vaccination icon

The vaccination icon in animal overlays shows the animal's vaccination status, calculated from ShelterManager's vaccination count data:

  • Tick (positive) — at least one vaccination given and no outstanding vaccinations
  • Cross (negative) — outstanding vaccinations remaining
  • Question mark (unknown) — vaccination data absent from the record

Search, filters, sorting, and pagination

  • Search — real-time, matches name, breed, species, colour, and description
  • Filters — slide-out panel via the Filters button; active filter count shown as a badge; Clear Filters link on the listing when active
  • Sorting — sort field and direction controls above the grid
  • Pagination — page controls below the grid; visitors can adjust per-page count

Animal detail overlay

Clicking any animal card opens the full detail overlay. Features include photos (gallery for PLUS), attribute icons, all configured fields, video embedding, a CTA button, and bonded partner navigation. Direct URL linking works — sharing a URL containing ?animal=123 opens that animal's overlay automatically. Keyboard navigable; press Escape to close.


7. PLUS Features Overview

Activate PLUS under ShelterSync → Settings → Licence with a key from sheltersync.app.

Feature Description
Photo gallery Multiple photos per animal with thumbnail navigation
Extended filters Breed, Size, Bonded Status, Location, Colour, Coat, and more
Custom sync interval 15-minute to 24-hour sync schedule
Filter override Allow visitors to adjust shortcode-locked filters
Filter display order Drag-and-drop ordering of filter dimensions in the filter overlay
Merged bonded profiles Dual-profile overlay for bonded pairs/groups with smooth scroll navigation and banner CTA
Custom Fields Add any ShelterManager API field to cards, overlays, filters, and sort — per listing type
Display order Drag-and-drop field ordering for overlays and cards, independently per listing type; section dividers
Reserved CTA suppression Replace the CTA button with a notice banner for reserved animals, preventing enquiries
Time on shelter format Show formatted duration (e.g. "3 weeks") instead of days count
Field label customisation Override any built-in field label
Date filters for LFS Date range filters for Date Lost and Date Found
CSS Configuration Adjust colours, fonts, card border radius, shadow, and column count via admin UI
Custom icon upload Replace any attribute icon with your own image via the Media Library
Vaccination icon state labels Customise positive/negative/unknown labels for the vaccination icon
Attribution footer Configure display of the ShelterSync attribution footer
Video controls Configure autoplay, mute, and controls for YouTube video embeds
Licence grace period 7-day cached-status window keeps PLUS active if the licence server is temporarily unreachable

CSS Configuration lives under ShelterSync → Animal Display → Adoptable Animals → CSS Configuration. A live preview updates as you adjust values. Available controls: primary colour, secondary colour, text colour, heading colour, border colour, badge colours (positive/negative/unknown/reserved), body and heading font stacks, card border radius (0–24px), card shadow, card column count (1–5). Values output as CSS custom properties on .sheltermgr-container without modifying plugin files.


8. Troubleshooting

PLUS features are not available after updating

PLUS licensing now requires validation against the sheltersync.app licence server. Go to ShelterSync → Settings → Licence, enter your key, and click Activate. If you are within the 7-day grace period, PLUS remains active while you complete this.

Attribute icons are showing the wrong state (cross instead of tick)

Update to v3.0.2 or later. Earlier versions had a bug where ShelterManager's integer attribute fields (which can return 0) were taking priority over the string NAME fields (which return "Yes"), causing the icon to show as negative when it should have been positive. v3.0.2 fixes the lookup priority for all 11 attributes.

Animals are not showing on the page

  1. Check ShelterSync → Dashboard for connection status and last sync timestamp.
  2. Check credentials under Settings and click Test Connection.
  3. Click Sync Now to force a fresh sync.
  4. Confirm the shortcode is placed correctly on a published page.

Reserved animals are still receiving adoption enquiries

Enable the Reserved CTA suppression toggle under ShelterSync → Animal Display → Adoptable Animals → Call to Action (PLUS). This replaces the CTA button with a notice banner for reserved animals. Alternatively, use exclude_reserved="yes" on the shortcode to remove reserved animals from the listing entirely.

Self-hosted connection is failing

Check that the Service URL under ShelterSync → Settings → Advanced is correct and includes the full path to the service endpoint (e.g. http://yourserver.example.com/service). Trailing slashes are stripped on save. Run Test Connection to verify — the success message will confirm the endpoint URL being used.

The vaccination custom icon I uploaded is not appearing

Update to v3.0.3. Earlier v3.0.x releases had a bug where the vaccination icon key was missing from the custom icon save handler, so uploads were silently discarded. After updating, re-upload the icon under ShelterSync → Animal Display → Icons → Custom Icons.

The listing shows "listings temporarily unavailable"

The cache is empty and the plugin cannot reach ShelterManager. Check the Diagnostic Log for details. The message resolves automatically once connectivity is restored and a sync completes.

Filters are not appearing

Check ShelterSync → Filters & Sort and confirm filter dimensions are toggled on. Also check that shortcode filter parameters are not locking those dimensions.

Sync is running but data is stale

Your hosting platform may not be running WP-Cron reliably. Follow the guidance under ShelterSync → Help to configure an external cron job.


ShelterSync for ShelterManager is developed by Reput8n. Licensing and support: sheltersync.app

Ready to get started?

Core is free, always. Upgrade to PLUS whenever you need more.