fix(admin): 互动数据列移除下载量统计
「互动数据」列此前有浏览/点赞/收藏/下载四项,现按要求去掉下载量, 只保留前三项。 配套清理: - render_stats_column() 去掉下载读取、历史 download_count 键回退, 以及 fa-download 渲染分支; - apply_query_args() 的排序白名单去掉 download_count; - stats_meta_key() 映射去掉该维度。 核对参考主题:其互动列(all_count)本来就只有阅读、点赞、收藏三项, 下载量是从 AKSRT 旧实现里搬过来的,不属于参考主题能力,去掉后 与 1:1 复刻目标一致。 _aksrt_res_download_count / RESOURCE_DOWNLOAD_COUNT_KEY 本身保留, 它们仍被资源相关功能使用;此处只是不再在列表列里展示。 契约测试改为断言下载项已消失,并删掉因此不再使用的 domain 变量。 验证:node --test tests/widget-system/*.test.cjs 445 项全部通过; php -l 无语法错误。
This commit is contained in:
@@ -125,13 +125,6 @@ class PostListEnhance {
|
||||
$views = function_exists('aksrt_get_post_views') ? (int) aksrt_get_post_views($post_id) : (int) get_post_meta($post_id, \AKSRT\Core\DomainModel::POST_VIEW_COUNT_KEY, true);
|
||||
$likes = function_exists('aksrt_get_post_likes') ? (int) aksrt_get_post_likes($post_id) : (int) get_post_meta($post_id, '_aksrt_like_count', true);
|
||||
$favorites = function_exists('aksrt_get_post_favorites') ? (int) aksrt_get_post_favorites($post_id) : (int) get_post_meta($post_id, '_aksrt_favorite_count', true);
|
||||
$downloads = (int) get_post_meta($post_id, \AKSRT\Core\DomainModel::RESOURCE_DOWNLOAD_COUNT_KEY, true);
|
||||
if ($downloads <= 0) {
|
||||
$legacy_downloads = (int) get_post_meta($post_id, 'download_count', true);
|
||||
if ($legacy_downloads > 0) {
|
||||
$downloads = $legacy_downloads;
|
||||
}
|
||||
}
|
||||
|
||||
$format = static function (int $n): string {
|
||||
if (function_exists('aksrt_format_number')) {
|
||||
@@ -151,10 +144,6 @@ class PostListEnhance {
|
||||
$parts[] = '<span title="' . esc_attr__('点赞', 'aksrt') . '" style="margin-right:4px;"><i class="fa fas fa-thumbs-up" style="color:#1890ff;font-size:12px;"></i> ' . esc_html($format($likes)) . '</span>';
|
||||
$parts[] = '<span title="' . esc_attr__('收藏', 'aksrt') . '" style="margin-right:4px;"><i class="fa fas fa-star" style="color:#f39c12;font-size:12px;"></i> ' . esc_html($format($favorites)) . '</span>';
|
||||
|
||||
if ($downloads > 0) {
|
||||
$parts[] = '<span title="' . esc_attr__('下载', 'aksrt') . '"><i class="fa fas fa-download" style="color:#52c41a;font-size:12px;"></i> ' . esc_html($format($downloads)) . '</span>';
|
||||
}
|
||||
|
||||
echo implode(' · ', $parts);
|
||||
}
|
||||
|
||||
@@ -240,7 +229,7 @@ class PostListEnhance {
|
||||
if ($orderby === 'sales_volume') {
|
||||
$query->set('meta_key', \AKSRT\Core\DomainModel::RESOURCE_SALES_VOLUME_KEY);
|
||||
$query->set('orderby', 'meta_value_num');
|
||||
} elseif ($orderby === 'views' || $orderby === 'like' || $orderby === 'favorite' || $orderby === 'download_count') {
|
||||
} elseif ($orderby === 'views' || $orderby === 'like' || $orderby === 'favorite') {
|
||||
$query->set('meta_key', $this->stats_meta_key($orderby));
|
||||
$query->set('orderby', 'meta_value_num');
|
||||
}
|
||||
@@ -270,10 +259,9 @@ class PostListEnhance {
|
||||
*/
|
||||
private function stats_meta_key(string $orderby): string {
|
||||
$map = [
|
||||
'views' => \AKSRT\Core\DomainModel::POST_VIEW_COUNT_KEY,
|
||||
'like' => '_aksrt_like_count',
|
||||
'favorite' => '_aksrt_favorite_count',
|
||||
'download_count' => \AKSRT\Core\DomainModel::RESOURCE_DOWNLOAD_COUNT_KEY,
|
||||
'views' => \AKSRT\Core\DomainModel::POST_VIEW_COUNT_KEY,
|
||||
'like' => '_aksrt_like_count',
|
||||
'favorite' => '_aksrt_favorite_count',
|
||||
];
|
||||
return $map[$orderby] ?? \AKSRT\Core\DomainModel::POST_VIEW_COUNT_KEY;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user