2 Scripts combineren?

  • Onderwerp starter Onderwerp starter Mvnl
  • Startdatum Startdatum
Status
Niet open voor verdere reacties.

Mvnl

Gebruiker
Lid geworden
23 sep 2006
Berichten
100
Ik ben bezig om een related posts tooltje aan mijn weblog toe te voegen, en nou schommel ik eigenlijk een beetje tussen 2 scripts waarvan 1 hele goede resultaten geeft maar slecht in tekst links, en de ander er mooi uitziet met thumbnails, maar dan weer posts selecteert waarvan ik denk 'uuuhm.. ja..'.

Is er een (haalbare) manier om de 2 scripts te combineren? Ik ben zelf totaal niet thuis in Java, ben er ook niet specifiek op uit om anderen mijn werk te laten doen, maar wellicht is er iemand hier waarvoor het een eitje is, die het zelfs leuk vindt, of mij gewoon kan vertellen dat dat niet realistisch is.

NRelate met thumbs
In-Link zonder thumbs

Als iemand me ook maar enigszins in de juiste richting kan helpen, dan alvast heel erg bedankt!
 
Je eerste link naar het script heeft een '.min.js' extensie. Als je dat '.min' weghaalt wordt de code opeens een stuk leesbaarder ;)
http://api.nrelate.com/rcw_t/0.02.0/loader.js

Het script van de tweede link gebruikt een library (JQuery geloof ik). Daar kan ik helaas niet mee overweg.

Ik denk overigens dat het gemakkelijker is te proberen de representatie van resultaten te kopiëeren dan te proberen de functionaliteit van het andere script te verbeteren.

Misschien heb je een voorbeeld van beide scripts in werking. Dat zou een beter idee geven van waar je naartoe wilt ;)
 
Kopieren? Als in handmatig toevoegen? Dat haalt het hele idee enigszins onderuit..
Ik heb op dit moment de tekst only versie in gebruik op popsessed.tumblr.com, daar ben ik overigens ook heel tevreden over, dus als ik een manier zou vinden om die op de homepage te draaien zou ik ook erg blij zijn (hij werkt momenteel alleen op post pagina's, op de homepage verschijnen alle resultaten onder 1 post als ik m daar plaats).

De andere versie werkt ongeveer zo: http://www.linkwithin.com/learn
Stuk fraaier, alleen, zoals gezegd, slaan de resultaten vaker nergens op.. en dan kun je nog zo'n mooie plaatjes hebben, maar dan voegt t weinig toe.
 
Ik denk niet dat er een andere manier is om ze te combineren dan echt in de code te duiken. Maar idd, goede resultaten gaan voor :) Een bruikbaar script 'that has it all' is altijd moeilijk te vinden.

Wat betreft de related links op de homepage; 't hangt er een beetje vanaf hoe je website in elkaar zit. Kun je zelf de broncode aanpassen? Dan is het natuurlijk een kwestie van kijken hoe het script wordt toegepast op de post-pagina, en dat herhalen op corresponderende plek op de homepage.
 
Ik denk niet dat er een andere manier is om ze te combineren dan echt in de code te duiken. Maar idd, goede resultaten gaan voor :) Een bruikbaar script 'that has it all' is altijd moeilijk te vinden.

Wat betreft de related links op de homepage; 't hangt er een beetje vanaf hoe je website in elkaar zit. Kun je zelf de broncode aanpassen? Dan is het natuurlijk een kwestie van kijken hoe het script wordt toegepast op de post-pagina, en dat herhalen op corresponderende plek op de homepage.


Ik kan alles aanpassen, maar als ik zie hoe t script nu handelt vermoed ik dat ik meer naar t script moet kijken.. die lijkt namelijk de gehele pagina te lezen ipv de post waarin het zich bevindt.
 
Ik zie in je post-pagina een script-tag staan die related links laadt. Bijvoorbeeld:
HTML:
<script type="text/javascript" src="http://static.tumblr.com/ogrv0c6/H4jlmzuo5/tumblr-in-link.1.0.js?num=4&len=60&title=Some Related Posts&tags=The Saturdays,Mollie,Una,Frankie,Rochelle,Vanessa,Notorious,Not That Kinda Girl,B-sides,Girl Groups,Audio,">
Zoals je ziet worden er al tags meegegeven. Deze tags worden in het script op één of andere manier gebruikt (maar vraag me niet hoe).

