Plugin Wp-discourse-shortcodes

Acho que resolvi isso — [discourse_latest] não é um shortcode válido em si mesmo, pensei ter visto em algum lugar. Troquei por [discourse_topics source=“latest”] e funcionou.

Sorriso envergonhado
Ray

PS Como posso alterar a formatação da data nos tópicos mais recentes que aparecem no shortcode, @simon? Está aparecendo como 2020-10-20 e eu preferiria algo como Out-20 ou similar.

1 curtida

Tenho quase certeza de que o plugin de shortcodes usa o formato de data e hora definido na aba de opções do WP Discourse Commenting. Clique no link na descrição dessa configuração para ver as opções disponíveis para formatar datas.

Isso resolveu, obrigado!

Ray

1 curtida

Poderia, por favor, adicionar os nomes de usuário como títulos das avatares por padrão ou como uma opção de shortcode, e talvez outra opção para remover o nome de usuário (display_usernames = “false”?). Enquanto isso, se alguém precisar disso, vá até wp-discourse-shortcodes-master/lib/discourse-topic-formatter.php e substitua

$avatar_image = '<img class="wpds-latest-avatar" src="' . esc_url_raw( $poster_avatar_url ) . '">';

por

$avatar_image = '<img class="wpds-latest-avatar" title="'. esc_html( $poster_username ) . '" src="' . esc_url_raw( $poster_avatar_url ) . '">';

Ótimo plugin. Obrigado!

Além disso, o link para categorias (mais informações aqui) como uma opção dentro do seu shortcode também seria útil.

Este plugin ainda está sendo mantido? :smiley:

Sim, nós (Communiteq) estamos mantendo-o agora.

2 curtidas

Parece que não está ‘atualizando’ as postagens mais recentes do Discourse.

Devo estar fazendo algo errado,

[discourse_topics source=“latest”] este é o shortcode que estou usando.

Ele recuperou três tópicos do Discourse, mas desde então adicionei mais tópicos para ver se seriam puxados para o meu site WordPress.

Não foram.

Tentei o evento Ajax e ainda parece não estar trazendo as novas postagens :sweat:

É possível obter os tópicos apenas de uma determinada categoria ou subcategoria?

Obrigado por gerenciar este plugin. Preciso que ele exiba a atividade do fórum no site principal do WordPress.

Tenho muitos tópicos na instância do Discourse, mas o shortcode [discourse_topics] retorna em branco, como se não houvesse dados - Screenshot - b9160f714e42b2677b01bcf00c041634 - Gyazo

e gera o seguinte erro no front-end: Aviso: Argumento inválido fornecido para foreach() em /home/customer/www/web.com/public_html/wp-content/plugins/wp-discourse-shortcodes-master/lib/discourse-topic-formatter.php na linha 94

Se ajudar alguém, o feed RSS da minha comunidade funciona perfeitamente e lista todos os tópicos. O que pode estar faltando aqui? Agradecimento pela ajuda :pray:

Edição e atualização: Parece que a variável de tópicos não está sendo preenchida no código.

Linha 94: foreach ( $topics as $topic ) {
.....
}

//Definição da variável de tópicos
if ( $use_plugin_formatting ) {
			$topics            = $discourse_topics['topic_list']['topics'];
}

Descobri. A caixa de seleção para mostrar postagens privadas não estava marcada. Além disso, o erro pode ser resolvido adicionando uma condição para o valor nulo da variável $topics. Fiz isso e funcionou perfeitamente.

1 curtida

Se o foreach do PHP não reclamasse de arrays vazios, minha vida seria muito melhor.
Vamos adicionar essa verificação na próxima versão.

1 curtida

Qual é a opção para atualizar o Discourse com a nova foto de perfil do usuário no WordPress?

Usar um webhook para sincronizar os dados do usuário com o Discourse. - que criei e funciona entre os dois sites, mas não atualiza a foto de perfil dos usuários no Discourse?

@RGJ
Olá Richard,
Estou usando a versão mais recente deste plugin, mas infelizmente ele não funciona.
Tenho o mesmo problema que Nick:
Parece não ‘atualizar’ os posts mais recentes do Discourse.
Devo estar fazendo algo errado,
[discourse_topics source=“latest”] este é o shortcode que estou usando.
Ele puxou três tópicos do Discourse, mas desde então adicionei mais tópicos para ver se eles aparecem no meu site WordPress.
Eles não apareceram.
Tentei o evento Ajax e ainda assim não parece puxar novos posts :sweat:

Você poderia me ajudar aqui, por favor?

Isso finalmente está no topo da minha lista, então estarei trabalhando neste plugin amanhã, corrigindo alguns bugs e respondendo às suas perguntas. Desculpe pela longa demora.

3 curtidas

Obrigado, muito apreciado.

Por favor, observe que meu problema foi corrigido limpando o cache de objetos do meu site principal.

2 curtidas

Você configurou a configuração “Habilitar Discourse Webhook”?

Eu testei completamente o plugin, corrigi alguns bugs, dois deles relacionados à falha na atualização do cache da saída do shortcode, atualizei o readme e enviei uma nova versão.

Ainda vejo um grande problema onde os shortcodes [discourse_topics] com categorias diferentes não funcionam corretamente. Isso exigirá bastante trabalho para ser corrigido. Abordarei isso logo após minhas próximas férias.

4 curtidas

Eu tenho apenas um shortcode em uso nesta instância, então não tenho certeza se devo ter problemas. Eu gostaria de mostrar tópicos privados, mas apenas de certas categorias (que são coletadas sob uma única categoria pai). Nem o ID da categoria pai única (por exemplo, [discourse_topics category="5" ... ]) nem cada um dos IDs das subcategorias (por exemplo, [discourse_topics category="6,7,8,9,17" ... ]) parecem limitar os resultados a essas categorias (tópicos privados adicionais são mostrados que não deveriam ser). Gostaria de saber se este é o comportamento esperado atualmente (que vocês abordarão)?

Vários IDs de categoria não são suportados.

Esse realmente não é o comportamento esperado.

Uma correção rápida seria desativar a opção Exibir Tópicos Privados na aba de configurações. Isso não resolverá o problema da(s) categoria(s) incorreta(s) sendo selecionada(s), mas impedirá que os tópicos privados apareçam no WordPress.

Você poderia verificar seus logs no lado do Discourse e procurar pela chamada de API que está sendo feita? A chamada de API será acionada quando você editar e alterar a página no lado do WordPress.