![]() |
Startseite
Forum
Affilinator kostenlos
Impressum
alte Dokumentation
|
|
|||||||
| Affilinator - Wie geht das ? Sie fragen sich, wie Sie etwas bestimmtes mit dem Affilinator umsetzen können? Oder haben Sie eine allgemeine Frage zur Benutzung des Skripts? |
![]() |
|
|
Themen-Optionen | Ansicht |
|
#1
|
|||
|
|||
|
Hallo
Gibt es eine Möglichkeit das Bild "Kein Bild" gegen ein eigenes Bild auszutauschen? Gruß Rainer |
|
#2
|
|||
|
|||
|
Hallo,
wollte gerade nein schreiben, da das ja von affilinet kommt, aber ein ganz klares nein gibt es eigentlich nicht im Affilinator - schick mir mal ein Beispiel. Evtl. gibt es hier und da ein System, je nach dem wer das Ersatzbild wie liefert. Gruß Frank |
|
#3
|
|||
|
|||
|
|
|
#4
|
||||
|
||||
|
Halloi Rainer,
wo hast du den den Bildlink her? Normalerweise gibt Affilinet einen Bildlink in dieser Art zurück "http://images180.affili.net/404.gif" Für die Detailansicht sollte es hiermit gehen: {if $getProductDetail_data.data.IMAGE180.0.IMAGEURL.0. VALUE eq "http://images180.affili.net/404.gif"} anderes Bild {else}<img src="{getimage str=$getProductDetail_data.data.IMAGE180.0.IMAGEUR L.0.VALUE}" align="center" border="0" alt="weiter zum Shop"> {/if} Wenn tatsächlich Affilinet irgendwo Bildlinks in deiner Art rausgibt müsste man entweder die Größe der Datei oder den Bildinhalt vergleichen. Möglichkeiten hierfür sind javascript oder php im Template. Gruß Axel
|
|
#5
|
|||
|
|||
|
Zitat:
in dem Fall ist es einfach, hier erkennt bereits affilinet, dass es kein Bild gibt und liefert unter der eigentlichen Bildnummer das "no image" aus, sprich du kannst anhand der URL nicht erkennen, dass eben nicht das richtige Bild ist. Du kannst in diesem Fall also nur ganz gezielt auf die Artikelnummer (empfiehlt sich nur bei wenigen) oder allgemein escom (dann also alle Bilder) ersetzen bzw. nicht zeigen. Die Alternative wäre der Vorschlag von Axel, wobei mir da gerade die Idee fehlt wie das gehen soll. Gruß Frank |
|
#6
|
|||
|
|||
|
Hallo,
der Vorschlag gefällt mir ganz gut nur wie ermittelt man am besten die Bildgröße in Bytes. Ich habs in PHP mit fopen und filesize probiert geht aber nicht so richtig. Mit einem Bild das auf dem eigenen Server und Verzeichniss liegt ist das ja kein Problem. Habt Ihr eine Idee ? Gruß Rainer |
|
#7
|
||||
|
||||
|
Hi Rainer,
auch hier fallen mir 2 Möglichkeiten ein: 1. Du lädst das Bild mit copy in ein Ordner mit Schreibrechte und holst dir mit filesize() die Größe des Bildes. Natürlich kannst du auch curl dazu nutzen. 2. Du lädst dir nicht das ganze Bild runter sondern nur den Fileheader und extrahierst dir die Größe. Das ist die Variante die die Bandbreite etwas schont. So sollte es funktionieren: Code:
{assign var=bild value=$getProductDetail_data.data.IMAGE180.0.IMAGEURL.0.VALUE}
{php}
$bild =& $this->get_template_vars('bild');
$header = "";
$url_p = parse_url($bilde);
$host = $url_p["host"];
$path = $url_p["path"];
$fp = fsockopen($host, 80, $errno, $errstr, 5);
if($fp)
{ fputs($fp, "HEAD ".$bild." HTTP/1.1\r\n");
fputs($fp, "HOST: dummy\r\n");
fputs($fp, "Connection: close\r\n\r\n");
$headers = "";
while (!feof($fp)) {
$headers .= fgets ($fp, 128);
}
fclose ($fp);
$arr_headers = explode("\n", $headers);
foreach($arr_headers as $header) {
$s = "Content-Length: ";
if(substr(strtolower ($header), 0, strlen($s)) == strtolower($s)) {
$size = substr($header, strlen($s));
break;
}
}
} else $size=0;
if ($size == 3321 || $size == 0) echo "eigenes Bild";
else echo $bild;
{/php}
Geändert von AxelK (05.03.2006 um 10:37 Uhr) |
|
#8
|
|||
|
|||
|
Hallo,
hab es mal ausprobiert und es geht, voll genial. Beim stöbern durch die Produkte ist mir aufgefallen das bei manchen Produkten gar kein Bild also nicht einmal "Kein Bild" vorhanden ist z.B "Avitos" ( http://www.oshops.info/angebot/14655...r_dv_9900.html ) hab dann einfach if($size == 3321) in if($size < 3322) abgeändert da zeigt er wenigstens mein Bild an. Gruß Rainer
|
|
#9
|
||||
|
||||
|
Hi Rainer,
damit ersetzt du aber alle Bilder die kleiner als 3332B sind. Ich habe den Code oben noch etwas modifiziert, damit er auch diesen Fall mit einbezieht. Gruß Axel
|
|
#10
|
|||
|
|||
|
Hallo,
da hast Du natürlich Recht ich werde es gleich mal ändern Gruß Rainer |
![]() |
| Lesezeichen |
| Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1) | |
| Themen-Optionen | |
| Ansicht | |
|
|