Direct onder het script komt het element waarin (later, na het daadwerkelijk uitvoeren van het script) related links komen te staan:
[JS]document.write(
'<div id="tumblrinlink">' +
'<div id="inlink-loading">Loading Tumblr In Links...</div>' +
'<div id="inlink-title"></div>'+
'<ul id="inlink-list"></ul>' +
'</div>'
);[/JS]
De functie getList verwerkt de gevonden resultaten. Deze resultaten worden toegevoegd aan de elementen met attribute id="inlink-...". Dat moet sowieso veranderd worden als je zo'n script op meerdere plaatsen op één pagina gaat zetten. De getList-functie moet niet zomaar toevoegen aan een element met een bepaald 'id', maar speciefiek aan het element dat in dat script is toegevoegd.

Eh.. Je zei dat je niet thuis was in Javascript. Is wat ik zeg snapbaar? :P
 
Wat je zegt is volkomen te volgen. Of ik er wat mee kan is een tweede :P
 
Haha, gelukkig :P Ik heb hier het script ietsjes aangepast zodat het een nummertje toevoegt aan het id, en dat nummertje ook gebruikt bij het uitzoeken van het element waar de resultaten in komen. Zou je eens kunnen testen op de homepage ;)

[JS](function() {
window.N = window.N == undefined ? 0 : window.N + 1;
var config = {
n: window.N
};
var titles = [];
var links = [];
var images = [];
var items = [];
var types = [];
var $j = jQuery.noConflict();

var scripts = document.getElementsByTagName('script');
var this_script = scripts[scripts.length - 1];
var params = this_script.src.replace(/^[^\?]+\??/,'').split('&');

var url_base = ((typeof(config.url) == 'undefined') ? ('http://' + document.domain + '/') : ('http://' + config.url + '/'));

for(var i=0; i<params.length; i++) {
var tmp = params.split("=");
config[tmp[0]] = unescape(tmp[1]);
}

if(typeof(config.tags)=='undefined'){
error(0);
return;
}
if(typeof(config.num)=='undefined'){
config.num=8;
}
if(typeof(config.len)=='undefined'){
config.len=60;
}
if(typeof(config.title)=='undefined'){
config.title='Related Posts:';
}
if(typeof(config.type)=='undefined'){
config.type='';
}

switch(config.css) {
case ('simple'):
document.write('<link rel="stylesheet" type="text/css" ' +
'href="http://tumblr-in-link.googlecode.com/svn/trunk/css/simple.css" media="screen" />');
break;
case ('complete'):
document.write('<link rel="stylesheet" type="text/css" ' +
'href="http://tumblr-in-link.googlecode.com/svn/trunk/css/complete.css" media="screen" />');
break;
case ('light'):
document.write('<link rel="stylesheet" type="text/css" ' +
'href="http://tumblr-in-link.googlecode.com/svn/trunk/css/light.css" media="screen" />');
break;
case ('dark'):
document.write('<link rel="stylesheet" type="text/css" ' +
'href="http://tumblr-in-link.googlecode.com/svn/trunk/css/dark.css" media="screen" />');
break;
}

document.write(
'<div id="tumblrinlink'+window.N+'">' +
'<div id="inlink-loading'+window.N+'">Loading Tumblr In Links...</div>' +
'<div id="inlink-title'+window.N+'"></div>'+
'<ul id="inlink-list'+window.N+'"></ul>' +
'</div>'
);

var tags = config.tags.slice(0,-1).split(',');

$j(document).ready(function() {
function getRelated() {
var req;
for(var i=0; i<tags.length; i++){
req=$j.getJSON(url_base+'api/read/json?callback=?&filter=text&num='+config.num+'&start=0&type='+config.type+'&tagged='+escape(tags), function(data) {
$j(data.posts).each(function(i, post) {
var text='';
if(post.type=='regular') text+=post['regular-title'];
else if(post.type=='link') text+=post['link-text'];
else if(post.type=='quote') text+=post['quote-text'];
else if(post.type=='photo') text+=post['photo-caption'];
else if(post.type=='conversation') text+=post['conversation-title'];
else if(post.type=='video') text+=post['video-caption'];
else if(post.type=='audio') text+=post['audio-caption'];
else if(post.type=='answer') text+=post['question'];
if(text.length>config.len){
text=text.slice(0,config.len);
text+='...';
}
var image ='';
if(post.type=='photo') image+=post['photo-url-100'];
else if(post.type=='link') image+=['link-text'];
else if(post.type=='quote') image+=['quote-text'];
else if(post.type=='photo') image+=['photo-caption'];
else if(post.type=='conversation') image+=['conversation-title'];
else if(post.type=='video') image+=['video-caption'];
else if(post.type=='audio') image+=['audio-caption'];
else if(post.type=='answer') image+=['question'];
titles.push(text);
links.push(post['url-with-slug']);
images.push(image);
types.push(post['type'])
});

}).complete(getList);
}

}
function getList(){
for(var i=0; i<titles.length; i++){
var regex = new RegExp('('+links+')');
var html = $j("#inlink-list" + config.n).html();

if(links!=document.location&&!html.match(regex)){
if(config.num--<=0) return;

var item='<li class="inlink-item" id="'+types+'"><a class="inlink-link" href="'+links+'" title="'+titles+'"><img src="'+images+'" alt="'+titles+'"><p>'+titles+'</p></a></li>';
$j("#inlink-list" + config.n).append(item);
}
}
$j("#inlink-title" + config.n).html('<h2>'+config.title+'</h2>');
$j("#inlink-loading" + config.n).html('');
}
getRelated();

});

function getError(e){
var msg="error: ";
switch(e){
case 0:
msg+='no tags defined';
break;
case 1:
msg+='tumblr API problem';
break;
}
$j("#inlink-loading").html(msg);
}
})();[/JS]
 
