site cotnent staus fix

This commit is contained in:
IGNY8 VPS (Salman)
2026-01-16 13:44:22 +00:00
parent 79bdf52856
commit e704ed8bcf
2 changed files with 19 additions and 4 deletions

View File

@@ -161,24 +161,29 @@ class PublisherService:
# Update content status to published if successful
if result.get('success'):
content.status = 'published'
content.site_status = 'published' # CRITICAL: Set site_status for frontend display
content.external_id = result.get('external_id')
content.external_url = result.get('url')
# Update site_status_updated_at timestamp
from django.utils import timezone
content.site_status_updated_at = timezone.now()
# NEW: Save term_ids to external_metadata if available
if result.get('metadata') and result['metadata'].get('term_ids'):
if not hasattr(content, 'external_metadata'):
logger.warning(f"[PublisherService._publish_to_destination] ⚠️ Content model missing external_metadata field - run migrations")
content.save(update_fields=['status', 'external_id', 'external_url', 'updated_at'])
content.save(update_fields=['status', 'site_status', 'site_status_updated_at', 'external_id', 'external_url', 'updated_at'])
else:
if content.external_metadata is None:
content.external_metadata = {}
content.external_metadata['wordpress_term_ids'] = result['metadata']['term_ids']
logger.info(f"[PublisherService._publish_to_destination] 🏷️ Saved term_ids to external_metadata: {result['metadata']['term_ids']}")
content.save(update_fields=['status', 'external_id', 'external_url', 'external_metadata', 'updated_at'])
content.save(update_fields=['status', 'site_status', 'site_status_updated_at', 'external_id', 'external_url', 'external_metadata', 'updated_at'])
else:
content.save(update_fields=['status', 'external_id', 'external_url', 'updated_at'])
content.save(update_fields=['status', 'site_status', 'site_status_updated_at', 'external_id', 'external_url', 'updated_at'])
logger.info(f"[PublisherService._publish_to_destination] ✅ Updated content status to 'published'")
logger.info(f"[PublisherService._publish_to_destination] ✅ Updated content status='published', site_status='published'")
return {
'destination': destination,

View File

@@ -309,6 +309,16 @@ export default function SiteContentManager() {
</div>
</div>
<div className="flex gap-2 ml-4">
{item.external_url && (
<Button
variant="outline"
size="sm"
onClick={() => window.open(item.external_url, '_blank')}
title="View Live"
>
<GlobeIcon className="w-4 h-4" />
</Button>
)}
<Button
variant="outline"
size="sm"