✨ New Feature

  • Emails from sub-sites are automatically sent to the main site
  • Implement system hook (Hook) extension mechanism
  • Access Akismet anti-spam service
  • New user URL token identification feature
  • Navigation supports thumbnails and 4-level hierarchy
  • Content fieldContentTitlesSupport flat mode (list) and sub-level mode (children)
  • Custom field extension supports text list, document, category field type, text list, image group supports sorting
  • Rewrite anchor text replacement logic, supports replacement at rendering time and bold option
  • Enhanced document list tag feature:
    • archiveListSupportshowContentAndshowExtraBoolean parameter
    • Supports inarchiveListusing custom field parameters to filter documents

Feature Optimization

  • Template Processing
    • Support for Template Macro Function Parsing in Document/Category Content
    • Support for Template Link Replacement on Mobile End[data-ignore="true"]Ignore Tag
    • Support dynamic image storage path change
  • Titles and links are considered duplicate when importing friend links if they are the same
  • Traffic statistics only includes HTTP 200 status code requests
  • EnhancedstampToDateFeature, added support for format=diffAndfriendlyOptions
  • Rewrite the pseudo-static processing rules, more flexible configuration, supports custom rules for individual models

Bug fix

  • Fix user personal link generation error
  • Fix concurrent Map write conflict issue
  • Fix the issue of not automatically reloading after uploading a template
  • Fix memory leak caused by request Body not closed
  • Fix PJAX pagination compatibility issue
  • Fix exception in remote image download
  • Fix configuration error of system custom content field

[en] Other Improvements

  • [en] Addedcwebp[en] Executable Permission Check
  • [en] Optimized Default Logic for Custom Fields
  • [en] Updated HTML Cache Handling Logic
  • TemplatesetSupport global configuration for instructions{% set name=value global=true %}
  • NewjumpTemplate filter, jump to specified link{% jump url 302 %}