Como limitar o número de visitas à um tópico? Hitskin_logo Hitskin.com

Isto é uma pré-visualização de um tema em Hitskin.com
Instalar o temaVoltar para a ficha do tema

Como limitar o número de visitas à um tópico?

4 participantes

Ir para baixo

Tópico resolvido Como limitar o número de visitas à um tópico?

Mensagem por Star Butterfly 25.10.15 23:26

Detalhes da questão


Endereço do fórum: http://debates-so.forumeiros.com/
Versão do fórum: PhpBB3

Descrição


Eu quero limitar o número de visistas para depois obrigar a pessoa a se inscrever no fórum.

Não quero bloquear nada que possa ser visto por motores de busca, apenas o número de visitas que o convidado pode fazer.


Última edição por Debates SO em 26.10.15 2:34, editado 1 vez(es)
Star Butterfly
Star Butterfly
**

Membro desde : 24/10/2015
Mensagens : 70
Pontos : 121

http://forumvenda.forumeiros.com/

Ir para o topo Ir para baixo

Tópico resolvido Re: Como limitar o número de visitas à um tópico?

Mensagem por Fraise 25.10.15 23:28

Olá!

Creio que isso não seja possível. Mas podemos fazer uma outra forma: Quando o usuário estiver na página inicial do fórum, ser redireccionado para a página de registro, o que acha?

Até mais.
Fraise
Fraise
Fraise
Ajudeiro
Ajudeiro

Membro desde : 26/06/2015
Mensagens : 6566
Pontos : 8050

https://ajuda.forumeiros.com/ https://twitter.com/@FraiseFdF

Ir para o topo Ir para baixo

Tópico resolvido Re: Como limitar o número de visitas à um tópico?

Mensagem por Star Butterfly 25.10.15 23:31

O problema são os motores de busca, não sei se eles são a prova de javascript ou se eles punem por redirecionamento. Além disso, meu fórum ainda tem uma proposta de pé.

A de que convidados também podem responder tópicos.
Star Butterfly
Star Butterfly
**

Membro desde : 24/10/2015
Mensagens : 70
Pontos : 121

http://forumvenda.forumeiros.com/

Ir para o topo Ir para baixo

Tópico resolvido Re: Como limitar o número de visitas à um tópico?

Mensagem por Fraise 25.10.15 23:40

O problema são os motores de busca, não sei se eles são a prova de javascript ou se eles punem por redirecionamento.
Não entendi senhor, como assim punir? Você é livre de utilizar o código de redirecionamento.

Até mais.
Fraise
Fraise
Ajudeiro
Ajudeiro

Membro desde : 26/06/2015
Mensagens : 6566
Pontos : 8050

https://ajuda.forumeiros.com/ https://twitter.com/@FraiseFdF

Ir para o topo Ir para baixo

Tópico resolvido Re: Como limitar o número de visitas à um tópico?

Mensagem por Star Butterfly 25.10.15 23:48

O problema é que não quero redireccionar motores de busca.
Star Butterfly
Star Butterfly
**

Membro desde : 24/10/2015
Mensagens : 70
Pontos : 121

http://forumvenda.forumeiros.com/

Ir para o topo Ir para baixo

Tópico resolvido Re: Como limitar o número de visitas à um tópico?

Mensagem por Ace 26.10.15 1:37

Olá,

Não há como diferenciar os Convidados dos Motores de busca. Se o que o Fraise sugeriu for feito, na prática, seu SEO será praticamente inexistente. Além disso, cria obviamente uma experiência ruim. Se você bloqueia um convidado um número X de vezes, os motores de busca também serão bloqueados. Como o Google funciona como um diretório, ele não conseguirá rastrear os links da página principal e, assim, indexar conteúdo relevante.

Você pode, porém, limitar a visualização de determinados fóruns a convidados pelo próprio painel de controle - categorias estas que também não serão indexadas pelos motores de busca.

Att.
Ace
Ace
Membro Entusiasta

Membro desde : 06/07/2011
Mensagens : 8881
Pontos : 11608

https://ajuda.forumeiros.com

Ir para o topo Ir para baixo

Tópico resolvido Re: Como limitar o número de visitas à um tópico?

Mensagem por Shek 26.10.15 1:59

Boa noite.

