Annonceimport på GulogGratis.dk Indhold Annonceimport på GulogGratis.dk...1 Hvad er det?...2 Hvordan foregår det?...2 Hvad er arbejdsprocessen?...2 Hvor skal feedet ligge?...2 Hvordan skal feedet udformes?...2 Generelt...2 Felter...3 Basis-felter...3 Ekstra felter...4 Tekst i stedet for pris...4 Billeder...4 Link...5 Anden adresse...5 Kategori...5 Kategorifelter...6 Hvilke andre ting skal der tages højde for?...6 Fremhævningsprodukter...6 Udvidet eksempel...7 Side 1/8
Hvad er det? Som ordet annonceimport antyder, er dette en import af annoncer til GulogGratis.dk. Hvordan foregår det? Kunden stiller en side (et feed), som er tilgængelig via nettet, til rådighed. Denne side indeholder oplysninger om alle de annoncer, kunden ønsker, at vi skal importere og vise på GulogGratis.dk. En gang i døgnet kører der et lille automatisk program hos os, som går ind på feedet og læser alle de oplysninger, kunden har sat ind. Ud fra disse oplysninger, opretter, opdaterer eller sletter programmet kundens annoncer på kundens brugerkonto hos os. Hvad er arbejdsprocessen? 1. Kunden opretter og stiller et feed til rådighed. 2. Feedet vurderes af en udvikler, og hvis der skal foretages rettelser, får kunden det at vide, så de kan rettes, før der fortsættes. 3. Vi tilføjer en kundespecifik konfiguration til vores import, der kan læse kundens feed. 4. Konfigurationen tilknyttes kundens GG brugerkonto (hvis denne ikke er oprettet, skal den selvfølgelig først det). 5. Importen kan gå i gang. Hvor skal feedet ligge? Feedet skal være tilgængeligt via nettet, fx som en underside på kundens hjemmeside, således vi kan tilgå det via en url-adresse, som fx kunne være http://www.kundensdomæne.dk/gg_feed.xml. Hvordan skal feedet udformes? For at vores program kan læse og forstå oplysningerne, er det vigtigt at siden med feedet er sat rigtigt op, og at det overholder de krav, vi stiller. Generelt Det skal være udformet i XML og skal kunne valideres uden fejl på http://validator.w3.org. Data og oplysninger, der ikke har relevans i forbindelse med GulogGratis.dk annoncer og importen, bør ikke være at finde i feedet. Navne på felter (se en beskrivelse af felter nedenfor) skal overholdes Side 2/8
også mht. små og store bogstaver. Annoncer og oplysninger i feedet skal til enhver tid afspejle de annoncer og oplysninger, kunden ønsker fremvist på GulogGratis.dk. Felter Hvor mange og hvilke felter feedet skal indeholde afhænger af annoncetype og hvilken kategori, annoncen skal i. Basis-felter De mest basale felter, som alle annoncer i feedet skal indeholde, er: id: Et id som er unikt i forhold til kundens øvrige annoncer. last_updated: En dato der fortæller, hvornår der sidst har været en ændring af annoncens indhold. Således behøver vi ikke opdatere de af kundens annoncer, som ikke har ændret sig siden sidste import. Datoen skal have formatet 2011-01-18 14:56:24, som læses som 18. januar 2011 kl. 14:56:24. headline: Annoncens overskrift. Må max indeholde 50 tegn. text: Annoncens tekst. price: Prisen på produktet i annoncen. Prisen skal være i hele kroner (altså ingen komma-tal med øreangivelse). ad_type: Angivelse af hvilken type af annonce, der er tale om. Mulige værdier er (værdierne er tallene alene parenteserne er blot en beskrivelse): 1 (salg) 2 (køb) 3 (bytte) 4 (gives væk) 5 (leje) 6 (udleje) 8 (andet) Rent kodemæssigt skal et feed indeholdende basisfelter se ud på denne måde: <?xml version="1.0" encoding="utf-8"?> <!DOCTYPE ads [ <!ELEMENT ads (ad*)> <!ELEMENT ad (id, last_updated, headline, text, price, ad_type)> <!ELEMENT id (#PCDATA)> <!ELEMENT last_updated (#PCDATA)> <!ELEMENT headline (#PCDATA)> <!ELEMENT text (#PCDATA)> <!ELEMENT price (#PCDATA)> Side 3/8
]> <!ELEMENT ad_type (#PCDATA)> <ads> <ad> <id>1234</id> <last_updated>2011-01-18 14:28:33</last_updated> <headline><![cdata[overskrift til første annonce]]></headline> <text><![cdata[tekst til første annonce]]></text> <price>5000</price> <ad_type>1</ad_type> </ad> <ad> <id>5678</id> <last_updated>2011-01-18 13:12:59</last_updated> <headline><![cdata[overskrift til anden annonce]]></headline> <text><![cdata[tekst til anden annonce]]></text> <price>4500</price> <ad_type>1</ad_type> </ad> </ads> Teksten med kursiv er blot eksempler denne tekst skal selvfølgelig erstattes med kundens indhold. Ekstra felter Brugen af andre felter end dem beskrevet i ovenstående afsnit afhænger af hvilke slags annoncer, der er tale om, og hvilke ønsker kunden måtte have. Tekst i stedet for pris Hvis kunden ønsker tekst i stedet for angivelse af en pris, kan feltet price_text benyttes. Feltet må max indeholde 24 tegn. Bemærk at basisfeltet price stadig skal optræde i feedet. Hvis der står en pris i price_text, bør dette beløb figurere i price. Hvis der ingen pris er angivet i price_text, skal price sættes til 0. <price>1950</price> <price_text><![cdata[fra kr. 1.950 pr. uge]]></price_text> Billeder Hvis der skal være billeder på annoncerne, skal billederne kunne tilgås via hver deres url, og disse url'er angives i feedet på følgende måde: <images> <image>http://www.kundensdomæne.dk/annonce_1234/img1.jpg</image> <image>http://www.kundensdomæne.dk/annonce_1234/img2.jpg</image> Side 4/8
<image>http://www.kundensdomæne.dk/annonce_1234/img3.jpg</image> </images> Link På kundens bruger kan der angives et link. Imidlertid kan vi også linke direkte til en importeret annonces original på kundens hjemmeside. Det kræver dog, at vi får medsendt dette link i feedet under feltnavnet link. Udover linket, kan kunden også angive noget tekst, som skal stå på siden frem for et grimt link dette er dog ikke påkrævet. Feltnavnet for link-teksten er link_text. <link>http://www.kundensdomæne.dk/annonce_1234</link> <link_text><![cdata[se den fulde annonce]]></link_text> Anden adresse Hvis produktet i den importerede annonce har eller befinder sig på en anden adresse end den, som er angivet på kundens brugerkonto, skal denne adresse angives i feeded ved at benytte felterne address, zipcode, city og countrycode altså adresse, postnummer, by og landekode (ISO 3166-1 alpha-2). <address><![cdata[vejnavn og nummer]]></address> <zipcode><![cdata[postnummer]]></zipcode> <city><![cdata[bynavn]]></city> <countrycode><![cdata[landekode]]></countrycode> Kategori Uden en speciel og præcis identifikation af hvad for en slags produkt, der er tale om i annoncen, vil alle annoncerne blive placeret i én kategori (den kategori, der aftales fra start). Imidlertid kan kunden i feedet for hver annonce angive en unik streng, som vi kan tolke og oversætte til en kategori. Metoden for angivelsen af denne unikke streng kan grundlæggende være en af to muligheder: 1. Den unikke streng er den url som henviser til den kategori, annoncen ønskes placeret i fx: http://www.guloggratis.dk/fritid/sommerhusudlejning http://www.guloggratis.dk/ejendomme/lejligheder-vaerelser 2. De unikke streng er en række ord der parres med matchende GulogGratis.dk kategori-id'er fx: sommerhusudlejning 704 lejlighed-vaerelse 595 Hvilken mulighed, der anvendes, skal fra start aftales med kunden, og hvis mulighed nummer 2 vælges, skal parringen mellem de unikke strenge og Side 5/8
GulogGratis.dk kategorier foreligge inden importen kan konfigureres i importprogrammet. Hvis kunden har annoncer, som skal placeres i mange forskellige kategorier fx mobiltelefoner, som jo har en kategori for hver model er der mulighed for at gøre parringen mere smart, og vi kan slå op i vores kategoritræ på modellerne, for at finde den rette kategori. Koden i feedet for angivelse af kategori skal se ud på følgende måde: <category><![cdata[sommerhusudlejning]]></category> Kategorifelter Hvis annoncerne placeres i kategorier med kategorifelter specielt kategorifelter, som indgår i den udvidede søgning - bør feedet indholde felter, der svarer til disse kategorifelter. Navnene på disse felter svinger meget, og vil afhænge af kategorien, og skal defineres fra feed til feed. Kodemæssigt skal kategorifelterne sættes op på følgende måde: <categoryfields> <field_1><![cdata[værdi til felt 1]]></field_1> <field_2><![cdata[værdi til felt 2]]></field_2> <field_3><![cdata[værdi til felt 3]]></field_3> </categoryfields> Feltnavnene field_1, field_2 og field_3 skal erstattes af korrekte navne her er de blot eksempler. Hvilke andre ting skal der tages højde for? Udover selve feedet skal der tages højde for og stilling til et par andre ting inden importeren kan konfigureres. Fremhævningsprodukter Hvis der skal være fremhævningsprodukter på annoncerne er følgende produkter p.t. tilgængelige: Overskrift i listevisning 200 tegn i listevisning Billede i listevisning Link i listevisning De produkter, der vælges, vil være på alle annoncerne. Side 6/8
Udvidet eksempel Følgende eksempel på et feed indeholder alle ovennævnte felter inkl. eksempel-felterne for kategorifelter. Som ovenover er de skråtstillede værdier også her kun eksempler. <?xml version="1.0" encoding="utf-8"?> <!DOCTYPE ads [ <!ELEMENT ads (ad*)> <!ELEMENT ad (id, last_updated, headline, text, price, price_text, ad_type, images, link, link_text, address, zipcode, city, countrycode, category, categoryfields)> <!ELEMENT id (#PCDATA)> <!ELEMENT last_updated (#PCDATA)> <!ELEMENT headline (#PCDATA)> <!ELEMENT text (#PCDATA)> <!ELEMENT price (#PCDATA)> <!ELEMENT price_text (#PCDATA)> <!ELEMENT ad_type (#PCDATA)> <!ELEMENT images (image*)> <!ELEMENT image (#PCDATA)> <!ELEMENT link (#PCDATA)> <!ELEMENT link_text (#PCDATA)> <!ELEMENT address (#PCDATA)> <!ELEMENT zipcode (#PCDATA)> <!ELEMENT city (#PCDATA)> <!ELEMENT countrycode (#PCDATA)> <!ELEMENT category (#PCDATA)> <!ELEMENT categoryfields (field_1?, field_2?, field_3?)> <!ELEMENT field_1 (#PCDATA)> <!ELEMENT field_2 (#PCDATA)> <!ELEMENT field_3 (#PCDATA)> ]> <ads> <ad> <id>1234</id> <last_updated>2011-01-18 14:28:33</last_updated> <headline><![cdata[overskrift til første annonce]]></headline> <text><![cdata[tekst til første annonce]]></text> <price>1950</price> <price_text><![cdata[fra kr. 1.950 pr. uge]]></price_text> <ad_type>1</ad_type> <images> <image>http://www.kundensdomæne.dk/annonce_1234/img1.jpg</image> <image>http://www.kundensdomæne.dk/annonce_1234/img2.jpg</image> <image>http://www.kundensdomæne.dk/annonce_1234/img3.jpg</image> </images> <link>http://www.kundensdomæne.dk/annonce_1234</link> <link_text><![cdata[se den fulde annonce]]></link_text> <address><![cdata[vejnavn og nummer]]></address> <zipcode><![cdata[postnummer]]></zipcode> Side 7/8
<city><![cdata[bynavn]]></city> <countrycode><![cdata[landekode]]></countrycode> <category><![cdata[sommerhusudlejning]]></category> <categoryfields> <field_1><![cdata[værdi til felt 1]]></field_1> <field_2><![cdata[værdi til felt 2]]></field_2> <field_3><![cdata[værdi til felt 3]]></field_3> </categoryfields> </ad> </ads> Side 8/8