Laatst bewerkt:
Hij doet t nu inderdaad! 't enige wat nu de mist ingaat is dat ie bij elk bericht ook het bericht zelfs als suggestie geeft?
 
Ja, ik zie het. Dat ligt volgens mij aan de achterliggende werking die ik niet snap :P Een kleine workaround zou zijn aan te geven of je script op de homepage draait of niet:

Probeer deze eens aan de roepen met 'homepage=true' als extra paremeter:
HTML:
<script type="text/javascript" src="http://static.tumblr.com/ogrv0c6/H4jlmzuo5/tumblr-in-link.1.0.js?homepage=true&num=4&andereParameters">

De resultaten op de homepage lijken nu wat instabiel, maar ik ga ervanuit dat dat komt omdat je druk aan het editen bent?

[JS](function() {
window.N = window.N == undefined ? 0 : window.N + 1;
var config = {
n: window.N
};
var titles = [];
var links = [];
var images = [];
var types = [];
var $j = jQuery.noConflict();

var scripts = document.getElementsByTagName('script');
var this_script = scripts[scripts.length - 1];
var params = this_script.src.replace(/^[^\?]+\??/,'').split('&');

var url_base = ((typeof(config.url) == 'undefined') ? ('http://' + document.domain + '/') : ('http://' + config.url + '/'));

for(var i=0; i<params.length; i++) {
var tmp = params.split("=");
config[tmp[0]] = unescape(tmp[1]);
}

if(typeof(config.tags)=='undefined'){
error(0);
return;
}
if(typeof(config.num)=='undefined'){
config.num=8;
}
if(typeof(config.len)=='undefined'){
config.len=60;
}
if(typeof(config.title)=='undefined'){
config.title='Related Posts:';
}
if(typeof(config.type)=='undefined'){
config.type='';
}
config.homepage = config.homepage == "false" ? false : new Boolean(config.homepage);

switch(config.css) {
case ('simple'):
document.write('<link rel="stylesheet" type="text/css" ' +
'href="http://tumblr-in-link.googlecode.com/svn/trunk/css/simple.css" media="screen" />');
break;
case ('complete'):
document.write('<link rel="stylesheet" type="text/css" ' +
'href="http://tumblr-in-link.googlecode.com/svn/trunk/css/complete.css" media="screen" />');
break;
case ('light'):
document.write('<link rel="stylesheet" type="text/css" ' +
'href="http://tumblr-in-link.googlecode.com/svn/trunk/css/light.css" media="screen" />');
break;
case ('dark'):
document.write('<link rel="stylesheet" type="text/css" ' +
'href="http://tumblr-in-link.googlecode.com/svn/trunk/css/dark.css" media="screen" />');
break;
}

document.write(
'<div id="tumblrinlink'+window.N+'">' +
'<div id="inlink-loading'+window.N+'">Loading Tumblr In Links...</div>' +
'<div id="inlink-title'+window.N+'"></div>'+
'<ul id="inlink-list'+window.N+'"></ul>' +
'</div>'
);

var tags = config.tags.slice(0,-1).split(',');

$j(document).ready(function() {
function getRelated() {
for(var i=0; i<tags.length; i++){
$j.getJSON(url_base+'api/read/json?callback=?&filter=text&num='+config.num+'&start=0&type='+config.type+'&tagged='+escape(tags), function(data) {
$j(data.posts).each(function(i, post) {
var text='';
if(post.type=='regular') text+=post['regular-title'];
else if(post.type=='link') text+=post['link-text'];
else if(post.type=='quote') text+=post['quote-text'];
else if(post.type=='photo') text+=post['photo-caption'];
else if(post.type=='conversation') text+=post['conversation-title'];
else if(post.type=='video') text+=post['video-caption'];
else if(post.type=='audio') text+=post['audio-caption'];
else if(post.type=='answer') text+=post['question'];
if(text.length>config.len){
text=text.slice(0,config.len);
text+='...';
}
var image ='';
if(post.type=='photo') image+=post['photo-url-100'];
else if(post.type=='link') image+=['link-text'];
else if(post.type=='quote') image+=['quote-text'];
else if(post.type=='photo') image+=['photo-caption'];
else if(post.type=='conversation') image+=['conversation-title'];
else if(post.type=='video') image+=['video-caption'];
else if(post.type=='audio') image+=['audio-caption'];
else if(post.type=='answer') image+=['question'];
titles.push(text);
links.push(post['url-with-slug']);
images.push(image);
types.push(post['type'])
});

}).complete(getList);
}

}
function getList(){
for(var i = config.homepage ? 0 : 1; i<titles.length; i++){
var regex = new RegExp('('+links+')');
var html = $j("#inlink-list" + config.n).html();

if(links!=document.location&&!html.match(regex)){
if(config.num--<=0) return;

var item='<li class="inlink-item" id="'+types+'"><a class="inlink-link" href="'+links+'" title="'+titles+'"><img src="'+images+'" alt="'+titles+'"><p>'+titles+'</p></a></li>';
$j("#inlink-list" + config.n).append(item);
}
}
$j("#inlink-title" + config.n).html('<h2>'+config.title+'</h2>');
$j("#inlink-loading" + config.n).html('');
}
getRelated();

});

function getError(e){
var msg="error: ";
switch(e){
case 0:
msg+='no tags defined';
break;
case 1:
msg+='tumblr API problem';
break;
}
$j("#inlink-loading").html(msg);
}
})();[/JS]

