У меня есть vast player
, который принимает только один файл, например: https://www.example.com/vast-vid1.xml
Но я хотел бы повернуть несколько объявлений на нем, добавив несколько новых блоков <Creative>
для каждого ad
.
Изначально я безуспешно пытался использовать php
внутри файла xml
следующим образом:
<?php
$block[1] = array('block' => 'https://www.example.com/vast-vid1.xml', 'percent' => 50);
$block[2] = array('block' => 'http://www.example.com/vast-vid2.xml', 'percent' => 50);
$percent_arr = array();
foreach($block as $k => $_l) {
$percent_arr = array_merge($percent_arr, array_fill(0, $_l['percent'], $k));
}
$random_key = $percent_arr[mt_rand(0,count($percent_arr)-1)];
$theblock = $block[$random_key]['block'];
/// eof rotate block's
echo $theblock ;?>
Но я также открыт для новых идей о том, как заставить это работать.
Вот мой .xml
файл :
<?xml version='1.0' encoding='UTF-8'?>
<VAST version="3.0">
<Ad id="001">
<InLine>
<AdSystem> AD Name </AdSystem>
<Error><![CDATA[/out/link]]></Error>
<AdTitle> Campaign ID 12345</AdTitle>
<Impression><![CDATA[https://www.example.com]]></Impression>
<Creatives>
<Creative>
<Linear>
<Duration> 00:02:29 </Duration>
<VideoClicks>
<ClickThrough><![CDATA[/out/link]]></ClickThrough>
<ClickTracking><![CDATA[/out/link]]></ClickTracking>
</VideoClicks>
<MediaFiles>
<MediaFile id="001" delivery="progressive" type="video/mp4" width="854" height="480"><![CDATA[http://www.html5videoplayer.net/videos/toystory.mp4]]></MediaFile>
</MediaFiles>
</Linear>
</Creative>
</Creatives>
</InLine>
</Ad>
</VAST>
Это другой <creative>
пример блока, который я хотел бы добавить при вращении :
<Creative>
<Linear>
<Duration> 00:02:30 </Duration>
<VideoClicks>
<ClickThrough><![CDATA[/out/link]]></ClickThrough>
<ClickTracking><![CDATA[/out/link]]></ClickTracking>
</VideoClicks>
<MediaFiles>
<MediaFile id="001" delivery="progressive" type="video/mp4" width="854" height="480"><![CDATA[http://www.html5videoplayer.net/videos/madagascar3.mp4]]></MediaFile>
</MediaFiles>
</Linear>
</Creative>