| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990 |
- #!/usr/bin/env python3
- """
- Script pour configurer automatiquement django.contrib.sites
- Corrige le problème de sitemap vide
- """
- import os
- import sys
- from pathlib import Path
- # Ajouter le répertoire parent au path
- sys.path.insert(0, str(Path(__file__).resolve().parent.parent))
- # Configuration Django
- os.environ.setdefault('DJANGO_SETTINGS_MODULE', 'duhaz_blog.settings')
- import django
- django.setup()
- from django.contrib.sites.models import Site
- def configure_site():
- """Configure django.contrib.sites pour le sitemap"""
- print("\n" + "="*70)
- print("CONFIGURATION DE DJANGO.CONTRIB.SITES")
- print("="*70 + "\n")
-
- try:
- # Vérifier si le site existe
- try:
- site = Site.objects.get(id=1)
- print(f"✅ Site existant trouvé :")
- print(f" ID: {site.id}")
- print(f" Domaine: {site.domain}")
- print(f" Nom: {site.name}")
-
- # Vérifier si le domaine est correct
- if site.domain != 'www.duhaz.fr':
- print(f"\n⚠️ Domaine incorrect : {site.domain}")
- print(f" Mise à jour vers : www.duhaz.fr")
- site.domain = 'www.duhaz.fr'
- site.name = 'Mr Duhaz'
- site.save()
- print(" ✅ Domaine mis à jour !")
- else:
- print("\n✅ Domaine correct !")
-
- except Site.DoesNotExist:
- print("⚠️ Aucun site avec ID=1 trouvé")
- print(" Création du site...")
-
- # Créer le site
- site = Site.objects.create(
- id=1,
- domain='www.duhaz.fr',
- name='Mr Duhaz'
- )
- print(f"✅ Site créé avec succès !")
- print(f" ID: {site.id}")
- print(f" Domaine: {site.domain}")
- print(f" Nom: {site.name}")
-
- # Vérifier les autres sites
- all_sites = Site.objects.all()
- if all_sites.count() > 1:
- print(f"\n⚠️ {all_sites.count()} sites trouvés :")
- for s in all_sites:
- print(f" - ID: {s.id}, Domaine: {s.domain}")
- print("\n Si vous avez des sites inutiles, vous pouvez les supprimer.")
-
- print("\n" + "="*70)
- print("CONFIGURATION TERMINÉE")
- print("="*70)
- print("\n✅ django.contrib.sites est maintenant configuré !")
- print("\n📝 Prochaines étapes :")
- print(" 1. Redémarrer votre serveur Django")
- print(" 2. Vérifier le sitemap : https://www.duhaz.fr/sitemap.xml")
- print(" 3. Exécuter : python scripts/diagnose_sitemap.py")
-
- return 0
-
- except Exception as e:
- print(f"\n❌ Erreur : {e}")
- import traceback
- traceback.print_exc()
- return 1
- if __name__ == "__main__":
- sys.exit(configure_site())
|