Version 1.4.0
August 24, 2026
Added
- Bulk import up to 50 movies from a pasted list of titles, optional title years, TMDB IDs or TMDB movie URLs. Titles are matched for review before anything is queued; already-imported movies and duplicates stay excluded unless you deliberately choose to re-import them.
Version 1.3.1
August 23, 2026
Changed
- The entries-index button and its panel heading now read “New Movie Import entry” instead of “New entry from TMDB”.
- New plugin artwork: the Plugin Store icon and the control-panel nav icon have both been redrawn.
Version 1.3.0
August 18, 2026
Changed
- The settings screen now maps every field in one place — one row per field on the movie entry type, grouped into a table per field tab, mirroring the entry's own edit screen — instead of four separate mapping sections. Fields the plugin can’t import into are listed too, with the reason, rather than being omitted silently.
- Genre and cast/crew mapping are now a single setting. Existing configurations are carried over automatically on first load and rewritten on the next save; no action is needed for most installs. The one exception: if the same field was mapped to both a genre relation and a credit role, a field can now hold only one — it keeps the genre mapping and the credit role is dropped, with an on-screen warning naming the field and the dropped role so it can be re-pointed at a different field before saving.
- More than one field can now receive a movie’s genres.
Fixed
- Mapping warnings now appear beside the field they’re about, instead of above the whole screen.
- Each dropdown in the mapping table now shows its arrow on the dropdown itself. The arrow was being drawn at the far right of the column, well clear of the control it belonged to, and clicking it did nothing.
Added
- Import a movie’s cast and crew as related People entries. Map an Entries field on the movie entry type to a credit role — Cast, a specific crew job (Director, Screenplay, Producer, and others), or a whole crew department (Directing, Writing, Camera, and others) — and each field is filled with the credited people, found-or-created in a People section you choose. Job and department are both offered because neither alone is enough: not every film's writers hold the job title “Writer”, and a whole department pulls in roles you likely don't want (assistant directors, script supervisors) alongside the ones you do.
- A person's headshot downloads into a mapped Assets field on the person entry type, at a configurable size, the same way posters and backdrops do. A person with no headshot on TMDB is simply skipped.
- People are identified by their TMDB person id, not by name, so an existing same-titled entry is never reused — two different people can share a name (TMDB lists more than one “Chris Evans”). If an unlinked entry with the same name already exists, a second entry is created and a warning names the collision so it's easy to find and merge by hand.
- A new
peopleLimitsetting caps how many people each mapped field relates (default 10) — a film's full crew list can run into the hundreds. - Settings: a warning appears when a mapped People field's sources don't include the People section, since the relation would otherwise fail to save without telling you.
Improved
- Re-importing a film adds the people TMDB credits without removing anyone you added to a mapped field by hand.
Version 1.2.0
August 16, 2026
Added
- A movie’s logo (title treatment) can now be imported into a mapped Assets field, alongside
the poster and backdrop. TMDB doesn’t designate a single primary logo, so Movie Importer
picks one for you: a logo in your primary site’s language if there is one, otherwise an
English logo, otherwise the first logo TMDB lists, which is TMDB’s own ranking. There’s no
logo-language setting or picker in this release. Some films — mostly obscure or
low-popularity ones — have no logo on TMDB at all; when that happens the field is simply left
empty and nothing is reported. Logo size is configurable like poster and backdrop size,
defaulting to
w500, and the image downloads once into the field’s own upload location, reused on re-import and re-fetched if the asset is deleted.
Changed
- Internal tidy-up across the settings screen, the importer and the control-panel asset bundles: shared code that had been written out more than once now lives in one place. Nothing changes for you — no new features, no fixes, nothing to do.
Version 1.1.1
August 15, 2026
Changed
- Internal tidy-up in the import status endpoint: every non-imported result is now built in one place rather than two. Nothing changes for you — no new features, no fixes, nothing to do.
Version 1.1.0
August 15, 2026
Improved
- Importing several films at once is much lighter on your server. Each row used to check on its own import separately, so importing a full page of ten results meant around 80 status requests; they now share one request per check, measured at 10 for the same ten films.
Version 1.0.1
August 15, 2026
Changed
- The Guzzle requirement is now
^7.2.0, matching the version Craft itself requires. The previous^7.0allowed versions Craft would never install, so this only makes the declared requirement honest — no behaviour changes, and nothing to do when updating.
Version 1.0.0
August 12, 2026
Initial release.
Added
- Search TMDB from the Craft control panel and import a movie as a Craft entry.
- Map TMDB fields to your section’s entry-type fields on the plugin settings screen (scalar values).
- Queued imports: importing runs as a job, creating a disabled entry and updating it in place on re-import.
- Poster and backdrop images download into Craft Assets and relate to the entry, each mapped to its own Assets field, with configurable sizes sourced from TMDB’s configuration.
- Import a movie’s genres as related entries: found-or-created in a configurable section and related through an Entries field, deduped by TMDB genre ID via the links table. Chosen over categories/tags, which Craft 6 removes.
- Import identity is tracked in a plugin-owned links table, so re-imports dedupe and deleted entries/assets re-import cleanly.
- Re-import an already-imported film straight from the search results, so a film whose details changed on TMDB can be refreshed without leaving the panel. Mapped fields are updated from TMDB; fields you have not mapped are left alone.
- A Close button on the “New entry from TMDB” panel.
Fixed
- The “New entry from TMDB” panel on the entries index now lays out correctly at every window width. It previously collapsed below roughly 1400px, wrapping film titles one character per line.
- A full page of search results in that panel is now scrollable. The last results and the footer were previously cut off and unreachable on shorter windows.
- Result rows now line up: an already-imported row is no longer 20px wider than an importable one.
- Film titles in right-to-left languages (Arabic, Hebrew) render correctly, with the year on the correct side, and synopses keep their punctuation in place. This applies in both directions — Latin titles were affected the same way on a right-to-left control panel.
- Settings: a configured Genre field is no longer silently cleared when saving while the destination entry type is missing or unselected.
- Settings: changing the destination section or entry type now says that the field mapping below refers to the previously saved entry type, and disables it until you save.
Improved
- The “Import” label on a result row now meets WCAG AA contrast (previously 2.26:1), and row actions meet the 24px minimum target size.
- The panel announces state changes to screen readers when parts of the settings form are turned off.
- A malformed translation string no longer breaks the search screen; it falls back to the untranslated text.
- The “Import” action on a search result now reads as an action rather than as caption text.
- Settings: the warnings about a missing title field and an unrelatable genre field now render as warnings instead of plain paragraphs, and the field- and image-mapping sections explain what mapping does.
- Search results are labelled “Top 10 matches” rather than “10 results”, which is what the search actually returns.
Security
- The TMDB API key is stored as an environment variable reference (
$TMDB_API_KEY), never the literal value, and is redacted from error messages. - The settings screen escapes the section/entry-type data it embeds in a script block, so a section name containing markup cannot break out of it.