Documentation · Admin Reference
System And Help Reference
This document is a reference for the System & Help screen of the ADP Car Market Hub plugin (CMH Center → System & Help). It explains the connectivity, background-task, server, log-file and image-queue panels surfaced by this health view.
When to use this document
Read this if you need to:
- Confirm that your data sources, the plugin's REST endpoint and the Market Hub API are reachable.
- See whether scheduled tasks (cron jobs) are healthy and when they will next run.
- Trigger an import, image-queue run or queue purge from a single place.
- Check that the server meets the plugin's requirements (PHP version, memory, execution time).
- Inspect the log file size and rotation state, and the image-import queue health.
Overview
The screen is a read-mostly health dashboard. A top action bar above the cards includes a Download Diagnostics button — labelled Download Diagnostics ZIP, or Download Diagnostics JSON when ZIP support is unavailable on the server — which downloads a diagnostics bundle you can attach to a support request.
The screen is divided into the following cards:
- Connectivity & API — a Data sources row (per-source status), the plugin's REST API Integration check and the Market Hub API status. The AutoScout24 endpoint, reachability and OAuth2 token diagnostics now live on the AutoScout24 source card on the Connections page, not here.
- E-mail & Deliverability — whether outgoing e-mail is likely to work, plus a Send test e-mail action.
- Private Update Diagnostics — update and version diagnostics with a copyable JSON report.
- Background Tasks — list of scheduled cron events with their schedule and next run time, plus action buttons.
- Plugin Requirements — minimum versions and feature flags.
- Server & Storage — PHP configuration, server environment and uploads-directory health.
- Log File Status — current log file size, rotation state and path.
- Image Queue Status — pending images, last worker run statistics.
Each row uses traffic-light badges (ok, warn, bad) with tooltips that explain the threshold or remediation step.
Requirements or prerequisites
- A user with the plugin's management capability.
- For the connectivity checks: outbound HTTPS access from the web server to the configured API endpoints.
- For the REST API check: WordPress pretty permalinks enabled.
- For the cron section: WordPress's built-in cron must be active, or a server-side scheduler must call
wp-cron.php.
Step by step instructions
Verify connectivity
- Open
CMH Center → System & Help. - In Connectivity & API, check:
- Data sources — a per-source status summary for your connected sources (AutoScout24, mobile.de, carcuro, feed, e-mail).
- REST API Integration for the plugin's
as24ci/v1/cron-importendpoint. - Market Hub API reachability for the Market Hub API. - Hover any badge for the tooltip with the underlying detail (HTTP status, latency or error message).
- For AutoScout24 endpoint, reachability and token diagnostics, open the AutoScout24 card on the Connections page.
Check e-mail deliverability and send a test e-mail
- Scroll to the E-mail & Deliverability card. It confirms whether outgoing e-mail is likely to work for lead, search-alert and test-drive notifications.
- Review the traffic-light rows:
- Mail transport — whether WordPress can send mail at all (PHP
mail()or an SMTP/mailer transport). - SMTP / mailer — whether a recognised SMTP/mailer plugin is active (for example WP Mail SMTP, FluentSMTP, Post SMTP, Easy WP SMTP) or only bare PHPmail(). - From address — the effective From address and whether its domain matches your site domain (SPF/DKIM alignment). - SPF record and DMARC record — best-effort, cached DNS lookups for the sending domain. - Hover any badge for the tooltip with the remediation hint.
- To confirm real delivery, use Send test e-mail. The recipient field defaults to the current admin's e-mail; adjust it if needed and submit. The message is sent via WordPress's
wp_mail(), and a clear inline success or error notice is shown immediately afterwards.
Review update diagnostics
- Open the Private Update Diagnostics card in the right column.
- Read the rows to confirm the plugin's update channel is healthy: the installed version, whether update hooks are registered, the remote new version offered, transient (cached update data) consistency, the license status and the normalized domain.
- If you contact support about an update or licensing problem, use the copyable JSON report at the bottom of the card and paste it into your ticket.
This card is a quick way to confirm that the plugin can see and apply private updates without exposing any sensitive credentials.
Check scheduled tasks
- Scroll to Background Tasks.
- The card header shows a badge indicating whether scheduling runs through WP-Cron or a Server Cron, together with a heartbeat note such as Last import ran X ago or No recent import run detected.
- Review the table: each row shows the cron task, its schedule, the next run timestamp and a status badge. Tasks can include import, image-queue, analytics and Pricing Analysis jobs.
- Alongside the normal next-run state, a task may report Lock stuck, Handled by server cron or Not scheduled.
- If WordPress's built-in cron is disabled (
DISABLE_WP_CRON), a warning is displayed; in that case, set up a server-side scheduler that callswp-cron.php. - Use the inline buttons to Run Import Now, Run Image Queue Now or Clear Image Queue when needed.
Verify server compatibility
- Read Plugin Requirements for the minimum versions and feature flags, including ZipArchive availability and the ionCube Loader status (with its Loader Version).
- Read Server & Storage for PHP configuration:
-
memory_limit,WP Memory Limit,max_execution_time,upload_max_filesize,post_max_size,max_input_vars. - PHP SAPI and Server OS. - Uploads directory state and free disk space.
Inspect the log file and image queue
- Log File Status shows whether the log file exists, its current size, the remaining headroom before rotation, the last rotation time and the file path.
- Image Queue Status shows pending image imports plus statistics from the last worker run (processed count, errors, remaining items).
Configuration reference
The System & Help screen does not store its own settings. It reads from current WordPress configuration, plugin options and runtime status.
Connectivity & API badges
| Row | Possible states |
|---|---|
| Data sources | A per-source summary for the sources you have connected (AutoScout24, mobile.de, carcuro, feed, e-mail). Each shows ok / warn / bad. Source-specific diagnostics (for AutoScout24: endpoint, reachability, OAuth2 token) live on that source's card on the Connections page. |
| REST API Integration | Endpoint reachable, e.g. Active, token protection works (the endpoint rejects an invalid health-check token with HTTP 403); REST endpoint not found (HTTP 404); or unreachable. |
| Market Hub API | Reachability of the Market Hub API (similar latency-style pattern). |
Exact label wording can differ slightly between plugin versions; rely on the badge colour and the tooltip detail rather than the precise text.
The REST API row is only fully checked when a cron token has been generated in Import And Limits. Otherwise it shows
Not checked — no cron token configured.
E-mail & Deliverability rows
| Row | What it reports |
|---|---|
| Mail transport | ok when WordPress can send mail (PHP mail() or an SMTP/mailer transport is available); bad when neither is detected (outgoing e-mail will fail). |
| SMTP / mailer | ok with the detected mailer name (e.g. WP Mail SMTP, FluentSMTP, Post SMTP, Easy WP SMTP, or SMTP constants); warn when only bare PHP mail() is available (often lands in spam). |
| From address | Shows the effective From address; ok when its domain matches your site domain, warn on a domain mismatch (hurts SPF/DKIM alignment). |
| SPF record | Best-effort, cached DNS check for a v=spf1 record on the sending domain. |
| DMARC record | Best-effort, cached DNS check for a v=DMARC1 record on the sending domain. |
The Send test e-mail action below the table sends a message via wp_mail() to the recipient (defaulting to the current admin's e-mail) and reports a clear inline success or error result.
Private Update Diagnostics
This card surfaces the plugin's update and licensing health. Its rows typically include the installed version, whether update hooks are registered, the remote new version offered, transient (cached update data) consistency, the license status and the normalized domain. A copyable JSON report at the bottom packages these values for support.
Server thresholds
| Setting | ok | warn | bad |
|---|---|---|---|
memory_limit | ≥ 256 MB or unlimited | 128–255 MB | < 128 MB |
max_execution_time | > 60 s or unlimited | 30–60 s | < 30 s |
The other PHP values (upload_max_filesize, post_max_size, max_input_vars, uploads directory writability, free disk space) are presented with their current values and a contextual badge.
Background-task actions
| Button | Effect |
|---|---|
| Run Import Now | Triggers the regular import once, immediately. |
| Run Image Queue Now | Processes the next batch from the image queue. |
| Clear Image Queue | Empties the pending image queue. Destructive. |
Operational notes
- Connectivity checks use a short timeout and a custom user agent and cache their result for about one minute to avoid hammering the upstream services. They do not all use the same HTTP method: the AutoScout24 check issues a
HEADrequest, while the plugin REST self-check and the Market Hub health probe useGET(the Market Hub probe targets a/v1/healthendpoint). - The Download Diagnostics button in the top action bar produces a diagnostics bundle (a ZIP where supported, otherwise a JSON file) for attaching to a support request.
- The token expiry tooltip uses the WordPress site time zone for display, but the cached value is stored as a UNIX timestamp.
- The REST API check intentionally uses an invalid token — a healthy installation responds with
HTTP 403.HTTP 404indicates the endpoint is not reachable (typically a permalinks or rewrite issue). - If
DISABLE_WP_CRONis active, scheduled tasks will not run unless the host is configured to callwp-cron.phpon its own. Imports and image processing will appear stuck without it. - The image-queue warn badge appears when the queue size exceeds the plugin's internal threshold (currently 1,000 pending items).
- Free disk space is reported as best-effort. Some hosts hide this; in that case the badge shows Unable to determine.
Troubleshooting
- A data source shows
bad. Open that source's card on the Connections page to see the source-specific diagnostics. For AutoScout24, the Base URL may be missing or malformed, or the upstream may be down — the AutoScout24 card shows the endpoint, reachability and token detail. - AutoScout24 has no token / the token expired. Save valid Client ID and Secret for AutoScout24 on the Connections page (the AutoScout24 card shows the token status), then run Test Connection on Tools.
- REST API Status reports the endpoint was not found (HTTP 404). Pretty permalinks are off, or another plugin is overriding REST routing. Re-save permalinks under
Settings → Permalinks. - REST API row says "Not checked — no cron token configured." Open Import And Limits and generate a cron token.
- Background tasks have a stale "Next Run". WordPress cron is disabled or no traffic is hitting the site. Use the Run Import Now button to confirm the task itself runs, then schedule a server-side trigger.
memory_limitflaggedbad. Increasememory_limitinphp.iniorwp-config.php(define('WP_MEMORY_LIMIT', '256M');) — required for large imports.- Image queue keeps growing. Click Run Image Queue Now to process a batch. If the count keeps rising, reduce the number of imported images per vehicle in Import And Limits or increase the worker run frequency there.
- Log file flagged
bador No log file yet. Confirm the log directory is writable. Verify in the current plugin version before publishing.