Edit: Ik ga er hier misschien ongegrond vanuit dat je de script-tag voor het related-script op de homepage en die voor de post-pagina in verschillende files hebt. Als dat niet zo is moet je een domain-test doen in het script zelf ofzo, maar dat leek me gewoon minder mooi ;) Anders wordt ook nl op de post-pagina de eerste related-hit weggelaten.
 
Laatst bewerkt:
De resultaten op de homepage zijn wisselvallig maar dat is ook omdat er gewoon nog niet 100en posts op staan. Over het algemeen pikt ie wel de beste eruit (in tegenstelling tot die waardeloze met thumbnails)

Was er nog iets verandert aan het script dat je het weer postte?
Het related script staat op een plek waar ie zowel op homepage als in post verschijnt, en da's ook niet zo heel makkelijk te wijzigen zonder te krijgen dat het ergens dubbel opduikt. (hoewel een {permalink} tag nog wel wil werken.. is er ook zoiets voor {index page}?
 
Niet dat ik weet.. Maar ik heb er ook niet echt verstand van :P

In het laatste script stond iets extra's om die extra parameter te detecteren. Maar goed, dat is dus lastig te implementeren. Daarnaast bedenk ik me dat het weglaten van de eerste post niet zozeer nuttig is als de hits instabiel zijn. Wie zegt dat de betreffende post altijd op #1 staat? :)

Ik kijk er morgen nog eens even naar ;)
 
Nouja, als suggestie van 'misschien vind je dit ook leuk' is een link naar hetzelfde artikel wel een beetje lame :p Maar iig al vast bedankt!
 
