Pergunta

Eu tenho um feed do meu perfil do Twitter no topo do meu site, mas eu me perguntava se existe uma maneira de filtrar minhas @ respostas e só mostrar as minhas atualizações de status?

Graças

Foi útil?

Solução

Se você estiver usando o código web Twitter feed padrão para Blogger e sites semelhantes, este bocado do Javascript faz o truque. Ele fica entre o feed do Twitter e do retorno de chamada e tiras respostas fora da resposta do servidor.

Para um crachá blog, as extremidades de código web padrão do Twitter com duas marcas <script>. O primeiro fornece a função que exibe seus tweets. As segundas consultas o Twitter para os tweets para mostrar.

Adicione esta roteiro ao seu código distintivo antes da consulta do twitter. Ele fornece uma nova função chamada filterCallback que tira @ respostas a partir da resposta Twitter.

<script type="text/javascript">
  function filterCallback( twitter_json ) {
    var result = [];
    for(var index in twitter_json) {
      if(twitter_json[index].in_reply_to_user_id == null) {
        result[result.length] = twitter_json[index];
      }
      if( result.length==5 ) break; // Edit this to change the maximum tweets shown
    }
    twitterCallback2(result); // Pass tweets onto the original callback. Don't change it!
  }
  </script>

A consulta Twitter em si tem um parâmetro que especifica qual função a ser chamada quando a resposta vem de volta. No caso do blogger, essa função é chamado de 'twitterCallback2' - você pode procurá-lo no código web (olhar para callback=twitterCallback2). Para usar o novo filtro que você precisa para substituir o twittercallback2 texto com filterCallback. O filtro é codificado para twitterCallback2 chamada em seguida, quando ele é feito.

Note que, como isso vai reduzir o número de tweets exibidos se alguns dos repsonses de Twitter são respostas, então você tem que aumentar o parâmetro de contagem na chamada para permitir isso. A nova função, em seguida, limita o número de respostas apresentadas para cinco -. Editar o código para mudança que

Aqui está o meu blog sobre isso: Filtro Respostas fora do Twitter alimentação

Outras dicas

Se você quiser usar os novos widgets do Twitter, basta adicionar este pedaço de código dentro do ambiente features: de código-fonte do widget:

filters: {
  negatives: /\B@\w{1,20}(\s+|$)/
},

Eu levei um presente a partir do site de Dustin Diaz em http://www.dustindiaz.com . Dustin Diaz é o criador do widget Twitter.

Alterar a chamada setuser para

setUser('name&exclude_replies=true');

Esta é uma espécie de truque, mas ele faz o truque

Depende do que você está usando para exibir as entradas. Se você estiver usando Widget do Twitter, então provavelmente não. Se você estiver usando alguma outra forma programática de exibir os itens, você precisará fornecer mais detalhes sobre o que você está fazendo (linguagem, código de exemplo, etc) e podemos provavelmente ajuda com a filtragem.

Você provavelmente vai querer usar uma expressão regular. Algo ao longo das linhas de:

[a-zA-Z0-9][a-zA-Z0-9]*: @[a-zA-Z0-9][a-zA-Z0-9]*.*

Dependendo de como estiver a formatar seu feed do Twitter em sua página. Este regex assume que você está formatado algo como:

username: @username msg txt

Se ele corresponder, não exibi-lo. Se não corresponder, em seguida, exibi-lo. :) Se você tem marcas de lá junto com o texto, ajustar o regex apropriadamente.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top