diff --git a/application/src/main/java/run/halo/app/core/reconciler/TagReconciler.java b/application/src/main/java/run/halo/app/core/reconciler/TagReconciler.java index 4660597909..dec3af3d6b 100644 --- a/application/src/main/java/run/halo/app/core/reconciler/TagReconciler.java +++ b/application/src/main/java/run/halo/app/core/reconciler/TagReconciler.java @@ -52,10 +52,17 @@ public Result reconcile(Request request) { String newPattern = tagPermalinkPolicy.pattern(); annotations.put(Constant.PERMALINK_PATTERN_ANNO, newPattern); - String permalink = tagPermalinkPolicy.permalink(tag); var status = tag.getStatusOrDefault(); + String permalink = tagPermalinkPolicy.permalink(tag); status.setPermalink(permalink); + if (status.getPostCount() == null) { + status.setPostCount(0); + } + if (status.getVisiblePostCount() == null) { + status.setVisiblePostCount(0); + } + // Update the observed version. status.setObservedVersion(tag.getMetadata().getVersion() + 1); diff --git a/application/src/main/java/run/halo/app/theme/finders/vo/TagVo.java b/application/src/main/java/run/halo/app/theme/finders/vo/TagVo.java index fc1e4c9973..7272490cd3 100644 --- a/application/src/main/java/run/halo/app/theme/finders/vo/TagVo.java +++ b/application/src/main/java/run/halo/app/theme/finders/vo/TagVo.java @@ -1,5 +1,7 @@ package run.halo.app.theme.finders.vo; +import static org.apache.commons.lang3.ObjectUtils.defaultIfNull; + import lombok.Builder; import lombok.Value; import run.halo.app.core.extension.content.Tag; @@ -33,7 +35,7 @@ public static TagVo from(Tag tag) { .metadata(tag.getMetadata()) .spec(spec) .status(status) - .postCount(tag.getStatusOrDefault().getVisiblePostCount()) + .postCount(defaultIfNull(status.getVisiblePostCount(), 0)) .build(); } }