Twig met adf.ly

  • Hallo,


    Ik en een vriend van me zijn bezig aan een projectje. Dit project is geschreven in Twig (http://twig.sensiolabs.org/) en we stuiten tegen een probleem waar we alle twee hoofdpijn van krijgen.


    Via adf.ly hebben we deze api URL=

    Code
    http://api.adf.ly/api.php?key=2ac56cfdbe09671b95b40da832dccddd&uid=10649767&advert_type=int&domain=adf.ly&url=

    Daarachter moet dus een variable URL komen. Echter staat in de twig view file van de theme het volgende:



    Code
    {{ siteUrl('/purchase/' ~ item.slug ~ '/' ~ item.id) }}

    De URL e.d. ervoor gaat wel, maar dan zien ze de adf.ly link. In feite willen we deze link dus gebruiken (met php gaat dat echter simpel met de functie file_get_contents. Echter lukt het ons niet om deze URL goed te krijgen.



    Dus wie kan ons helpen òf als je een andere shorter url site kent die ook geld geeft waar de api nog gemakkelijker is, is het altijd welkom.

  • Is de code die we hebben.


    Via de .twig file wordt:

    Code
    <a href="{{ siteUrl('/purchase/' ~ item.slug ~ '/' ~ item.id) }}"></a>

    opgeroepen om de link aan te maken.


    Met " http://api.adf.ly/api.php?key=…pe=int&domain=adf.ly&url= " wordt de api opgeroepen,
    dus als ik bv.
    http://api.adf.ly/api.php?key=…l=http://www.ferhat.rocks
    zou doen, gaat dit gewoon een link geven, bv. http://adf.ly/1L6jvW. Die link die ik dus kan zien via de API wil ik oproepen in de twig file.

  • Oowh nu snap ik wat je wilt hebben.


    Die ene link returnt een shortcut link die je dus wilt gebruiken?


    Je moet op de een of andere manier communiceren met de adf ly api om hem op te halen.


    Zoals jij zegt met file get contents kan dit. Of Curl of via cli shell_exec("wget %url%") etc etc.


    Als het iedere keer verandert op iemands input kan dit ook in de frontend met een ajax call.


    Hier heb je een voorbeeld functie: http://www.w3bees.com/2013/10/…rl-shortener-php-api.html


    Code voor als de link dood is:



    Die return't een url die jij aan de frontend kan gebruiken.


    Ps. Bedankt voor het uitgebreid beschrijven van je probleem!

  • Kort vraagje:
    als adfly een beetje slim is, dan gaan ze je niet betalen voor urls die je opent via file_get_contents of een andere server side call.


    1) Je roept ze altijd aan via hetzelfde ip
    2) Ze willen juist dat je hun site bezoekt, dat is het gene waar ze voor betalen ;)


    Wat je dan best kan doen is je links herschrijven met je eigen domein, bv ictscripters.com/link/123 en deze dan gewoon een 301 redirect laten doen naar de echte adfly link. Dan komen gebruikers toch kort op de adfly url zelf.

Participate now!

Heb je nog geen account? Registreer je nu en word deel van onze community!