Za izradu pametnog bannera potrebno je dodati feed - datoteku s informacijama o proizvodima i uslugama. Direct će analizirati sadržaj feeda i automatski generirati pametni banner s ponudama proizvoda za prikaz na mrežama. Učitani feed možete koristiti prilikom izrade dinamičkih oglasa.
Vrste poslovanja i feedovi
Da biste učitali svoj feed, trebate odabrati vrstu posla koji oglašavate.
Vrsta hrane | Vrsta poslovanja | Za što |
---|---|---|
Feed Yandex.Market (XML) | Maloprodaja | Prodaja elektronike i dodatne opreme, kućanskih aparata, industrijska oprema, odjeća, namještaj, proizvodi za vrtlarstvo, sportska oprema, građevinski materijali, proizvodi za djecu, gume i kotači, kozmetika, parfemi itd. |
hraniti se "Hoteli i stanovi za iznajmljivanje" Google Ads(CSV) | hoteli | Hotelske rezervacije |
Auto.ru feed (XML) | Automobili | Prodaja novih i rabljenih automobila |
Feed Yandex.Real Estate (XML) | Nekretnina | Prodaja stambenih nekretnina |
Feed Google Ads letova (CSV) | Letovi | Prodaja avio karata |
Univerzalni feed (CSV) | Ostali poslovi | Proizvodi i usluge nisu prikladni za druge vrste poslovanja |
Feed Yandex.Market (XML) | ||
Google Ads prilagođeni feed (CSV) | ||
Google Ads Travel Feed (CSV) | Prodaja izleta, karata za vlakove, trajekte i sl. |
Ponude proizvoda koje nisu opisane prema vrsti bit će odbijene.
Zahtjevi za stočnu hranu
Svaki XML dokument može sadržavati samo jedan korijenski element. YML format koristi element kao korijen
- Vrsta pojednostavljenog opisa
- Vrsta prilagođenog opisa (dobavljač.model)
Osnovni, jednostavniji tip opisa.
Primjer:
Atributi elementa
Elementi uključeni u
Element | Opis |
---|---|
ime | Naziv ponude proizvoda. Preporuča se navesti naziv i šifru proizvođača u naslovu pojednostavnjenog prijedloga. Potreban element. |
url | URL stranice proizvoda. Potreban element. |
slika | |
cijena | |
currencyId | |
model | |
prodavač | Proizvođač. |
vendorCode | |
opis | |
kategorijaId | |
tržišna_kategorija | |
trgovina | |
kurva | |
dostava | |
stara cijena | |
prodajne_bilješke | Informacije o narudžbi: |
proizvođač_jamstvo | Dostupnost jamstva: |
zemlja_porijekla | Zemlja podrijetla proizvoda. |
odrasla osoba | |
dobi | |
preuzimanje | Mogućnost preuzimanja proizvoda: istina - proizvod se može preuzeti; false - proizvod se ne može preuzeti. |
Ova vrsta opisa je najprikladnija i univerzalna; preporučuje se za opisivanje proizvoda iz većine kategorija.
Primjer:Atributi elementa
Atribut | Opis |
---|---|
id | ID proizvoda. Obavezan atribut. |
tip | Obavezan atribut. |
dostupan | Mogućnost kupnje robe:
|
Atribut | Opis |
---|---|
id | ID proizvoda. Obavezan atribut. |
tip | Vrsta opisa ponude. Vrijednost bi trebala biti vendor.model. Obavezan atribut. |
dostupan | Mogućnost kupnje robe:
|
Elementi uključeni u
Element | Opis |
---|---|
url | URL stranice proizvoda. Potreban element. |
slika | Element koji morate imati za pametne bannere. |
cijena | Cijena po kojoj se ovaj proizvod može kupiti. |
currencyId | Šifra valute (RUB, USD, UAH, KZT). Obavezan element ako postoji element cijene. |
model | Potreban element. |
prodavač | Proizvođač. Potreban element. |
vendorCode | Šifra proizvoda (označena je šifra proizvođača). |
opis | Opis ponude proizvoda. |
tipPrefiks | |
kategorijaId | Potreban element. Element |
tržišna_kategorija | |
trgovina | Mogućnost kupnje robe u maloprodaji: točno - proizvod se može kupiti u maloprodaji; false - ne postoji mogućnost kupnje u maloprodaji. |
kurva | Mogućnost samostalnog preuzimanja sa mjesta izdavanja: istina - robu možete sami preuzeti; lažno - ne postoji mogućnost samopreuzimanja. |
dostava | Mogućnost dostave robe kurirskom službom: istina - moguća je kurirska dostava; false - proizvod se ne može isporučiti kurirom. |
stara cijena | Stara cijena proizvoda, koja mora biti viša od nove cijene. |
prodajne_bilješke | Informacije o narudžbi: minimalni iznos narudžbe, minimalna količina robe, potreba za plaćanjem unaprijed; mogućnosti plaćanja, opisi akcija i rasprodaja. |
proizvođač_jamstvo | Dostupnost jamstva: istina - proizvod ima službeno jamstvo; lažno - proizvod nema službeno jamstvo. |
zemlja_porijekla | Zemlja podrijetla proizvoda. |
odrasla osoba | |
dobi | |
preuzimanje | Mogućnost preuzimanja proizvoda: istina - proizvod se može preuzeti; false - proizvod se ne može preuzeti. |
Hoteli: Google Ads Hotels & Rentals feed
hraniti se "Hoteli i stanovi za iznajmljivanje" Google Ads CSV format mora se koristiti za vrstu poslovanja Hoteli. Prvi redak sadrži nazive stupaca, a sljedeći redak sadrži same podatke. Sadržaji stupaca odvojeni su zarezom. Podaci u feedu moraju biti u UTF-8 kodiranju.
Element | Opis |
---|---|
ID hotela. Potreban element. |
|
Ime hotela. Potreban element. |
|
URL stranice ponude. Potreban element. |
|
Naziv odredišta | Potreban element. |
Element koji morate imati za pametne bannere. |
|
Cijena | |
Element | Opis |
---|---|
ID hotela. Potreban element. |
|
Ime hotela. Potreban element. |
|
URL stranice ponude. Potreban element. |
|
Naziv odredišta | Lokacija hotela (maks. 25 znakova). Potreban element. |
Element koji morate imati za pametne bannere. |
|
Cijena | Ponuđena cijena. Broj i kod valute (RUB, USD, UAH, KZT). Koristite točku (.) kao decimalni razdjelnik. |
Broj zvjezdica. Cijeli broj od 1 do 5. |
|
Ocjena korisnika, broj. Koristite točku (.) kao decimalni razdjelnik. |
|
Maksimalni mogući rezultat, cijeli broj. Zadano je 5. |
|
Hotelske usluge. Navedite vrijednosti odvojene točkom i zarezom: bar;bazen;besplatni Wi-Fi |
Bilješka. Vrijednosti koje sadrže zarez moraju biti u navodnicima (\"\"). Na primjer, \"Moskva, centar\".
Automobili: feed Auto.ru
Auto.ru XML feed trebao bi se koristiti za vrstu poslovanja Automobiles. Podaci u feedu moraju biti u UTF-8 kodiranju.
U elementu se nalazi popis ponude nekretnina oglašivača
U jednom feedu možete prenijeti informacije o različitim stambenim kompleksima od različitih programera. Da biste to učinili, naznačite u svakom
Pažnja.
Ne prihvaćamo feedove nekretnina za iznajmljivanje.
Primjer:
Atributi elementa
Elementi uključeni u
Tablica u nastavku opisuje elemente feeda koji se koriste za izradu pametnih natpisa ili dinamičkih oglasa.
Element | Opis |
---|---|
tip | Vrsta transakcije. Smisao je samo prodaja. Potreban element. |
mjesto | Potreban element. |
naziv lokaliteta | Naziv lokaliteta. Potreban element. |
naziv podlokaliteta | |
adresa | |
metro | Najbliža metro stanica. |
ime | |
vrijeme u transportu | |
vrijeme-pješice | |
url | Potreban element. |
slika | Element koji morate imati za pametne bannere. |
naziv zgrade | Potreban element. |
prodajni agent | Potreban element. |
organizacija | Potreban element. |
cijena | |
vrijednost | |
valuta | Šifra valute (RUB, USD, UAH, KZT). |
područje | Ukupna površina. \n |
vrijednost | |
jedinica | Jedinica površine prostorije. |
kat |
Element | Opis |
---|---|
tip | Vrsta transakcije. Smisao je samo prodaja. Potreban element. |
mjesto | Skup elemenata koji opisuju položaj objekta. Ugniježđene oznake pružaju detaljne informacije o adresi objekta. Potreban element. |
naziv lokaliteta | Naziv lokaliteta. Potreban element. |
naziv podlokaliteta | |
adresa | |
metro | Najbliža metro stanica. Ako postoji više postaja, svaku treba navesti u zasebnom elementu. Ugniježđene oznake pružaju detaljne informacije. |
ime | |
vrijeme u transportu | Vrijeme do metroa u minutama prijevozom. |
vrijeme-pješice | |
url | Potreban element. |
slika | Element koji morate imati za pametne bannere. |
naziv zgrade | Naziv stambenog kompleksa. Na temelju ovog elementa stanovi se spajaju u stambene komplekse. Ako je naziv stambenog kompleksa nepoznat, navedite ulicu i kućni broj (Lenina, 25) Potreban element. |
prodajni agent | Podaci o programeru. Ugniježđene oznake pružaju detaljne informacije: Potreban element. |
organizacija | Naziv pravne osobe nositelja projekta. Potreban element. |
cijena | Skup elemenata koji opisuju vrijednost objekta. Ugniježđene oznake označavaju cijenu i valutu u kojoj je cijena navedena: |
vrijednost | |
valuta | Šifra valute (RUB, USD, UAH, KZT). Obavezno ako postoji element vrijednosti. |
područje | Ukupna površina. Vrijednost i mjerna jedinica površine prenose se u ugniježđenim oznakama: \n |
vrijednost | |
jedinica | Jedinica površine prostorije. Element se koristi ako je cijena izražena po jedinici površine. Moguće vrijednosti: sq. m/m2 m. |
kat |
Letovi: Google Ads sažetak letova
Google Ads Airline Tickets CSV feed mora se koristiti za vrstu poslovanja Airline Tickets. Prvi redak sadrži nazive stupaca, a sljedeći redak sadrži same podatke. Sadržaji stupaca odvojeni su zarezom. Podaci u feedu moraju biti u UTF-8 kodiranju.
Primjer: Elementi uključeni u CSV
Tablica u nastavku opisuje elemente feeda koji se koriste za izradu pametnih natpisa ili dinamičkih oglasa.
Element | Opis |
---|---|
Potreban element. |
|
Naziv odredišta | Naziv odredišta. Potreban element. |
e-trgovina |
|
Naziv mjesta polaska. |
|
URL stranice ponude. Potreban element. |
|
Element koji morate imati za pametne bannere. |
|
Cijena leta | Ponuđena cijena. Broj i kod valute (RUB, USD, UAH, KZT). Koristite točku (.) kao decimalni razdjelnik. |
Element | Opis |
---|---|
ID odredišta. Potreban element. |
|
Naziv odredišta | Naziv odredišta. Potreban element. |
ID podrijetla. Ako navedete Origin ID u feedu i povezali ste e-trgovinu u Yandex.Metrici, upotrijebite Origin ID i Destination ID odvojene crticom kao identifikator ponude u objektu Ecommerce. Na primjer, \"id\": \"VKO-LHR\" . |
|
Naziv mjesta polaska. |
|
URL stranice ponude. Potreban element. |
|
Element koji morate imati za pametne bannere. |
|
Cijena leta | Ponuđena cijena. Broj i kod valute (RUB, USD, UAH, KZT). Koristite točku (.) kao decimalni razdjelnik. |
Ostala djelatnost: univerzalna stočna hrana
Univerzalni feed u CSV formatu može se koristiti u vrsti Ostalo poslovanje. Prvi red sadrži nazive stupaca i sljedeće retke- sami podaci. Sadržaji stupaca odvojeni su zarezom. Podaci u feedu moraju biti u UTF-8 kodiranju.
Elementi uključeni u CSV
Element | Opis | |
---|---|---|
ID ponude. Potreban element. |
||
e-trgovina |
||
URL stranice ponude. Potreban element. |
||
Element koji morate imati za pametne bannere. |
||
Titula | Naziv ponude. | |
Opis | Opis ponude. |
|
ID ponude valute. Potreban element. |
||
ID druge ponude. Ako naznačite ID2 u feedu i povezali ste e-trgovinu u Yandex.Metrici, koristite ID i ID2 odvojene crticom kao identifikator ponude u objektu e-trgovine. Na primjer, \"id\": \"VKO-LHR\" . |
||
URL stranice ponude. Potreban element. |
||
Element koji morate imati za pametne bannere. |
||
Titula | Naziv ponude. | |
Opis | Opis ponude. |
|
Ponuđena cijena bez valute. Koristite točku (.) kao decimalni razdjelnik. |
||
Valuta | Šifra valute (RUB, USD, UAH, KZT). Obavezno ako postoji element cijene. |
|
Stara cijena ponude, koja mora biti viša od nove cijene (Price). | Opis | |
ID ponude. Potreban element. |
||
ID druge ponude. Ako naznačite ID2 u feedu i povezali ste e-trgovinu u Yandex.Metrici, koristite ID i ID2 odvojene crticom kao identifikator ponude u objektu e-trgovine. Na primjer, \"id\": \"VKO-LHR\" . |
||
URL stranice ponude. Potreban element. |
||
Element koji morate imati za pametne bannere. |
||
Naziv artikla | Naziv ponude. |
|
Opis artikla | Opis ponude. |
|
U Yandex.Metrici koristite ID i ID2 odvojene crticom kao identifikator ponude u objektu e-trgovine. Na primjer, \"id\": \"VKO-LHR\" . |
||
URL stranice ponude. Potreban element. |
||
Element koji morate imati za pametne bannere. |
||
Naziv artikla | Naziv ponude. |
|
Opis artikla | Opis ponude. |
|
Cijena ponude s kodom valute u ISO 4217 kodiranju (RUB, USD, UAH, KZT). Koristite točku (.) kao decimalni razdjelnik. |
||
Nova cijena prijedloga, koji moraju biti niži stara cijena(Cijena). |
Ostali poslovi: Google Ads Travel Feed
Google Ads Travel CSV feed može se koristiti u vrsti Ostalo poslovanje. Prvi red sadrži nazive stupaca, a sljedeći redak sadrži same podatke. Sadržaji stupaca odvojeni su zarezom. Podaci u feedu moraju biti u UTF-8 kodiranju.
Elementi uključeni u CSV
Tablica u nastavku opisuje elemente feeda koji se koriste za izradu pametnih bannera.
Element | Opis |
---|---|
ID odredišta. Potreban element. |
|
Naziv odredišta | Naziv odredišta. |
ID podrijetla. Ako navedete Origin ID u svom feedu i omogućili ste e-trgovinu |
|
Naziv mjesta polaska. |
|
URL stranice ponude. Potreban element. |
|
Element koji morate imati za pametne bannere. |
|
Naziv ponude. | |
ID odredišta. Potreban element. |
|
Naziv odredišta | Naziv odredišta. |
ID podrijetla. Ako navedete Origin ID u feedu i povezali ste e-trgovinu u Yandex.Metrici, upotrijebite Origin ID i Destination ID odvojene crticom kao identifikator ponude u objektu Ecommerce. Na primjer, \"id\": \"MOS-AMS\" . |
|
Naziv mjesta polaska. |
|
URL stranice ponude. Potreban element. |
|
Element koji morate imati za pametne bannere. |
|
Naziv ponude. |
|
Cijena ponude s kodom valute u ISO 4217 kodiranju (RUB, USD, UAH, KZT). Koristite točku (.) kao decimalni razdjelnik. |
|
Nova ponuđena cijena, koja mora biti niža od stare cijene (Price). |
Dodavanje feeda
Da biste dodali feed, na stranici s popisom kampanja slijedite vezu Feeds. Na stranici Upravljanje hranom Kliknite gumb +Dodaj feed i odaberite vrstu poslovanja.
- Veza datoteke
- Učitaj datoteku
Odaberite datoteku koju trebate prenijeti. Veličina učitane datoteke ne smije biti veća od 512 MB. Prilikom ažuriranja, datoteku preuzima robot, a novi podaci se uvoze u Direct.
Svoj feed možete smjestiti u arhivu stvorenu pomoću algoritma ZIP kompresija(extension.zip) ili GNU ZIP (extension.gz).
Ako je došlo do pogreške prilikom dodavanja feeda (na primjer, veličina, format feeda ili poveznica na njega ne ispunjava zahtjeve), vidjet ćete status "Pogreška pri preuzimanju" i poveznicu na izvješće o pogrešci.
Validacija datoteke
Prilikom čitanja datoteke provjeravaju se sljedeći uvjeti:
- svi potrebni elementi su prisutni;
- svi nazivi elemenata su ispravni;
- Svaki se element pojavljuje najviše jednom.
Ako bilo koji od ovih uvjeta nije ispunjen, datoteka se odbija.
Najlakši način za "prilagodbu" slike je postaviti širinu na 100% i automatski izračunati visinu. Naša slika nikada neće biti šira od nadređenog bloka, a preglednik će joj promijeniti veličinu zadržavajući njezine proporcije. Nedostatak ove metode je što i mobilni telefon i stolno računalo dobivaju istu, veliku sliku. Bit će bolje ako se slika pošalje na pametni telefon manje veličine. Na taj način štedimo promet posjetitelju i ubrzavamo učitavanje stranice.
Označiti
Prilagodljive slike
Prilagodljive slike zanimljivo rješenje s obzirom na jednostavnost ugradnje i nepostojanje problema s promjenom oznaka. Određuje veličinu zaslona posjetitelja i umeće željenu sliku na stranicu.
U instalaciji nema ništa komplicirano. Preuzmite distribuciju s http://adaptive-images.com/. Kopirajte datoteke adaptive-images.php i .htaccess u korijen stranice. Najvjerojatnije već postoji .htaccess datoteka u korijenu. U tom slučaju, uredite ga, ali prvo napravite kopiju, za svaki slučaj. Ako vaša .htaccess datoteka ima odjeljak koji počinje s
zalijepite u ovaj odjeljak ono što se nalazi između #Adaptive-Images i #END Adaptive-Images. Ako takav odjeljak ne postoji, kopirajte cijeli sadržaj.
Na odjeljak
- < script>document.cookie = "resolution=" + Math .max (screen.width , screen.height ) + "; path=/" ; script>
Ovaj kod bi se trebao učitati prije ostalih skripti.
Zadnji korak je konfiguracija datoteke adaptive-images.php. Varijabla $resolution određuje širinu zaslona. U pravilu se postavljaju dimenzije navedene u medijskim upitima u CSS-u. $cache_path je put do mape u kojoj će biti pohranjene modificirane slike.
Sada razgovarajmo o tome kako sve to funkcionira. Veličinu prozora posjetitelja određuje JavaScript postavljen u odjeljak
. Ove informacije se bilježe u kolačićima. Kada preglednik naiđe na oznaku na stranici i šalje zahtjev poslužitelju da dobije sliku, šalje kolačiće. Apache web poslužitelj Nakon što je dobio zahtjev za sliku, gleda ima li je posebne upute za datoteke. U .htaccessu imamo pravilo prema kojem poslužitelj šalje svaki zahtjev za jpg, png ili gif na adaptive-images.php. PHP datoteka traži kolačiće i saznaje koja je veličina zaslona. Zatim se vrijednost iz kolačića uspoređuje s vrijednostima propisanim u varijabli $resolution i odabire najbolja vrijednost. Pretpostavimo da je odabrana vrijednost 480px. Prikazana slika treba biti u mapi /ai-cashe/480/. Ako ga nema, bit će zatražen izvorna datoteka a ako je njegova širina manja od širine ekrana, tada će posjetitelj dobiti originalnu datoteku. Ako je veličina veća, datoteka se smanjuje na pravu veličinu i šalje se korisniku. Izmijenjena kopija se sprema kako joj se sljedeći put ne bi mijenjala veličina.Još nekoliko načina za izradu responzivnih slika
Pregledavanje moguća rješenja Primijetio sam da su svi ponuđeni prije elementa
Prilagodljiva slika - lako se konfigurira. Ovaj dobra alternativa ako se ne želite zamarati hrpom datoteka, stvorite tri datoteke za svaku sliku. Iako se ovaj plus može pretvoriti u minus. Često se smanjuje velike fotografije Na kraju, bolje je izrezati neki dio nego mu samo promijeniti veličinu. Još jedan nedostatak Adaptive Imagea je opterećenje poslužitelja.
Usput, ako vaša stranica radi na Drupalu, u sljedećem ćemo članku pokušati implementirati
U razvojnim verzijama Chrome preglednici, Firefox i Opera sada podržavaju novi element slike, dizajniran za rješavanje brojnih problema koji nastaju tijekom razvoja adaptivni dizajni. Pogledajmo ga pobliže.
Novi element slike rješava sljedeće probleme s kojima se susreće programer responzivnih web aplikacija (koristit ću klasifikaciju koju je predložio pepelsbey na jednoj od nedavnih front-end konferencija):
- R etina, tj. zaslone s gustoćom dpi od 150 ili većom, na kojima normalne slike izgledaju mutno
- A responsiveness, zadatak promjene veličine slike u skladu s vašim pravilima navedenim u dizajnu ovisno o veličini prozora.
- F format, mogućnost korištenja modernih formata kao što je WebP ako ih preglednik podržava
- DO Adriding ili umjetničke svrhe. Izrezivanje nevažnih dijelova slike pri prikazu na uređajima s manjim zaslonima.
Sintaksa
Uobičajeno, proširena sintaksa novog elementa izgleda ovakoelement slike ne prikazuje nikakav sadržaj, već je samo referentni spremnik za img oznaku ugniježđenu unutar njega.
Stoga će za većinu zadataka biti dovoljan skraćeni zapis, bez ikakve uporabe slike
Pogledajmo kako se gornji problemi rješavaju pomoću novog elementa. Sve primjere datoteka mogu se pronaći u ovom repozitoriju github.com/fetis/picture
Za testiranje primjera u ovom članku na radnoj površini trebat će vam ili Firefox Nighlty (podrška za slike je omogućena postavljanjem dom.image.picture.enable u about:config) ili Chrome Canary, ili Opera Developer. Na mobilni uređaj novi element može se testirati u Chrome Beta
Retina
Imamo sliku od 400x300 px koju također želimo lijepo prikazati pri 2x i 3x gustoći piksela. Da biste to učinili, pripremite još 2 slike, veličine 800x600 i 1200x900 i napišite sljedeći kod2x i 3x je deskriptori gustoće piksela, govore pregledniku da su te slike pripremljene za ovu gustoću, ako želite, možete je koristiti. Imajte na umu da oni ne prisiljavaju preglednik da koristi te slike, već ga samo pozivaju. Konačna odluka ostaje na njemu ovisno o drugim uvjetima, kao što je trenutna veza.
Atribut src u u ovom slučaju služi kao izvor slika za gustoću< 2 и фолбеком на случай, если браузер не поддерживает новый элемент.
Prilagodljivost
Zamislimo izgled koji ima jednu prijelomnu točku od 700px. Kada je veličina okvira za prikaz veća od 700 px, prikazujemo bočnu traku s desne strane, a veličina naše slike trebala bi biti 75% širine zaslona. Inače, bočna traka se nalazi na kraju stranice i slika bi trebala biti rastegnuta na punu širinu. Ovo je implementirano pomoću sljedećeg koda400w, 800w, 1200w - ovo su deskriptori širine, govore pregledniku širine slike dati URL i na temelju tih informacija preglednik odlučuje koja je slika najprikladnija za trenutna situacija. Kao i u slučaju mrežnice, informacije su savjetodavne prirode i konačna odluka o tome koju sliku učitati ostaje na pregledniku.
Nije dopuštena istovremena uporaba deskriptora gustoće i širine.
Atribut sizes navodi veličine slika za sve kontrolne točke u našem dizajnu. Prijelomne točke postavljene su u obliku regularnog medijskog izraza, preglednik uzima prvu, koja vraća True i ne razmatra dalje lanac. Vrijednost širine koristi novu jedinicu duljine vw, koja vraća vrijednost kao postotak širine okvira za prikaz.
Ako nema potrebe za slikom za korištenje kontrolne točke, onda se unos može skratiti na ovaj sizes="100vw" . A za složenije dizajne možete koristiti Izračun CSS funkcije(), Na primjer
sizes="(max-width: 30em) 100vw, (max-width: 50em) 50vw, calc(33vw - 100px)"
Najteža osobina za ponašanje po mom mišljenju. Ako ne navedete veličine, tada preglednik uvijek odabire najviše velika slika. U kombinaciji sa širinom ne radi, iako bi se činilo logična kombinacija i niz drugih propusta. Možda su to značajke rane implementacije.
Kao što vidite, već smo pokrili 80% potreba prilagodljivi raspored, a nikada prije niste koristili sliku, vrijeme je da i ona uđe u igru.
Format
Korištenje raznih formata za slike malo se razlikuje od metoda koje se koriste za video ili audio oznakeNavodimo popis izvora i mime/tip za svaki, a preglednik već odabire prvi koji poznaje. Slika iz atributa src koristi se kao zamjena.
Obrezivanje
Kada fotografiju prikazujemo na manjem ekranu, ponekad ima smisla odrezati nepotrebne detalje i ostaviti samo glavni dio. Medijski atribut pomoći će nam da se nosimo s ovim zadatkom.U svakom medijskom atributu navodimo medijski izraz, u kojem će se izvorna slika promijeniti i, za razliku od prethodnih primjera, preglednik će dužan slijedite ga. Obratite pozornost i na to kako je obrezivanje ovdje kombinirano s odzivom kako bi se slika razvukla do njezine pune širine.
RAFC
A sada sve 4 metode u jednoj boci :) Možda će ovako izgledati umetanje slika za par godina (primjer s Opera bloga)2 se ovdje koriste JPEG format i WebP. Kada je širina zaslona veća od 1280 px, slika u punoj veličini prikazuje se u polovici okvira za prikaz. Uz širinu od 640 do 1279, obrezana fotografija prikazuje se na 60% širine okvira za prikaz. Kada je širina zaslona manja od 640 piksela, obrezana fotografija prikazuje se u 100% širini. Odabir za trenutni DPI zaslona vrši se na temelju širine izvornih datoteka.
- Nije pronađen opis za element 'yml_catalog'. Korijenski element je možda netočno naveden.
- Fatalna pogreška: Pogreška analize XML-a: Pogreška analize XML feeda: Nepoznata oznaka: XML oznaka "b" (string...
- Nedostaje potreban element slike
- Pogreška XML specifikacije. Uskladite svoj cjenik s tehnički zahtjevi odabrani format...
- Nema potrebnih parametara ponude
Pogreška je očito uzrokovana činjenicom da se XML uopće ne generira ili ste Yandexu dali netočnu vezu na YML. Da biste pronašli uzrok pogreške, otvorite poveznicu na svoj YML u pregledniku.
Došlo je do pogreške tijekom procesa generiranja YML-a. PHP je izbacio poruku o pogrešci, a to radi u oznaci "b". Otvoriti izvorni kod YML, po broju retka možete lako pronaći PHP tekst pogreške. Ako ne znate što to znači, potražite na Googleu. Siguran sam da ćete pronaći preporuke za uklanjanje ove pogreške.
Prema pravilima Yandex.Marketa, izvezeni proizvod mora imati barem jednu sliku. Proizvodi bez slike se ne izvoze. Provjerite postoji li u postavkama modula u polju “Broj slika proizvoda” broj veći od nule. Provjerite imaju li proizvodi u bazi podataka trgovine slike.
Pogrešku uzrokuje prisutnost nepotrebnih oznaka u YML izvozu. To se događa ako izvozite nešto u oznaku ključnih riječi. Yandex ne treba ovu oznaku. Navedite u postavkama modula "Uzmi oznaku ključnih riječi iz polja" = "Ne istovaraj"
Greška kaže da YML nije pronađen traženi parametar ponudu proizvoda. Za odjeću, obuću i dodatke, boja i veličina proizvoda moraju biti prisutni u YML-u. Po retku gdje se pojavila greška možete saznati koji proizvod nema navedenu boju i/ili veličinu. Za ovaj proizvod u OpenCartu trebate navesti atribut ili opciju koju će modul eksportirati u YML. Provjerite ovaj atribut ili opciju u postavkama modula.
Pogreške koje se pojavljuju u pregledniku
- Greška 500 ili 502" prilikom otvaranja YML-a u pregledniku Loš pristupnik", ili samo bijeli ekran.
- Pogreška analize XML-a: korijenski element nije pronađen
- Greška "Prekoračeno maksimalno vrijeme izvršenja od 30 sekundi"
- Ne izvozi se sva roba.
Skripta koja generira YML dovršena je s pogreškom. Postavke vaše stranice su takve da se pogreške ne prikazuju. Morate omogućiti prikaz pogreške. Omogućavanje grešaka u postavkama trgovine u OpenCart administratoru najvjerojatnije neće biti dovoljno. Prikaz pogreške mora biti omogućen u datotekama .htaccess i php.ini. Ali ovo možda neće biti dovoljno. Hosting stranice može biti konfiguriran na takav način da te datoteke ne utječu na ispis pogreške. Najbolje što možete učiniti je kontaktirati tehnička podrška hosting.
Skripta koja generira YML dovršena je s pogreškom. U ovom slučaju YML nije u potpunosti formiran - nema završnih oznaka. Pogledajte YML izvorni kod. Ako se na kraju pojavi poruka o pogrešci, potražite tekst pogreške u Yandexu ili Googleu. Ako nema poruke o pogrešci, pogledajte prethodni paragraf.
Prema zadanim postavkama, PHP skripti je dano 30 sekundi da se izvrši. Ako skripta nije generirala YML unutar 30 sekundi, tada je skripta prisilno prekinuta. Naravno, JML nije formiran, ili nije do kraja formiran.
Činjenica je da je izvoz cjelokupne robne baze prilično resursno intenzivna operacija. Skaliranje slika za Yandex traje posebno dugo, jer Yandex prihvaća slike veličine ne manje od 600x600 piksela. Srećom, OpenCart pohranjuje skalirane slike u predmemoriju slika. Prilikom ponovnog izvoza, slike će brzo biti preuzete iz predmemorije. Dok se predmemorija slike u potpunosti ne formira, YML izvozna skripta može potrajati dugo da se dovrši. Pokušajte pokrenuti skriptu nekoliko puta, formirat će se predmemorija, skripta će se izvoditi brže, padajući unutar vremenskog ograničenja.
Ako ovo ne pomogne, vrijeme generiranja YML-a još je dugo (zbog činjenice da imate mnogo proizvoda), tada možete pokušati povećati parametar max_execution_time u datoteci PHP postavke php.ini.
Ako to nije dovoljno (vaš hosting je prilično slab za online trgovinu s takvom bazom proizvoda), onda možete pokušati generirati YML izvoz pokretanjem skripte kroz php-cli.
Pitanja o YML sadržaju
Može postojati nekoliko razloga zašto nisu svi proizvodi prisutni u YML izvozu. Uobičajeni uzrok- postavke modula i sadržaj baze proizvoda.
- Proizvodi nemaju navedenog proizvođača, ali u kartici postavki modula “Što izvoziti” odabiru se proizvođači.
- Proizvodi nemaju glavne kategorije, ali potvrdni okvir "Proizvodi imaju glavne kategorije" označen je na kartici "Općenito".
- Proizvod je na crnoj listi ili nije na bijeloj listi, što je navedeno na kartici "Što izvoziti" u postavkama modula.
- Polja "Istovari samo ako je roba skuplja", "Nemoj istovariti ako je roba skuplja" ili potvrdni okvir "Nemoj istovariti robu bez slika" u kartici "Što izvoziti" isključuje robu iz one koja se izvozi.
- Proizvoda nema na skladištu, a status mu je "Nema na skladištu" tako da se proizvod ne izvozi. Za izvoz artikla kojeg nema na zalihi, u kartici “Skladište i dostava” u postavkama modula, nemojte odabrati status u polju “Status Nema na zalihi”.
U OpenCartu jedan proizvod može biti prikazan u više kategorija, te u YML format proizvod može pripadati samo jednoj kategoriji. Modul izvoza dodjeljuje proizvod prvoj dostupnoj kategoriji. Stoga se može ispostaviti da u nekim kategorijama nema robe, a te kategorije neće biti prisutne u izvozu, iako će roba biti prisutna, iako u drugim kategorijama.
ocStore ima glavne kategorije, a proizvode možete povezati samo s glavnim kategorijama. Da biste to učinili, u postavkama modula označite okvir "Proizvodi imaju glavne kategorije." U tom slučaju dobit ćete detaljniju klasifikaciju robe u YML izvozu, ali roba za koju nije navedena glavna kategorija neće se uopće izvoziti.
Kako napraviti...?
- Kako ne izvesti proizvod koji ima nultu količinu?
U postavkama modula u kartici "Skladište i dostava" potražite polje "Status "Nema na zalihi"". U ovom polju označite Sve statuse proizvoda. Za označavanje više stavki popisa, držite tipku Ctrl dok kliknete mišem.
Razvoj u jezicima: PHP, JavaScript, node.js. Baze podataka: MySQL, PostgreSQL, MongoDB.
Poboljšanje CMS-a: OpenCart, PrestaShop, Wordpress. Integracija sa: sustavi plaćanja, VKontakte, Facebook, Yandex.
Nastavljamo seriju članaka o postavljanju dinamičkih pretraživačkih kampanja (Dynamic Search Ads). Ranije sam pisao o DSA za Google Ads. Danas ćemo pogledati elemente i primjere feedova za Yandex.Direct.
Feed proizvoda— datoteka s podacima o svim proizvodima na stranici i njihovim atributima (jedinstveni identifikatori, poveznice na proizvode i njihove slike).
Kategorije feedova u Yandex.Directu
U usluzi su dostupne sljedeće kategorije feedova:
- "Maloprodaja".
- "Hoteli".
- "Nekretnina".
- "Automobili".
- "Zrakoplovne karte."
Kako pripremiti feed za “Maloprodaju”
Stvorite feed u YML formatu. Svaki XML dokument može sadržavati samo jedan korijenski element.
YML format koristi element kao korijen
Kako izraditi feed za "Hotele"
Za vrstu poslovanja Hoteli možete koristiti Google Ads feed Hotels & Rentals (CSV format). Sadržaji stupaca odvojeni su zarezom. Podaci u feedu moraju biti u UTF-8 kodiranju.
Element |
Opis |
ID hotela. Potreban element. |
|
Ime hotela. Potreban element. |
|
URL stranice ponude. Potreban element. |
|
Naziv odredišta |
Lokacija hotela (maks. 25 znakova). Potreban element. |
Ponuđena cijena. Broj i šifra valute u ISO 4217 kodiranju Koristite točku (.) kao decimalni razdjelnik. Preporučena stavka. |
|
Broj zvjezdica. Cijeli broj od 1 do 5. |
|
Ocjena korisnika, broj. Koristite točku (.) kao decimalni razdjelnik. |
|
Maksimalni mogući rezultat, cijeli broj. Zadano je 5. |
|
Hotelske usluge. Navedite vrijednosti odvojene točkom i zarezom: bar; bazen; besplatan Wi-Fi. |
Vrijednosti stavite zarezima u navodnike ("").
Kako pripremiti feed za “Nekretnine”
U elementu se nalazi popis ponude nekretnina oglašivača
U jednom feedu možete prenijeti informacije o stambenim kompleksima različitih programera. Da biste to učinili, naznačite u svakom
Element |
Opis |
Potreban element. |
|
Vrsta transakcije. Značenje je samo "prodaja". Potreban element. |
|
Skup elemenata koji opisuju položaj objekta. Ugniježđene oznake sadrže detalje informacija o adresi objekta. |
|
Naziv lokaliteta. Potreban element. |
|
naziv podlokaliteta |
|
Najbliža metro stanica. Ako postoji više stanica, svaka mora biti navedena u zasebni element. Navedite detaljne informacije u podoznakama. |
|
vrijeme u transportu |
Vrijeme do metroa u minutama prijevozom. |
Potreban element. |
|
Potreban element. |
|
Skup elemenata koji opisuju vrijednost objekta. Ugniježđene oznake sadrže cijenu i valutu u kojoj je navedena cijena: |
|
Naziv stambenog kompleksa. Na temelju ovog elementa stanovi se spajaju u stambene komplekse. Ako je naziv stambenog kompleksa nepoznat, navedite ulicu i kućni broj (na primjer, Pushkinskaya, 25). Potreban element. |
|
Podaci o programeru. Navedite detaljne informacije u podoznakama. |
|
Puno ime pravna osoba programer. Potreban element. |
|
Ukupna površina. Vrijednost površine i jedinica prosljeđuju se u ugniježđenim oznakama. |
|
Jedinica površine prostorije. Element se koristi ako je cijena izražena po jedinici površine. Moguće vrijednosti: “kv. m"/"kv. m". |
|
Feedovi s ponudama nekretnina za iznajmljivanje nisu prihvaćeni.
Kako stvoriti feed za "Automobile"
Element |
Opis |
ID ponude proizvoda. Obavezan element ako ne postoji element vin. |
|
Marka automobila. |
|
Naziv modela. Potreban element. |
|
Naziv izmjene. Potreban element. |
|
Potreban element. |
|
Potreban element. |
|
Tip tijela. Potreban element. |
|
Godina izdanja. Potreban element. |
|
Cijena automobila. Potreban element. |
|
Valuta u kojoj je navedena cijena. |
|
VIN broj (17 znakova). |
Primjer feeda:
Kako pripremiti feed za “Avio karte”
Element |
Opis |
URL stranice ponude. Potreban element. |
|
Obavezan element (za pametne bannere). |
|
Ponuđena cijena. Broj i šifra valute u ISO 4217 kodiranju Koristite točku (.) kao decimalni razdjelnik. |
|
ID odredišta. Potreban element. |
|
ID podrijetla. |
|
Naziv odredišta |
Naziv odredišta. Potreban element. |
Naziv mjesta polaska. |
Kako dodati feed
Da biste dodali feed u Yandex.Direct, idite na sučelje koristeći vezu "Feeds" na dnu ispod kampanja.
Zatim kliknite "Dodaj feed".
Kako dodati feed pomoću veze
Za objavljivanje na stranici, veličina feeda ne smije prelaziti 512 MB. Jednom dnevno, feed preuzima robot i uvozi ga u Yandex.Direct. Prilikom generiranja dinamičkih oglasa, robot jednom dnevno ili češće, ako je moguće, provjerava feed kako bi odabrao ponudu proizvoda pomoću navedenih filtara.
Datoteci mora biti dostupno putem HTTP protokol, HTTPS ili FTP. Koristite autorizaciju za pristup.
Ako veze u vašem feedu sadrže UTM oznake koje nisu prikladne za praćenje reklamna kampanja, preporučujem da ih uklonite. Da biste to učinili, označite potvrdni okvir "Automatski ukloni UTM oznake". Nove UTM oznake možete dodati na stranici za uređivanje grupe oglasa.
Kako dodati datoteku feeda
Odaberite datoteku koju trebate prenijeti. Veličina učitane datoteke ne smije biti veća od 512 MB. Prilikom ažuriranja, datoteku preuzima robot, a novi podaci se uvoze u Yandex.Direct.
Svoj feed možete smjestiti u arhivu stvorenu korištenjem algoritma za kompresiju ZIP (.zip ekstenzija) ili GNU ZIP (.gz ekstenzija).
Ako prilikom dodavanja feeda dogodila se greška(npr. veličina feeda/format/veza ne ispunjava zahtjeve), vidjet ćete status "Pogreška prijenosa". Za pregled izvješća o pogrešci slijedite poveznicu "Više detalja".
Kako funkcionira provjera valjanosti feedova?
Provjera valjanosti - due diligence usklađenost.
Provjerite uvjete prilikom čitanja datoteke:
- svi potrebni elementi su prisutni;
- svi nazivi elemenata su ispravni;
- Svaki se element pojavljuje najviše jednom.
Ako bilo koji od ovih uvjeta nije ispunjen, datoteka se odbija.
Zaključak
Pregledali smo sve opcije i formate feedova za postavljanje dinamičkih kampanja u Yandex Directu.
Da vas podsjetim, za ispravno stvaranje feed:
- Odredite svoju vrstu poslovanja.
- Prilagodite svoj feed prema vrsti poslovanja.
Savjet: što je više polja ispunjeno u feedu, to bolji sustav moći će identificirati željenog korisnika. - Prenesite feed na svoj račun Yandex.Direct.
U sljedećem ću vam članku pokazati kako postaviti kampanje koje ciljaju sadržaj web-lokacije i feedove stranica.