Snapshot: MLS sync fixes, image refresh, plugin/theme updates
MLS plugin fixes from this session: - Fix silent insert failures: location column NOT NULL was rejecting wpdb->insert calls, causing ~18k new properties since Dec 2025 to be lost. Inserts now build raw SQL with ST_PointFromText so the spatial column is populated atomically. - Auto-refresh expired media URLs in MLS_Media_Handler::fetch_and_cache(), guarded by a property-level GET_LOCK so concurrent fetches share one API refresh. - Normalize WP_Error to null in mls_get_property_image() so callers can rely on the documented string|null contract. - Support comma-separated property_type filters in MLS_Query and MLS_Cluster so the homepage "View All Commercial" link (?property_type=Commercial+Sale,Land,Farm) actually filters correctly. - Incremental sync now looks back 10 minutes past the latest modification timestamp as a safety margin against missed records. - Smart sync exits silently (info-level, not warning) when a full sync is in progress. Operational: - New cron: weekly full sync Sundays at 3 AM (/usr/local/bin/mls-full-sync). - New cron: hourly 2GB cap on mls-thumbnails/ and cache/transformed-images/ (/usr/local/bin/mls-image-cache-cap). - Logrotate config for wp-content/debug.log (2-day retention, daily rotation, delaycompress). Repo policy: - CLAUDE.md updated with explicit "commit everything except build artifacts" policy. - .gitignore: untrack runtime image caches and debug.log rotations. Other modifications in this snapshot are pre-existing in-flight theme/plugin/db_content_updates work. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -0,0 +1,7 @@
|
||||
<svg xmlns="http://www.w3.org/2000/svg" width="49" height="49" fill="none">
|
||||
<path fill="#97B7D9" d="M23.45 35.4a10.85 10.85 0 0 1-9.67-10.77h2.09l-7.51-4.35-7.52 4.35h2.1A21.69 21.69 0 0 0 23.4 46.28l-3.12-5.39 3.17-5.48Z"/>
|
||||
<path fill="#EBF3FC" d="M46.32 24.63A21.7 21.7 0 0 0 25.85 2.97l3.11 5.39-3.16 5.48a10.84 10.84 0 0 1 9.67 10.79h-2.09l7.51 4.33 7.52-4.33h-2.1Z"/>
|
||||
<path fill="#C4D9EF" d="m40.9 28.96-5.5-3.16a10.85 10.85 0 0 1-10.78 9.67v-2.1l-4.34 7.52 4.34 7.52v-2.1a21.7 21.7 0 0 0 21.66-20.46l-5.39 3.11Z"/>
|
||||
<path fill="#036AAB" d="M28.96 8.36 24.62.84v2.1A21.68 21.68 0 0 0 2.98 23.4l5.39-3.12 5.48 3.17a10.85 10.85 0 0 1 10.78-9.67v2.09l4.34-7.51Z"/>
|
||||
<path fill="#036AAB" d="M48.62 24.57a.22.22 0 0 0-.21-.16h-1.88A21.91 21.91 0 0 0 25.98 2.76L24.81.73a.22.22 0 0 0-.24-.1.22.22 0 0 0-.16.21v1.88A21.9 21.9 0 0 0 2.76 23.27L.73 24.44a.22.22 0 0 0 .11.4h1.88A21.9 21.9 0 0 0 23.27 46.5l1.16 2.03a.22.22 0 0 0 .2.1h.05a.22.22 0 0 0 .16-.21v-1.88a21.9 21.9 0 0 0 21.65-20.55l2.02-1.17a.22.22 0 0 0 .1-.24Zm-24-21.42a.22.22 0 0 0 .22-.22V1.65l.83 1.42 3.04 5.29-3.87 6.7v-1.28a.22.22 0 0 0-.22-.22 11.06 11.06 0 0 0-10.95 9.54l-5.2-3a.22.22 0 0 0-.23 0L3.21 23A21.47 21.47 0 0 1 24.62 3.16Zm8.65 21.66 1.9 1.1a10.6 10.6 0 0 1-10.33 9.34v-1.87a.22.22 0 0 0-.4-.11l-1.1 1.9A10.6 10.6 0 0 1 14 24.85h1.87a.22.22 0 0 0 .1-.41l-1.89-1.1A10.6 10.6 0 0 1 24.41 14v1.87a.22.22 0 0 0 .16.21.22.22 0 0 0 .25-.1l1.1-1.9a10.6 10.6 0 0 1 9.33 10.33h-1.87a.22.22 0 0 0-.21.16.22.22 0 0 0 .1.24Zm-30.12-.18a.22.22 0 0 0-.22-.22H1.65l1.42-.82 5.28-3.05 6.7 3.87h-1.27a.22.22 0 0 0-.22.22 11.06 11.06 0 0 0 9.54 10.95l-3 5.2a.22.22 0 0 0 0 .22l2.9 5.04A21.48 21.48 0 0 1 3.16 24.63ZM24.62 46.1a.22.22 0 0 0-.21.22v1.28l-.82-1.43-3.05-5.28 3.87-6.7v1.28a.22.22 0 0 0 .22.22 11.07 11.07 0 0 0 10.95-9.54l5.2 3a.2.2 0 0 0 .22 0l5.04-2.9A21.48 21.48 0 0 1 24.62 46.1Zm21.56-20.43-5.29 3.04-6.7-3.87h1.28a.22.22 0 0 0 .21-.21 11.06 11.06 0 0 0-9.53-10.96l3-5.2a.22.22 0 0 0 0-.22l-2.9-5.04A21.47 21.47 0 0 1 46.1 24.63a.22.22 0 0 0 .22.21h1.28l-1.42.83Z"/>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 2.0 KiB |
Reference in New Issue
Block a user