Le bouton "Afficher le message complet" ne fonctionne pas dans les installations en sous-dossier

J’ai dû déboguer ce genre de problèmes plusieurs fois et c’est compliqué, alors soyez patient avec moi.

Exécutez le script suivant et partagez le résultat ici

# Remplacez par l'ID du sujet ou l'URL que vous déboguez
topic_id = 386983

# 1. Vérifier si TopicEmbed existe et son contenu
te = TopicEmbed.find_by(topic_id: topic_id)
puts "TopicEmbed existe : #{te.present?}"
puts "URL de l'intégration : #{te&.embed_url}"
puts "Cache de contenu présent : #{te&.embed_content_cache.present?}"
puts "Longueur du cache de contenu : #{te&.embed_content_cache&.length || 0}"
puts "SHA1 du contenu : #{te&.content_sha1}"

# 2. Vérifier le contenu mis en cache réel (500 premiers caractères)
puts "\n--- Aperçu du contenu mis en cache ---"
puts te&.embed_content_cache&.truncate(500)

# 3. Essayer de récupérer depuis l'URL distante
if te&.embed_url.present?
  puts "\n--- Tentative de récupération distante ---"
  begin
    response = TopicEmbed.find_remote(te.embed_url)
    puts "Récupération distante réussie : #{response.present?}"
    puts "Corps distant présent : #{response&.body.present?}"
    puts "Longueur du corps distant : #{response&.body&.length || 0}"
    puts "Titre distant : #{response&.title}"
    puts "Corps distant : #{response&.body&.truncate(500)}"
  rescue => e
    puts "Échec de la récupération distante : #{e.message}"
  end
end

# 4. Vérifier ce que retournerait expanded_for
if te.present?
  puts "\n--- Test de expanded_for ---"
  post = Post.find(te.post_id)

  # Vider le cache pour forcer une nouvelle récupération
  Discourse.cache.delete("embed-topic:#{topic_id}")

  begin
    expanded = TopicEmbed.expanded_for(post)
    puts "Contenu développé présent : #{expanded.present?}"
    puts "Longueur du contenu développé : #{expanded&.length || 0}"
  rescue => e
    puts "Échec de expanded_for : #{e.message}"
  end
end

# 5. Vérifier les paramètres du site
puts "\n--- Paramètres du site ---"
puts "embed_truncate: #{SiteSetting.embed_truncate}"
puts "allowed_embed_selectors: #{SiteSetting.allowed_embed_selectors}"
puts "blocked_embed_selectors: #{SiteSetting.blocked_embed_selectors}"

Ceci montrera pourquoi https://tecnoblog.net/comunidade/t/governo-renova-app-da-cnh-para-baratear-obtencao-do-documento/157462?u=falco ne fonctionne pas

3 « J'aime »