Tente com este código:
Código:
    //############ LOCAL DITÁVEL ############
    var maxNumTopicsReadAsGuest = 2;
    var mensajeHTML = "<div><h3>AVISO</h3>Atenção<br><br>Parece que o tempo de visualização de página para visitantes já chegou ao limite. <br><br><a href='/register'>Regístra-se grátis</a> para continuar vendo conteúdos especiais e exclusivos do fórum.</div>";
    //############ EDITÁVEL ########

    var varname = "FA_TOPICREADGUEST";
    $(function () {
        if (!fa_estaConectado_()) {
            if (fa_getNumTopicsReadAsGuest() >= maxNumTopicsReadAsGuest) {
                $("td.bodyline>div#page-body>div#content-container, div#main-content").html(mensajeHTML);
            } else {
                fa_incrementTopicReadAsGuest();
            }
        }
    });

    function fa_incrementTopicReadAsGuest() {
        if (typeof (Storage) !== "undefined") {
            if (localStorage.getItem("'" + varname + "'")) {
                var numreads = localStorage["'" + varname + "'"];
                numreads = (parseInt(numreads) + 1).toString();
                localStorage["'" + varname + "'"] = numreads;
            } else {
                localStorage["'" + varname + "'"] = "1";
            }
        } else {
            if (my_getcookie(varname)) {
                var numreads = my_getcookie(varname);
                numreads = (parseInt(numreads) + 1).toString();
                my_setcookie(varname, numreads, 1, 0);
            } else {
                my_setcookie(varname, "1", 1, 0);
            }
        }
    }

    function fa_getNumTopicsReadAsGuest() {
        if (typeof (Storage) !== "undefined") {
            return parseInt(localStorage["'" + varname + "'"] == "undefined" ? 0 : localStorage["'" + varname + "'"]);
        } else {
            return parseInt(my_getcookie(varname) == "undefined" ? 0 : my_getcookie(varname) == "undefined");
        }
    }

    function fa_estaConectado_() {
        if (typeof _userdata == "undefined") {
            if ($("a#logout.mainmenu").length) {
                return true;
            } else {
                return false;
            }
        } else {
            return _userdata["session_logged_in"] == 1;
        }
    }
Aplique-o em Gestão dos códigos Javascript em Módulos. Crie um novo script e permita-o para Todas as páginas.
//############ LOCAL DITÁVEL ############
var maxNumTopicsReadAsGuest = 0;
var mensajeHTML = "MENSAGEM_QUE_APARECE_QUANDO_ATINGIR_O_LIMITE";
//############ EDITÁVEL ########
No local em Vermelho, marque a quantidade de mensagens. Depois, basta substituir o texto padrão "MENSAGEM_QUE_APARECE_QUANDO_ATINGIR_O_LIMITE" pelo seu texto... Muito feliz

Eu fiz o teste, e está funcionando aos visitantes sem influenciar nos motores de busca. Contudo, se o usuário bloquear os scripts no navegador, o código não funcionará para ele.

Até mais!
Shek King
Shek
Shek
Principal Contribuidor
Principal Contribuidor

Membro desde : 11/04/2009
Mensagens : 19006
Pontos : 22969

https://shiftactive.blogspot.com/ https://www.facebook.com/ShiftActif https://twitter.com/ShiftActif

Ir para o topo Ir para baixo

Tópico resolvido Re: Como limitar o número de visitas à um tópico?

Mensagem por Star Butterfly 26.10.15 2:03

Aplicarei somente nos tópicos, pra não impedir os usuários de se registrarem.
Star Butterfly
Star Butterfly
**

Membro desde : 24/10/2015
Mensagens : 70
Pontos : 121

http://forumvenda.forumeiros.com/

Ir para o topo Ir para baixo

Tópico resolvido Re: Como limitar o número de visitas à um tópico?

Mensagem por Shek 26.10.15 2:20

Como limitar o número de visitas à um tópico? Symbol10 Questão marcada como Resolvida ou o Autor solicitou que ela fosse arquivada.

Tópico marcado como Resolvido e movido para "Questões resolvidas".
Shek
Shek
Principal Contribuidor
Principal Contribuidor

Membro desde : 11/04/2009
Mensagens : 19006
Pontos : 22969

https://shiftactive.blogspot.com/ https://www.facebook.com/ShiftActif https://twitter.com/ShiftActif

Ir para o topo Ir para baixo

Ir para o topo

- Tópicos semelhantes

 
Permissões neste sub-fórum
Não podes responder a tópicos