Deze kijkt wat de link naar de eigen post is. Die link wordt niet nog een keer gegeven als een suggestie.
[JS](function() {

var $j = jQuery.noConflict();
window.N = window.N == undefined ? 0 : window.N + 1;
var postInfos = $j(".postinfo");

var config = {
n: window.N,
postUrl: postInfos[postInfos.length - 1].getElementsByTagName("a")[0].href
};
var titles = [];
var links = [];
var images = [];
var types = [];

var scripts = document.getElementsByTagName('script');
var this_script = scripts[scripts.length - 1];
var params = this_script.src.replace(/^[^\?]+\??/,'').split('&');

var url_base = ((typeof(config.url) == 'undefined') ? ('http://' + document.domain + '/') : ('http://' + config.url + '/'));

for(var i=0; i<params.length; i++) {
var tmp = params.split("=");
config[tmp[0]] = unescape(tmp[1]);
}

if(typeof(config.tags)=='undefined'){
error(0);
return;
}
if(typeof(config.num)=='undefined'){
config.num=8;
}
if(typeof(config.len)=='undefined'){
config.len=60;
}
if(typeof(config.title)=='undefined'){
config.title='Related Posts:';
}
if(typeof(config.type)=='undefined'){
config.type='';
}

switch(config.css) {
case ('simple'):
document.write('<link rel="stylesheet" type="text/css" ' +
'href="http://tumblr-in-link.googlecode.com/svn/trunk/css/simple.css" media="screen" />');
break;
case ('complete'):
document.write('<link rel="stylesheet" type="text/css" ' +
'href="http://tumblr-in-link.googlecode.com/svn/trunk/css/complete.css" media="screen" />');
break;
case ('light'):
document.write('<link rel="stylesheet" type="text/css" ' +
'href="http://tumblr-in-link.googlecode.com/svn/trunk/css/light.css" media="screen" />');
break;
case ('dark'):
document.write('<link rel="stylesheet" type="text/css" ' +
'href="http://tumblr-in-link.googlecode.com/svn/trunk/css/dark.css" media="screen" />');
break;
}

document.write(
'<div id="tumblrinlink'+window.N+'">' +
'<div id="inlink-loading'+window.N+'">Loading Tumblr In Links...</div>' +
'<div id="inlink-title'+window.N+'"></div>'+
'<ul id="inlink-list'+window.N+'"></ul>' +
'</div>'
);

var tags = config.tags.slice(0,-1).split(',');

$j(document).ready(function() {
function getRelated() {
for(var i=0; i<tags.length; i++){
$j.getJSON(url_base+'api/read/json?callback=?&filter=text&num='+config.num+'&start=0&type='+config.type+'&tagged='+escape(tags), function(data) {
$j(data.posts).each(function(i, post) {
var text='';
if(post.type=='regular') text+=post['regular-title'];
else if(post.type=='link') text+=post['link-text'];
else if(post.type=='quote') text+=post['quote-text'];
else if(post.type=='photo') text+=post['photo-caption'];
else if(post.type=='conversation') text+=post['conversation-title'];
else if(post.type=='video') text+=post['video-caption'];
else if(post.type=='audio') text+=post['audio-caption'];
else if(post.type=='answer') text+=post['question'];
if(text.length>config.len){
text=text.slice(0,config.len);
text+='...';
}
var image ='';
if(post.type=='photo') image+=post['photo-url-100'];
else if(post.type=='link') image+=['link-text'];
else if(post.type=='quote') image+=['quote-text'];
else if(post.type=='photo') image+=['photo-caption'];
else if(post.type=='conversation') image+=['conversation-title'];
else if(post.type=='video') image+=['video-caption'];
else if(post.type=='audio') image+=['audio-caption'];
else if(post.type=='answer') image+=['question'];
titles.push(text);
links.push(post['url-with-slug']);
images.push(image);
types.push(post['type'])
});

}).complete(getList);
}

}
function getList(){
for (var i = 0; i < titles.length; i++) {
var regex = new RegExp('('+links+')');
var html = $j("#inlink-list" + config.n).html();

if(links != config.postUrl && !html.match(regex)){
if(config.num--<=0) return;

var item='<li class="inlink-item" id="'+types+'"><a class="inlink-link" href="'+links+'" title="'+titles+'"><img src="'+images+'" alt="'+titles+'"><p>'+titles+'</p></a></li>';
$j("#inlink-list" + config.n).append(item);
}
}
$j("#inlink-title" + config.n).html('<h2>'+config.title+'</h2>');
$j("#inlink-loading" + config.n).html('');
}
getRelated();

});

function error(e){
var msg="error: ";
switch(e){
case 0:
msg+='no tags defined';
break;
case 1:
msg+='tumblr API problem';
break;
}
$j("#inlink-loading").html(msg);
}
})();[/JS]

