Link 'Iniciar Discussão' na parte inferior do post do blog não funcionando, vinculando ao topic_url

Notei que o link “Iniciar Discussão” na parte inferior do meu blog do Wordpress parou de funcionar e agora está apenas vinculando a “topic_url”.

Não tenho certeza de quando isso parou de funcionar.

Recentemente atualizei meu tema do Wordpress. Postei um post no blog após essa atualização que pareceu funcionar bem e foi postado no meu Fórum Discourse.

Por favor, veja o log abaixo:

[2025-02-11 13:53:50] comment.ERROR: sync_comments.response_error {"message":"","discourse_topic_id":"89","wp_post_id":1521,"http_code":""} 

### Este arquivo está incluído nos downloads de log ###

### Servidor ###

WordPress - 6.7.2
PHP - 8.0.30
MySQL - 10.11.11

### Plugins Ativos ###

Avada Builder - 3.11.15
Avada Core - 5.11.15
WP-Discourse - 2.5.6

### Configurações do WP Discourse (Segredos Excluídos) ###

connection-logs - 0
display-subcategories - 1
allow-tags - 1
max-tags - 8
publish-as-unlisted - 0
full-post-content - 1
custom-excerpt-length - 55
add-featured-link - 1
auto-publish - 1
force-publish - 0
force-publish-max-age - 0
publish-failure-notice - 1
auto-track - 1
allowed_post_types - post
exclude_tags - 
hide-discourse-name-field - 1
discourse-username-editable - 0
direct-db-publication-flags - 0
verbose-publication-logs - 0
enable-discourse-comments - 1
comment-type - display-comments
ajax-load - 1
load-comment-css - 1
discourse-new-tab - 1
hide-wordpress-comments - 1
show-existing-comments - 0
max-comments - 8
min-replies - 1
min-score - 0
min-trust-level - 1
bypass-trust-level-score - 50
only-show-moderator-liked - 0
custom-datetime-format - 
cache-html - 0
clear-cached-comment-html - 0
verbose-comment-logs - 0
use-discourse-webhook - 1
webhook-match-old-topics - 0
use-discourse-user-webhook - 0
webhook-match-user-email - 0
verbose-webhook-logs - 1
verbose-sso-logs - 0
enable-sso - 0
auto-create-sso-user - 0
real-name-as-discourse-name - 0
force-avatar-update - 0
redirect-without-login - 0
sso-client-enabled - 1
sso-client-login-form-change - 1
sso-client-sync-by-email - 0
sso-client-sync-logout - 0
logs-enabled - 1

Link para meu Wordpress/Discourse: https://www.alphagamer.net/

Olá @Pieces,

Então, esta publicação específica para o Discourse funcionou inteiramente como esperado? E, em seguida, uma publicação subsequente produziu este resultado inesperado?

Não tenho certeza do que você quer dizer com publicação subsequente.

Publiquei um novo post no blog ontem. A publicação deste post parece ter funcionado normalmente e foi postada no meu fórum Discourse como esperado. Verifiquei esta manhã e descobri que o link abaixo dele não funciona mais (descobri por acaso). Não fiz nada de especial, como atualizar ou outras ações.

Tenho certeza que funcionou antes, não tenho certeza há quanto tempo não está funcionando mais.

Espero que isso ajude.

Entendi, obrigado por esclarecer. Ao entrar na visualização de “editar” da postagem, você vê que o tópico está vinculado corretamente na barra lateral do “Discourse”?

Olá @angus sim, mostra que está vinculado e o link parece funcionar bem.

Entendi. Isso sugere que há algum outro problema com sua instância do WordPress, pois os dados que definem essa URL na visualização de edição de postagem são os mesmos dados que preenchem o topic_url no modelo de comentário. Em outras palavras, os dados estão lá, mas não estão sendo carregados no modelo de comentário por algum motivo.

  1. Você está vendo algum problema em seus logs PHP? Se não tiver certeza de onde eles estão, você consegue perguntar ao seu provedor de hospedagem?
  2. Você está vendo esse problema em algum outro post?
  3. Você está vendo algum erro no console do seu navegador?
  4. Você poderia tentar desabilitar o carregamento de comentários via AJAX nas configurações do “WP Discourse > Comentários” e ver se isso muda alguma coisa.

