Files
kate522andClaude Opus 5 427968a721 chore(branding): remove leftover upstream theme identifiers
The theme was renamed Zibll/子比 → AKSRT → Jio, but upstream branding
survived the sweeps in CSS classes, the SVG sprite prefix, a persisted
widget field ID, JS events, admin Vue class names, test infrastructure
and docblocks.

Renames:
- zib-widget / zib-widget-wrap / zib-slider → jio-widget-box /
  jio-widget-box-wrap / jio-slider-box (jio-widget is taken by the modern
  widget shell, jio-box-* by the card primitives)
- zib-partners-scroll + zps-* → jio-partners-scroll + jps-*
- zib-combo-info-card + zci-* → jio-combo-info-card + jci-*
- zibsvg- → jiosvg-, including the exported picker helpers and the
  fa-zibsvg- family-prefix guard
- zibpay_type → pay_type; the dual-read fallback in PostQuery collapses
  to a single key
- [zibajax="submit"] dropped (no PHP emitter); zib_ajax.success →
  jio_ajax.success
- aks-* admin Vue classes → jio-*
- zib_palette() → palette()

User-facing vendor traces are gone: the floating "more" button default no
longer ships a zibll.com link or 子比主题 marketing copy, the notice
widget ships no preset promo entries, and the four 官网教程 links are
removed from the post-list admin schema.

Test infrastructure renamed to neutral names (docker-compose.reference.yml,
Caddyfile, article-baseline.json, modern-widgets-contract.test.cjs) with
their DB/volume/env/slug identifiers following.

Kept intentionally, documented in tests/fixtures/README.md: the golden
fixture reference fingerprint (a SHA-256 record of an external directory,
read by validate-widget-golden / generate-widget-golden-fixture /
audit-widget-system), the doesNotMatch guards that prove the old tokens are
gone, and the reference theme's own meta key in the visual fixtures.

No backward-compat or data migration: saved widget configs holding old
icon keys or the old field ID silently lose them, per the project's
rewrite-over-compatibility rule.

Verified: 132/132 node contract tests, php tests/widget-system/run.php
(146 assertions), audit-admin-contracts, audit-psr4-paths and
validate-widget-golden all green; tracked bundles regenerated and in sync.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
2026-11-02 00:06:54 +08:00

78 lines
3.9 KiB
PHP

<?php
/**
* Reference-theme article parameters sidebar.
*
* @var array $ctx
* @package Jio
*/
defined('ABSPATH') || exit;
$settings = $ctx['settings'];
require_once get_template_directory() . '/templates/parts/submit/term-checks.php';
?>
<?php if (!empty($ctx['is_guest'])) : ?>
<div class="jio-widget-box mb10-sm newpost-user-inputs">
<div class="title-theme mb10"><?php esc_html_e('用户信息', 'jio'); ?></div>
<p class="muted-3-color em09"><?php esc_html_e('请输入昵称', 'jio'); ?></p>
<div class="mb20"><input class="form-control" type="text" name="user_name" placeholder="<?php esc_attr_e('请输入昵称', 'jio'); ?>" required></div>
<p class="muted-3-color em09"><?php esc_html_e('请输入您的联系方式', 'jio'); ?></p>
<input class="form-control" type="text" name="contact_details" placeholder="<?php esc_attr_e('输入联系方式', 'jio'); ?>">
</div>
<?php endif; ?>
<div class="jio-widget-box mb10-sm">
<div class="title-theme mb10"><?php esc_html_e('文章参数', 'jio'); ?></div>
<div class="term-select-box">
<div class="newpost-cat-drop drop-select dropdown dependency-box">
<button type="button" data-toggle-class="open" data-target=".newpost-cat-drop" class="flex ac jsb drop-btn form-control mb6">
<span class="title-theme222"><i class="fa fas fa-folder-open mr6" aria-hidden="true"></i><?php esc_html_e('分类', 'jio'); ?></span><i class="ml6 fa fas fa-angle-right em12"></i>
</button>
<div class="dropdown-menu fluid">
<div class="mini-scrollbar padding-w10 select-drop-box">
<?php
if (!empty($ctx['categories'])) {
jio_submit_render_term_checks($ctx['categories'], array_map('intval', $ctx['current_cats']), 'category');
} else {
echo esc_html__('暂无可选择的分类', 'jio');
}
?>
</div>
</div>
</div>
<?php if (!empty($settings['custom_filter_s']) && !empty($ctx['custom_dimensions'])) : ?>
<?php foreach ($ctx['custom_dimensions'] as $dimension) :
$key = sanitize_key((string) ($dimension['key'] ?? ''));
if ($key === '') continue;
$name = (string) ($dimension['name'] ?? $key);
$vals = is_array($dimension['vals'] ?? null) ? $dimension['vals'] : [];
$current = (array) ($ctx['current_cf'][$key] ?? []);
?>
<div class="newpost-custom-filter-<?php echo esc_attr($key); ?> drop-select dropdown dependency-box">
<button type="button" data-toggle-class="open" data-target=".newpost-custom-filter-<?php echo esc_attr($key); ?>" class="flex ac jsb drop-btn form-control mb6">
<span class="title-theme222"><i class="fa fas fa-filter mr6" aria-hidden="true"></i><?php echo esc_html($name); ?></span><i class="ml6 fa fas fa-angle-right em12"></i>
</button>
<div class="dropdown-menu fluid"><div class="padding-10 select-drop-box newpost-filter-tags">
<?php foreach ($vals as $value) :
$value_key = (string) ($value['key'] ?? '');
$value_name = (string) ($value['name'] ?? $value_key);
if ($value_key === '') continue;
$active = in_array($value_key, array_map('strval', $current), true);
?>
<label class="tag-list pointer<?php echo $active ? ' active' : ''; ?>"><input type="checkbox" name="cf_<?php echo esc_attr($key); ?>[]" value="<?php echo esc_attr($value_key); ?>" <?php checked($active); ?>><span class="badg mm3"><?php echo esc_html($value_name); ?></span></label>
<?php endforeach; ?>
</div></div>
</div>
<?php endforeach; ?>
<?php endif; ?>
</div>
<?php if (!empty($settings['allow_tags'])) : ?>
<div class="title-theme mb10 mt20"><?php esc_html_e('标签', 'jio'); ?></div>
<p class="muted-3-color em09"><?php esc_html_e('填写文章的标签,每个标签用逗号隔开', 'jio'); ?></p>
<textarea class="form-control" rows="3" name="tags" placeholder="<?php esc_attr_e('输入文章标签', 'jio'); ?>" tabindex="6"><?php echo esc_textarea((string) $ctx['current_tags']); ?></textarea>
<?php endif; ?>
</div>