Continuous iteration, constant refinement.
The Blox visual editor is renamed Yikai Builder from v1.20.0; the entries below use the new name.
Source: 82242afb · 9.42MB
Source: bdd60c08 · 9.41MB
Source: caf137b0 · 9.33MB
Source: 76f1a7ae · 7.84MB
Source: 0899a37d · 8.22MB
Source: a20c4cf2 · 8.22MB
Source: ee43d942 · 7.76 MB
Source: 68248019 · CI · 7.16MB
Source: abbac237 · CI · 7.17MB
Source: 0077ab1e · CI · 7.61MB
php bin/yikai.php demo:owner-token on the server to claim the owner passphrase. The static generation base address must share the site's origin. Market themes require CMS ≥ 1.19.4.item- timestamp URLs. Existing content URLs are unaffected. 1.19.1 users should upgrade.wan-zheng-de-api, where the acronym was previously dropped).All issues below require an existing admin account; none permit unauthenticated access. Sites using multiple roles should upgrade first.
deploy/nginx-server.conf; the static generation page detects and reports this automatically.A cluster of privilege-escalation gaps left behind by the fine-grained permission rework. All require an existing admin account — none allow unauthenticated access. Low risk for single-admin sites; sites with multiple roles (editors / contributors) should upgrade promptly.
A new automated check asserts "fresh install ≡ old site after all migrations". Its first run surfaced long-standing gaps:
overrides/); a new routing extension point lets legacy URLs from a migrated system work without touching core filesjavascript: and similar pseudo-protocols remained clickable. Friendly links render in the public footer, exposing every visitor. This release enforces a protocol whitelist on both output and savedisk_free_space disabled; rich-text editor init compatibility fixsite_favicon (no longer always showing the default icon)overtrue/pinyin: previously the vendor directory was missing, so auto-generating a slug from a Chinese title would error out; production dependencies are now packaged in, ready to use right after extractionadmin/job_edit.php mistakenly used <?php echo __('msg_save_success') ?> inside an echo '...' single-quoted string, and the inner single quote closed the string early, causing a PHP parse failure (present since v1.7.5)advantage block (home_advantage_1~3_title/desc), fully covered across zh-CN / en / jaforeach in admin/includes/header.php used $group as the loop variable, and because require shares scope, it polluted setting.php's $group (overwriting it with the menu array). At the bottom of the settings page, e($group) received an array and triggered a fatal TypeError → page output truncated → the form-submit JS listener was never registered → the form degraded to a native GET → the back-end POST save branch never ran$group → $navGroup, eliminating the scope pollutionadmin/includes/header.php.
bin/yikai import <products|articles> <csv>: idempotent by slug, categories/channels resolved by slug, supports incremental --update and --dry-run preview@demo are automatically stripped, keeping only the channel skeleton — a cleaner empty site to hand offconfig/defaults.php (live chat and other settings no longer pile into "Basic Settings" or display as raw keys)data_changed hook)articles table, unified on contents; the install wizard version number now reads the real CMS_VERSION (no longer hard-coded to v1.0.0)utf8mb4_general_ci for compatibility with older MySQL 5.x hostsinstall/sql/.
bin/yikai: a command registration / dispatch framework, laying the groundwork for batch imports and maintenance scripts</script> literal in a JS comment in recipe.php that broke out of the pagethemes/ —— dozens of utility classes used by Aurora, such as bg-slate-950 / backdrop-blur-xl / from-indigo-500, were never generated into tailwind.css. After the fix, tailwind.css grew from 96K to 111K.aurora-theme main inner-page dark scope overrides to Aurora: the bg-white / bg-gray-* / bg-primary / text-gray-* / .prose hard-coded in the root-level PHP (article/list/page) are all converted to their dark counterpartsassets/css/src/ from .gitignore —— so app.css is checked in, preventing other developers from missing the themes/ scan when recompiling after a clone (the root cause of v1.7.3.1)/admin/theme.php to switch__(). A leftover bug from the same source as the theme color / AI assistant labels already fixed in v1.7.3login_invalid / login_throttle_locked / login_success (fully covered across zh-CN / en / ja)lang === defaultLang —— a fundamental bug where *_lang translation lookups were bypassed after the user switched the default language__(), synced across all three language packs__('admin_ai_assistant')/company/history.html