Conversation
A theme's resources/views/patterns can now hold a plain .html file: it is
registered verbatim, with no compilation step, for a pattern that needs no
PHP — such as one exported straight from the block editor. Header parsing
is unchanged (WordPress's get_file_data(), extension-agnostic); only the
discovery extension filter and the content step branch on the extension.
Needed for a WordPress Full Site Editing (block) theme, whose patterns
carry no dynamic PHP most of the time. Verified end to end on a throwaway
block theme: the .html pattern registers, renders through a real block
template, and its {{ }}-looking text is not compiled.
feat: accept plain .html files as block patterns alongside .blade.php
WordPress core resolves a block theme's templates/404.html to a temporary wp-includes/template-canvas.php, never a Blade view, so it always rendered through FrontendController's raw-PHP-template branch — the one branch that never checked is_404(). The status is now set the same way the Blade-view branch already does it. Measured building a Full Site Editing theme: the theme's 404.html rendered its content correctly, but the response was HTTP 200. Classic themes unaffected — checked apiary's 404 and home page both still answer as before.
fix: a block theme's own 404 page answers HTTP 404
WordPressBodyClass stripped error404 and added path classes, but it only ran
on WordPress routes (Route::wp() and the {any} fallback), where WordPress's
verdict is right: a real 404 lost error404 and every hierarchy page got an
any-<path> class. Laravel routes, the ones it was meant for, never had the
middleware and kept error404, is_404() and a 'Page not found' title.
Replaced by a RouteMatched listener that leaves WordPress routes alone and,
on any other route, clears the 404 state and adds the URI segments as body
classes. The fallback route is now flagged isWordPressRoute().
… map
A Vite entry is an ES module, but it was enqueued as a classic script and
printed in the head, before WordPress's import map. Firefox and Safari then
ignore the map, so every WordPress module on the page failed on
@wordpress/interactivity. In a classic theme the map is always in the
footer, so any theme was exposed as soon as a navigation block was used.
On wp_enqueue_scripts and admin_enqueue_scripts, a Vite entry (and the dev
server's client) is now a script module: WordPress places it as it places
its own. Dependencies, localized data and inline script go on a classic
companion, {handle}-data. No version is appended: a module is identified by
its URL.
driftingly/rector-laravel (dev only, 2.6.2 is the latest) requires symplify/rule-doc-generator-contracts, now marked abandoned on Packagist with no replacement. composer audit fails on abandoned packages, so Code Quality failed on every pull request. Only this package is ignored: any other abandoned package, and every security advisory, still fail the job.
ci: let composer audit pass over the abandoned symplify contracts
fix: keep WordPress's verdict on its own routes, clear it on Laravel's
fix: enqueue Vite entries as script modules, after WordPress's import map
Reverts #354, never released. A theme's static patterns belong in patterns/*.php at its root, which WordPress registers natively (and the Site Editor exports): the .html format duplicated that in a format only Pollora knew, and mixed static markup into resources/views, which is otherwise Blade only. resources/views/patterns keeps .blade.php patterns, for those that need Laravel. This reverts commit 9cf62fc, reversing changes made to 81336d7.
revert: drop .html block patterns, before they ship
A third built-in template, next to default and ecommerce: a Full Site Editing block theme. The prompt's labels move to TEMPLATE_LABELS, keyed like TEMPLATES, and a test keeps the two in step. The missing-theme page and admin notice list it too.
feat: offer Buzz as the magazine template of pollora:make:theme
The framework's version tracks Laravel's, now 13.34: illuminate/* ^13.34. Gathers the [Unreleased] entries under the version.
release: v13.34.0-beta
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Merges
developintomainfor v13.34.0-beta (release branch: #361). Requires Laravel 13.34 (illuminate/*^13.34). See the CHANGELOG section[v13.34.0-beta].