Lokasi ngalangkungan proxy:   [ UP ]  
[Ngawartoskeun bug]   [Panyetelan cookie]                
Skip to content

Releases: fronttheme/themeplus

ThemePlus v1.0.0 — Initial Release

13 Jun 17:23

Choose a tag to compare

Added

  • 30 field types — Text, Textarea, Number, Spinner, Slider, Select, Button Set, Radio, Checkbox, Select Image, Toggle, Color Picker, Gradient Picker, Image, Gallery, Icon, Typography, Dimensions, Spacing, Border, Info, Section, Raw, Shortcode, Date Picker, Social Media, Code Editor, Repeater, Background, Link, Group
  • React-powered admin UI built with @wordpress/element and WordPress Components
  • Full white-label support via themeplus_framework_config() — rename menu, slug, icon, option key
  • Sections and subsections with priority-based ordering and themeplus_add_subsection() API
  • Conditional logic with 10 operators (==, !=, >, <, >=, <=, contains, !contains, empty, !empty) and AND/OR multiple conditions
  • Google Fonts integration — 1,899 fonts with live preview inside the Typography field
  • Custom Fonts module — upload and manage self-hosted fonts (WOFF2, WOFF); magic-byte verified, @font-face generated automatically
  • Import/Export settings — backup and restore all theme options as JSON with one click
  • REST API under themeplus/v1 namespace — get options, save options, reset all, reset section, get config
  • Developer Panel (dev mode only) — field metadata, current values, PHP data types, and copy-ready code snippets
  • Live field search across titles, subtitles, descriptions, and IDs
  • Dark and light mode — respects WordPress colour scheme with a manual toggle
  • Unsaved changes detection — warns before navigating away
  • Helper functions — themeplus_get_option(), themeplus_update_option(), themeplus_is_active(), themeplus_get_version()
  • Config functions — themeplus_add_section(), themeplus_add_subsection(), themeplus_get_sections(), themeplus_get_section(), themeplus_get_all_fields()
  • Full i18n/l10n support with .pot file included
  • Hybrid build system — Vite 7 for SCSS with HMR, webpack/@wordpress/scripts for React/JSX
  • ThemePlus_Sanitizer — per-field-type sanitization; unknown keys dropped, values validated against registered field config
  • sample-config.php — copy-and-customize configuration template for theme developers
  • SECURITY.md, CONTRIBUTING.md, .distignore, .gitattributes for repository hygiene

Fixed (pre-release audit)

  • Font upload magic-byte verification now correctly rejects files with mismatched bytes
  • REST API permission check honors configured capability (edit_theme_options) instead of hardcoded manage_options
  • Font MIME types gated behind configured capability — previously added for all uploaders
  • Stale useState in eight fields (Link, Social, Background, Spacing, Gallery, DatePicker, Repeater, Group) — all now derive from props for correct Reset/Import behavior without page reload
  • App.jsx forced re-render workaround removed — fields derive from props correctly
  • Dev Panel conditional parser handles all five dependency formats
  • Search tokenized matching includes section/subsection titles and field type in haystack
  • highlightText regex escape prevents crash on special characters
  • contains / !contains uses loose equality consistent with == operator
  • DatePicker Dropdown deprecation — position prop replaced with popoverProps.placement
  • Framework config i18n — variable text domain replaced with literal; strings now extractable by WP.org translation system
  • Font CSS output escaping — family names sanitized, URLs escaped at build time in generate_font_face()
  • save_options empty payload guard — && corrected to || preventing accidental options wipe
  • clean_admin_page uses exact screen ID match instead of substring check
  • load_plugin_textdomain() removed — auto-loaded by WordPress since 4.6
  • sample-config.php example function renamed to themeplus_sample_get_option

📖 Documentation · 📦 Installation · 🐛 Report a Bug