Added: Clickjacking protection — Content-Security-Policy: frame-ancestors restricts which domains may embed the view (same-origin only when no origins are specified)
Added: includes/embed.php — embed view rendering and frame security headers
1.5.0
Added: Merge mode (sources key) — combine WordPress posts, RSS feeds, and APIs into a single chronological list
Added: hxse_fetch_merged_data() — fetches, normalizes, and merges multiple data sources
Added: Source normalizers for wp_query / rss / api / xml into a common format (title, link, date, excerpt, source, raw)
Added: orderby / order / limit keys for merge mode sorting
Added: map key — maps API/XML response keys to the common format
Added: templates/merged.php — default template with source badges
Added: Merge list styles in hxse.css
1.4.0
Added: source: ‘rss’ mode — fetches RSS 2.0 and Atom feeds and converts to PHP array automatically
Added: source: ‘xml’ mode — fetches any XML and converts to PHP array using xpath key
Added: hxse_parse_rss() — RSS 2.0 / Atom parser
Added: hxse_parse_xml() — generic XML parser with xpath support
Added: hxse_simplexml_to_array() — recursive SimpleXMLElement to array converter
Improved: hxse_do_remote_fetch() now handles json / rss / xml based on source key
Improved: backward-compatible hxse_do_api_request() alias retained
1.3.0
Added: Cache mapping (hxse_cache_map option) — tracks schema ID → filename relationships to detect orphaned files
Added: Orphan file detection — warns when JSON files exist without a corresponding schema
Added: “今すぐ更新” button — manually re-fetches API and regenerates JSON from admin UI (API schemas only)
Added: Bulk delete all cache button with total file size display
Added: Delete orphaned files button in admin UI
Improved: hxse_delete_static_cache() now also removes the mapping entry
Improved: uninstall.php now also deletes the hxse_cache_map option
1.2.0
Added: cache_mode: ‘static’ — saves API responses as JSON files in wp-content/hxse-cache/ (blocked from web access via .htaccess)
Added: cache_file key — custom filename for the static JSON cache