Fix language detection for draft custom post types #101
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Problem
Draft custom post types (CPTs) were incorrectly returning
nullas their language due to improper post ID resolutionRoot Cause
When
$post->isPreviewistrue, the code is using the ID of the Post's parent for language detection, but:wp_get_post_parent_id()was returning0for draft posts (that has no parents)$post->IDcontained the correct post ID needed for language detectionSolution
Updated the post ID resolution logic to fallback to the original post ID when no parent exists:
$post_id = $post_parent_id ?: $post->ID;This ensures that:
pll_get_post_language()seems to return the correct language for preview posts)