Op de homepage wordt trouwens die jQuery library voor iedere post een keer geladen. Misschien kun je het volgende stukje naar de header van de pagina verplaatsen, ik denk dat dat scheelt in de laadtijd ;)
HTML:
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.5.0/jquery.min.js" type="text/javascript">
 
Perfect! Ik had dat probleem voorheen ook al als mensen een post via hun 'notes' opende en daar is het nu ook gelijk verdwenen :thumb:

Nou alleen mijn problemen met die stomme Facebook knop nog fixen en dan is technisch alles zoals ik het hebben wil!
 
Laatst bewerkt:
Super, blij dat het naar je zin is :) :thumb:

Wat is er aan de hand met de facebook-knop?
 
Uhm, in eerste instantie vooral dat ie alleen de titel en omschrijving (+ afbeelding) van de pagina doorgaf ipv van de post (wat ik 'm op diverse sites wel zie doen).. maar toen heb ik 'm vervangen en nu geeft ie alleen nog maar errors :confused:


Wat betreft dat In-link scriptje merkte ik vanmiddag wel op dat mijn mediaplayer rechtsonder niet meer werkte, en direct wel weer werkt zodra ik 'jouw' js-je eruit gooi .. Maar zal eens kijken of dat misschien komt doordat ik al die verwijzingen heb weggehaald!
 
Oh, nog 2 vraagjes (alleen als je t heel makkelijk weet hoor!):

- Het script staat al tussen {hastags} maar als een post wel tags maar geen gerelateerde artikelen heeft verschijnt dus alsnog "You might also like this:" en dan niks..
Is dat makkelijk op te lossen?

- Ik merkte straks toen de site wat stroever laadde dat wanneer het laden moeizaam gaat er incidenteel helemaal geen resultaten komen.. Zit er iets in het script wat daar voor zorgt? Zo van.. tijd om, helaas!
 
Uhm, in eerste instantie vooral dat ie alleen de titel en omschrijving (+ afbeelding) van de pagina doorgaf ipv van de post (wat ik 'm op diverse sites wel zie doen).. maar toen heb ik 'm vervangen en nu geeft ie alleen nog maar errors
't Gaat hier om de like-button he? Ik heb zeker een facebook-account nodig om die functionaliteit te testen? :p


Wat betreft dat In-link scriptje merkte ik vanmiddag wel op dat mijn mediaplayer rechtsonder niet meer werkte, en direct wel weer werkt zodra ik 'jouw' js-je eruit gooi .. Maar zal eens kijken of dat misschien komt doordat ik al die verwijzingen heb weggehaald!
Hier werkt 't gewoon. Je bedoelt toch die mixcloud-player onderin de rechterkolom?


Het script staat al tussen {hastags} maar als een post wel tags maar geen gerelateerde artikelen heeft verschijnt dus alsnog "You might also like this:" en dan niks..
Is dat makkelijk op te lossen?
Wat zijn {hastags}? :P Maar dat moet wel te regelen zijn binnen het script. Wat wil je hebben in plaats daarvan? (Een error / niets / "Geen suggesties gevonden" / ...)


Ik merkte straks toen de site wat stroever laadde dat wanneer het laden moeizaam gaat er incidenteel helemaal geen resultaten komen.. Zit er iets in het script wat daar voor zorgt? Zo van.. tijd om, helaas!
Qua javascript kan de efficiëntie een stuk hoger volgens mij. De jQuery-library (die best groot is) wordt voor iedere post een keer geladen (zie een eerdere post van mij ;)), en ook het related-script zelf bevat dingen die dubbelop zijn als je ze meerdere keren plaatst.
Maar goed, dat is het ergste niet :P Voor iedere (post, tag)-combinatie wordt er een request gedaan naar een andere pagina. Zo'n request kost relatief veel tijd, en daar zit inderdaad een limiet op (115 milliseconden zo te zien). Is een request niet afgerond voor die tijd, dan heb je geen resultaten voor die tag.
Ik denk dat het zou lonen als er een manier gevonden wordt om dit efficienter te doen. De resultaten van een request voor een tag #Singles zou bijvoorbeeld voor meerdere posts gebruikt kunnen worden. Als ik nu je homepage laadt zie ik 89 (!) van die requests de deur uit gaan. Dat merk je gewoon in de laadtijd ;)
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan