Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Allan Quatermain

RSS (Wordpress) + Flash

Recommended Posts

Boa noite a todos,

 

tenho uma situação que não consigo resolver.

Gerei o XML do Wordpress e preciso chamá-lo no Flash. Realizei através de um dynamic text, multiline. No entanto, ao realizar essa função, simplesmente aparece em branco sem aviso de erro. Inclusive utilizei externamente o cross+domain xml.

 

Gostaria de saber se algum membro aqui, sabia como acertar esse xml para chamar correto.

No caso, é preciso apenas do título do post, a imagem caso a tenha e seu conteúdo, não sendo necessário os comentários ou horário da postagem.

 

Desde já agradeço a todos.

 

Abraços!

Compartilhar este post


Link para o post
Compartilhar em outros sites

faltou postar o código que você esta usando, facilita a vida do pessoal aqui achar o erro

 

 

outra coisa, eu recomendo que você utilize o trace(), para acompanhar o que realmente esta vindo do XML

 

 

[]´s

Compartilhar este post


Link para o post
Compartilhar em outros sites

faltou postar o código que você esta usando, facilita a vida do pessoal aqui achar o erro

 

 

outra coisa, eu recomendo que você utilize o trace(), para acompanhar o que realmente esta vindo do XML

 

 

[]´s

 

 

Opa. Primeiro, obrigado por responder.

Realmente com o código fica mais fácil.

 

Coloco aqui 3 códigos, sendo que o primeiro puxa só títulos (funcionou para puxar do site de notícias da UOL, de acordo com um tutorial), um que puxa do site direto e um do arquivo .XML

 

Acredito que algumas orientações para puxar, tal como uma postagem com imagem, possa estar faltando ou sem localizar no próprio Wordpress. Logo, o código não dá erro, mas também não realiza a função.

 

Desde já agradeço a todos!

 

 

Títulos:

System.security.loadPolicyFile('crossdomain.xml');
System.useCodepage = true;

var rssText= TextField= _root.createTextField("campoTxt", root.getNextHighestDepth(),10, 50, 50, 200);

rssText._width = Stage.width;
rssText._height = Stage.height;
rssText.html = true;
rssText.wordWrap = true;
rssText.multiline = true;


var xml:XML = new XML();
xml.ignoreWhite = true;
xml.load("http://xxx.wordpress.com/feed/");
xml.onLoad = function(ok:Boolean){
if(ok){
//coloque aqui seu código pra ler xml
//Crio variaveis pra receber nós xml

//titulo blog
//var linkBlog:Stri[code]ng = xml.firstChild.childNodes[0].childNodes[2].childNodes;
//var tituloBlog:String = xml.firstChild.childNodes[0].childNodes[0].childNodes;

//conteudo 1
var link1:String = xml.firstChild.childNodes[0].childNodes[7].childNodes[1].childNodes;;
var titulo1:String = xml.firstChild.childNodes[0].childNodes[7].childNodes[0].childNodes;
var data1:String = xml.firstChild.childNodes[0].childNodes[7].childNodes[3].childNodes;

//conteudo 2
var link2:String = xml.firstChild.childNodes[0].childNodes[8].childNodes[1].childNodes;;
var titulo2:String = xml.firstChild.childNodes[0].childNodes[8].childNodes[0].childNodes;
var data2:String = xml.firstChild.childNodes[0].childNodes[8].childNodes[3].childNodes;

//conteudo 3
var link3:String = xml.firstChild.childNodes[0].childNodes[9].childNodes[1].childNodes;;
var titulo3:String = xml.firstChild.childNodes[0].childNodes[9].childNodes[0].childNodes;
var data3:String = xml.firstChild.childNodes[0].childNodes[9].childNodes[3].childNodes;


//mostra conteudo no campo de texto
campoTxt.htmlText = "<a href='" + linkBlog + "' target='_blank'><b>" + "</b></a><br><br>" +
"<a href='" + link1 + "' target='_blank'><b>" + titulo1 + "</b></a><br />" 
+
"<a href='" + link2 + "' target='_blank'><b>" + titulo2 + "</b></a><br />" 
+
"<a href='" + link3 + "' target='_blank'><b>" + titulo3 + "</b></a><br />";


}else{
trace("não carregou");
}
}[/code]


-------------------------------------- // ------------------------------------------

Conteúdo todo:
[code]
var rssXML:XML;
var rssLoader:URLLoader;
var rssTitles_arr:Array = new Array();
var rssLinks_arr:Array = new Array();
function importFeed():void {
rssLoader = new URLLoader();
rssLoader.addEventListener(Event.COMPLETE, loadRSS);
rssLoader.load(new URLRequest("http://xxx.wordpress.com/feed/"));
}
function loadRSS(e:Event):void {
rssXML = new XML(e.target.data);
trace(rssXML);
for (var i=0; i<4; i++) {
rssTitles_arr[i] = rssXML.channel.item[i].title;
rssLinks_arr[i] = rssXML.channel.item[i].link;
}

rssLoader.removeEventListener(Event.COMPLETE, loadRSS);
}
importFeed();[/code]



-------------------------------------- // ------------------------------------------


De um .XML (arquivo):

[code]
var rss:Array = new Array();

var xml:XML = new XML();

xml.ignoreWhite = true;

xml.load("xxx.xml");

xml.onLoad = function(ok){

if(ok){

var total = xml.firstChild.childNodes.length;

for(var i:Number = 0; i < total; i++){

rss[i] = xml.firstChild.childNodes[i].childNodes;
trace(rss[i]);
}
}

else {
trace("deu erro");
}
}

Compartilhar este post


Link para o post
Compartilhar em outros sites

alterando o 1º exemplo, que esta mais simples

 

executando de dentro do flash isso, ele trás o que nesse trace?

 

 

xml.onload = function(ok:Boolean){
if(ok){
 trace(xml.firstChild.childNodes[0].childNodes[7].childNodes[0].childNodes);
 trace('----------')
 trace(xml.firstChild.childNodes[0].childNodes[7].childNodes[0]);
 trace('----------')
 trace(xml.firstChild.childNodes[0].childNodes[7]);
 trace('----------')
 trace(xml.firstChild.childNodes[0]);
 trace('----------')
 trace(xml.firstChild);
 trace('----------')
 trace(xml);
 trace('----------')
}

com isso você saber que nó dele esta vindo errado, testa ai e fala o resultado

 

 

[]´s

Compartilhar este post


Link para o post
Compartilhar em outros sites

nesse cado o problema pode estar no endereço do rss, ele esta mesmo correto?

 

e só para confirmar, você esta acessando de dentro do flash?

 

 

[]´s

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.