Obrigado por responder @angus

  1. Preciso dar uma olhada esta noite, não tenho acesso aos logs PHP neste exato momento
  2. Estou vendo este problema em todas as postagens
  3. Só vejo um problema relacionado a cookie (bloqueado) no console do navegador (não acho que esteja relacionado, mas ficarei feliz em receber sua orientação se estiver)
  4. Desliguei o Ajax e isso parece corrigir o link, no entanto o link tem muitos caracteres adicionais atrás do link que está definido em meu post no Wordpress (por exemplo, www.meudominio/post/1 se tornou www.meudominio/post/1?_ahsdkhsdkhkh*lnnjasdfa)

Olá @angus Percebi que instalei um Tema Filho há 6 meses para poder publicar um post do WordPress como um onebox no Discourse.

Reativei o Tema principal, o problema ainda está lá (se eu reativar o Ajax), então voltei para o meu Tema Filho e desativei o Ajax.

Abaixo você vê o código do functions.php do meu tema filho para fazer o onebox funcionar.

<?php

function theme_enqueue_styles() {
    wp_enqueue_style( 'child-style', get_stylesheet_directory_uri() . '/style.css', [] );
}
add_action( 'wp_enqueue_scripts', 'theme_enqueue_styles', 20 );

function avada_lang_setup() {
	$lang = get_stylesheet_directory() . '/languages';
	load_child_theme_textdomain( 'Avada', $lang );
}
add_action( 'after_setup_theme', 'avada_lang_setup' );

//Publicar o post do WordPress como um onebox no Discourse
function wpdc_custom_publish_format_html( $input, $post_id ) {
	$permalink = get_the_permalink( $post_id );
	ob_start();
	echo $permalink;
	$output = ob_get_clean();

	return $output;
}
add_filter( 'discourse_publish_format_html', 'wpdc_custom_publish_format_html', 10, 2 );

Ok, o problema pode estar conectado a scripts e/ou ajax no seu Wordpress. Por que você ativou o carregamento ajax? Você tem alguma preocupação em deixá-lo desativado?

Oi Angus,

Acho que estava habilitado quando instalei o plugin, se não, eu não o habilitei por um motivo específico. Acho estranho que tenha parado de funcionar sem um motivo claro (além de uma atualização do WordPress ou do Tema).

Vou mantê-lo desativado por enquanto.

A configuração está desativada por padrão. Se houver algum problema de javascript com seu tema ou site, isso pode causar problemas com o carregamento ajax.

Sim, acho que essa é a solução. Você só precisa usar o carregamento ajax de comentários se tiver um motivo específico para fazê-lo.

1 curtida

Olá @angus,

Notei algo hoje. Fui desconectado do WordPress e percebi que o link não está funcionando se eu estiver desconectado (mesmo com o Ajax desativado).

Quando faço login no WordPress e depois olho meu post no blog, o link realmente funciona.

Alguma ideia sobre o que pode causar isso?

Olá @Pieces, isso terá a ver com o seu site, não com este plugin. Parece que algo está impedindo que os campos personalizados de posts sejam carregados no seu WordPress em certas circunstâncias.

Você precisará depurar isso no lado do WordPress. Se você tiver um provedor de hospedagem ou um desenvolvedor, eu discutirei esse problema com eles. Se você fez alguma alteração recente no site, eu tentaria reverter a alteração e ver se isso resolve o problema.

Olá @angus

Qual seria o melhor processo para desconectar meu Wordpress do Discourse? É simplesmente desinstalar (excluir) o plugin no Wordpress (na seção de plugins do Wordpress) e remover a chave de API e o Webhook no Discourse?

Estou perdendo alguma coisa?

Obrigado, Pieces.

Tudo o que você precisa fazer é remover o plugin do Wordpress, mas sim, você também pode fazer essas outras coisas.

2 curtidas

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.