The Data tab: finding records to fix
The Data tab checks the records on your site for problems that make imports go wrong or leave the catalogue untidy: missing or duplicate SKUs, repeated titles, empty descriptions, fields holding two different values, and taxonomy terms with missing or thin descriptions. Every check runs only when you click it. Nothing on the tab changes your data.
Available since 3.0.0.
Check posts and products
Open Super Speedy → Imports and select the Data tab. Choose what to check under Records. The list offers every public post type (products include their variations) and, in a second group, your taxonomies.
For posts and products, tick the checks you want under Choose checks:
| Check | Finds |
|---|---|
| Missing SKU | Records with no SKU |
| Duplicate SKU | Records sharing a SKU with another record |
| Duplicate title | Records sharing a title with another record of the chosen type |
| Missing title | Records with an empty title |
| Missing description | Records with an empty description (post content) |
| Missing excerpt | Records with an empty short description (excerpt) |
| Conflicting stored values | Records holding two or more different values for one field, such as two SKUs |
Click Analyse data. The results list every record found, with its ID, title, SKU, status, type, parent and the checks it failed. The title opens the record in WordPress; a variation opens its parent product’s editor. Use Findings to show one check at a time.
The checks cover every status except Trash and auto-drafts. Duplicate checks follow your database’s case and accent rules, so ABC-1 and abc-1 count as the same SKU on a default WordPress database. A repeated title or an empty excerpt can be intentional, so look at each finding before changing anything.
WordPress reads only the first value of a field such as _sku or _price. A record carrying a second, different value looks correct in the editor while the other value sits unseen in the database. Conflicting stored values lists every value each record holds.
Check taxonomy terms
Choose a taxonomy under Records, such as Product categories or Tags, and the checks change to:
- Missing description – the term has no description text.
- Short description – the description has fewer characters of text than the number you set. The default is 50, and you can choose anything from 1 to 1,000.
A description’s text is what remains once HTML tags are removed and surrounding spaces are trimmed, so a description made only of markup counts as missing. Tick Only terms in use (assigned to at least one item) to leave out empty terms. Each term’s name links to its edit screen.
Finding duplicated, templated or boilerplate descriptions is part of the Term Descriptions add-on for the paid edition, which adds its checks to this list. Before version 3.50.0 a Duplicate description check was built in; from 3.50.0 it moves to the add-on.
Download the records as a CSV (paid edition)
In the paid edition, the results end with Download a CSV. Tick the records you want, or Select all records in these findings, choose the columns, and click Download CSV.
- For posts and products, the fields that failed a check are selected for you. Add a column opens a searchable list of every other field.
posts.ID,post_typeandssi_source_siteare always included. - A field holding several values shows them in one cell separated by
|. Replace the cell with the value you want before importing. The import writes that value to every stored copy but does not remove the extra copies; delete those in the product editor’s Custom Fields box or withwp post meta delete. - A cell beginning
a:orO:is a stored PHP structure. Leave it unchanged unless you know its format. - For terms, the file holds
terms.term_id,taxonomy,ssi_source_site, the name, slug, parent, parent path, count and the stored description with its HTML. Add any term metadata you also want to review.
Lite runs every check and links each finding to its edit screen; the CSV download is part of the paid edition.
Fix the file and import it back
Edit the downloaded CSV in your spreadsheet, then upload it with + New Import. Super Speedy Imports recognises a Data tab file. When every row’s ssi_source_site is this site, the new import:
- matches on Post ID (posts.ID), using the
posts.IDcolumn; - is set to Only update existing items, so a row cannot create a new record;
- has Delete missing items off;
- maps the remaining columns, and does not write
posts.ID,post_typeorssi_source_siteas fields.
You can choose another matching option before running it. A file downloaded from a different site is mapped like any other CSV, without Post ID matching.
Delete the columns you did not edit before you upload the file. The import can then write only the fields you meant to change.
A downloaded term file is recognised as term data. Importing it needs an import type that imports terms, such as the Term Descriptions add-on for the paid edition. Any other import type refuses a term file before the import is created, in + New Import, wp ssi create and the MCP create-import ability alike, because importing it as posts would write term descriptions into posts and create a post for every other term. A paid build without a term import type names the Term Descriptions add-on in that message.
Check the matching fields of one import
The lower part of the tab, Import matching checks, looks at the field a saved import matches on. Select the import, then click Check selected import’s matching fields, or click Check existing data under the matching section of the import’s own configuration screen.
The report shows how many groups of records share a matching value and how many records they hold, with an edit link for each record. Two controls change what it reads:
- Scope: Current data reads the records on the site; Identifiers from last staged run limits the check to the identifiers the import loaded on its last run, which may have used earlier settings.
- Show: Duplicate identities, or Blank identities in selected post type (current data only).
A SKU check counts every record carrying that SKU, including other post types and statuses. It checks the stored records, not the rows of an incoming file. When an import stops because two items share an identifier, the failure message offers Inspect conflicting existing data, which opens this report for the run.
An import matching on Post ID has nothing to report: WordPress Post IDs are unique and never blank. A Custom… composite identifier is checked in the paid edition, which is where the Custom builder is available.
Further reading
Written for Super Speedy Imports 3.63.0.

Comments