Skip to content

Add Jetpack, SEO plugin, Gutenberg, and Polylang integration - #28

Open
datengraben wants to merge 3 commits into
masterfrom
claude/wordpress-plugin-integration-95l2o7
Open

Add Jetpack, SEO plugin, Gutenberg, and Polylang integration#28
datengraben wants to merge 3 commits into
masterfrom
claude/wordpress-plugin-integration-95l2o7

Conversation

@datengraben

Copy link
Copy Markdown
Owner
  • JetpackCompat: exclude cb_booking/cb_restriction from Jetpack Sync
    (personal booking data should not be transmitted to WordPress.com),
    skip Jetpack Photon for plugin asset URLs, and exclude Leaflet map
    containers from lazy-image rewriting (Leaflet populates these via JS)

  • SeoCompat: register cb_item and cb_location with Yoast SEO and Rank
    Math so item/location pages appear in XML sitemaps and receive proper
    title/meta template support

  • BlockPatterns: register a "CommonsBooking" block pattern category and
    four patterns (Search & Map, Map, My Bookings, Items Calendar) in the
    Gutenberg block inserter — each wraps an existing shortcode in a Classic
    block, requiring no JS

  • Polylang: switch email language to the recipient's preferred Polylang
    language before building the mail body in Message::prepareMail(), and
    reset to the site default after sending — mirrors the existing WPML
    integration

All hooks are guarded by feature-detection checks (defined/function_exists)
so there is zero overhead on sites without these plugins.

Co-Authored-By: Claude Sonnet 4.6 noreply@anthropic.com
Claude-Session: https://claude.ai/code/session_01U9JLgmjagwqfagmzF5EJMt

claude added 3 commits June 22, 2026 20:01
- JetpackCompat: exclude cb_booking/cb_restriction from Jetpack Sync
  (personal booking data should not be transmitted to WordPress.com),
  skip Jetpack Photon for plugin asset URLs, and exclude Leaflet map
  containers from lazy-image rewriting (Leaflet populates these via JS)

- SeoCompat: register cb_item and cb_location with Yoast SEO and Rank
  Math so item/location pages appear in XML sitemaps and receive proper
  title/meta template support

- BlockPatterns: register a "CommonsBooking" block pattern category and
  four patterns (Search & Map, Map, My Bookings, Items Calendar) in the
  Gutenberg block inserter — each wraps an existing shortcode in a Classic
  block, requiring no JS

- Polylang: switch email language to the recipient's preferred Polylang
  language before building the mail body in Message::prepareMail(), and
  reset to the site default after sending — mirrors the existing WPML
  integration

All hooks are guarded by feature-detection checks (defined/function_exists)
so there is zero overhead on sites without these plugins.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01U9JLgmjagwqfagmzF5EJMt
Add missing doc comments for init(), registerPatternCategory(), and
registerPatterns() methods. Add @param descriptions to all docblocks.
Rename $include to $enabled in SeoCompat to avoid the reserved-keyword
parameter name warning.

The remaining cb_-prefix and Wordpress-namespace warnings are pre-existing
project-wide patterns present in every file and are not introduced here.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01U9JLgmjagwqfagmzF5EJMt
The phpcbf/phpcs run generates .cache-phpcs-free.cache (as configured in
.phpcs.xml.dist). Add it to .gitignore so it is not flagged as an
untracked file.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01U9JLgmjagwqfagmzF5EJMt
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants