Como implementar a função de login para visualizar conteúdo, a fim de atrair melhor os usuários a se registrarem

Conforme o título, pesquisei no fórum e só encontrei a segurança para alterar categorias, mas isso só tornará todas as categorias invisíveis, o que não é a funcionalidade que preciso.

Meu cenário de uso é: usuários não registrados podem ver parte do conteúdo das postagens, e o conteúdo oculto só pode ser visualizado após o login. Ou, para usuários registrados, é necessário responder à postagem para visualizá-la.

Este é um meio de atrair registros e também de evitar a maioria dos “parasitas”.

Semelhante a

1 curtida

Como alcançar a função de login para visualizar conteúdo, a fim de atrair melhor os usuários para se registrarem

Conforme mencionado na pergunta, pesquisei no fórum e encontrei apenas a segurança de alterar categorias, mas isso tornará todas as categorias invisíveis, o que não é a função que preciso.

Meu cenário de uso é: usuários não registrados podem visualizar uma parte do conteúdo da postagem, enquanto o conteúdo oculto só pode ser visualizado fazendo login. Alternativamente, para se registrar como usuário, é necessário responder à postagem para visualizá-la.

Este é um meio de atrair registros e também de evitar que a maioria das partes interessadas entre em contato.

Semelhante a:

1 curtida

O que você está pedindo é semelhante ao que muitos jornais fazem? Por exemplo, como usuário anônimo, posso ver a página inicial e as páginas de categoria do New York Times:

Se eu tentar visitar um artigo, verei algo assim:

O motivo pelo qual estou perguntando dessa forma é porque acho que a ideia foi mencionada neste fórum algumas vezes. Eu gosto da ideia. Pode ser útil mostrar que esta é uma maneira comum de publicações baseadas em assinatura fazerem com que os usuários assinem. A ideia pode ser útil para alguns sites Discourse - especialmente sites que estão tentando atrair assinantes pagos.

2 curtidas

Este componente de tema faz o que você quer alcançar?

3 curtidas

Sim, simon, porque meu site terá muitos links para download de software, mas não quero que usuários não registrados os vejam e cliquem neles. Obrigado pela sua resposta!

Eu realmente gostaria que fosse como o modo spoiler. —> links de download Quando um usuário não registrado clicar, uma janela pop-up de registro ou uma janela pop-up de pagamento aparecerá, o que será muito elegante.

“Impossível visualizar o conteúdo sem responder” – Usuários ativos compartilham desinteressadamente seu conhecimento e desejam mais respostas para suas postagens. Isso também é o que os proprietários do fórum desejam. Acho que esse recurso é benéfico para o desenvolvimento do fórum.

Vou tentar usar este plugin. Obrigado, lilly!

2 curtidas

De nada, espero que funcione para você. Apenas observe que é um componente de tema e não um plugin, então você pode instalá-lo a partir da interface do administrador.

1 curtida

Eu acho que o componente de tema Gated Topics in Category está fazendo o mesmo. :slightly_smiling_face:

4 curtidas

Isso é fácil de resolver. Existe um atributo no modelo de tópico que mostra se você já respondeu a ele, chamado posted. Eu escrevi um componente anteriormente (Composer tip under specific tag topics) que determina se você já respondeu. Se você tiver base de código, pode dar uma olhada no que escrevi. Combinado com o método decorateCookedElement da API, isso pode ser implementado.

Tenho preguiça de escrever o código específico. Tenho estado muito ocupado recentemente.

<script type="text/discourse-plugin" version="1.6.0">

const user = api.getCurrentUser();

const I18n = require("I18n");

const pid = "post_hider"

const tl4_css = `
.d-editor-preview [data-theme-hide] {
  background: var(--tertiary);
  color: var(--secondary);
  border-top: 2px solid var(--secondary);
  position: sticky;
  top: 0;
  height: 30px;
  display: flex;
  align-items: center;
  justify-content: center;
}
.d-editor-preview [data-theme-hide]::before {
  content: "Este post foi ocultado";
}
`

api.addPostClassesCallback((attrs) => {
if (attrs?.cooked?.includes(`div data-theme-hide="true"`)) {
  return ["hiddened"]; // Adicionado para CSS, como escrever o CSS depende de você
} else {
  return [];
}
});

if (!user) {
    api.decorateCookedElement((el, helper) => {
        function hide_post() {
            setTimeout(() => {
                try {
                    // document.querySelector(`[data-post-id="${helper?.widget?.attrs?.id}"]`)?.parentElement?.remove();
                } catch (err) {
                    console.log(el);
                    console.log(err);
                }
            }, 1000);
        }
        if (el?.querySelector(`[data-theme-hide="true"]`)) {
            el.innerHTML = `<p>Este post foi ocultado pela comunidade</p>`; // Modifique esta linha
            hide_post();
        }
    }, {
        id: pid,
        afterAdopt: true,
        onlyStream: true,
    });
}


</script>

Lembrei que tenho um código aqui que usei para ocultar o post inteiro de usuários não logados. Você pode usá-lo como referência.

4 curtidas

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