2017-09-26 6 views
0

Je souhaite afficher plusieurs annonces sur des articles instantanés Facebook. J'ai trouvé ce code, que j'ai essayé manuellement et son fonctionnement.Comment ajouter plusieurs annonces dans Facebook Instant Articles utilisant wordpress plugin?

<section class="op-ad-template"> 

     <!-- Ads to be automatically placed throughout the article --> 

     <figure class="op-ad"> 
      <iframe src="https://www.mywebsite.com/ss;adtype=banner300x250&adslot=1" height="300" width="250"></iframe> 
     </figure> 

     <figure class="op-ad op-ad-default"> 
      <iframe src="https://www.mywebsite.com/ss;adtype=banner300x250&adslot=2" height="300" width="250"></iframe> 
     </figure> 

     <figure class="op-ad"> 
      <iframe src="https://www.mywebsite.com/ss;adtype=banner300x250&adslot=3" height="300" width="250"></iframe> 
     </figure> 

    </section> 

Maintenant j'essaie de rendre cela possible via Facebook Instant Article Plugin. Je n'ai trouvé aucune option de paramétrage pour ces annonces de type.

J'ai essayé de recherche sur Google et ne trouve rien, sauf ceci: https://developers.facebook.com/docs/instant-articles/sdk/transformer-rules

S'il vous plaît aidez-moi!

A. Comment ajouter plusieurs annonces en utilisant FB ARTICLE INSTANTANÉ PLUGIN dans wordpress?

B. Comment ajouter différents codes en utilisant FB INSTANT ARTICLE PLUGIN dans wordpress?

Répondre

0

Vous pouvez le faire en ajoutant le filtre instant_articles_transformed_element, afin de modifier l'en-tête en conséquence.

Ceci est généralement utilisé lorsque vous placez des unités Facebook Audience Network, mais si votre code manuel fonctionnait, le code suivant devrait fonctionner, bien que vous deviez peut-être jouer avec les variables de requête. Ajouter à functions.php les éléments suivants:

Au sommet de functions.php, ajoutez ceci:

use Facebook\InstantArticles\Elements\Ad; 

Et puis:

/** 
* Adds multiple units to the Instant Article 
* 
* @param Instant_Articles_Post $article 
* 
* @return Instant_Articles_Post 
*/ 
add_filter('instant_articles_transformed_element', function ($article) { 
     // Create the base ad 
     $ad = Ad::create() 
       ->withWidth(300) 
       ->withHeight(250) 
       ->enableDefaultForReuse(); 

     // Retrieve the header 
     $article->getHeader() 
       // Add the first ad 
       ->addAd(
         $ad->withSource(
           // This creates the URL https://www.mywebsite.com/ss;adtype=banner300x250;adslot=1 
           add_query_arg(
             array(
              'adtype' => 'banner300x250', 
              'adSlot' => '1', 
             ), 

             'https://www.mywebsite.com/ss' 
           ) 
         ) 
       ) 
       // Add the second ad 
       ->addAd(
         $ad->withSource(
           // This creates the URL https://www.mywebsite.com/ss;adtype=banner300x250;adslot=2 
           add_query_arg(
             array(
              'adtype' => 'banner300x250', 
              'adSlot' => '2', 
             ), 

             'https://www.mywebsite.com/ss' 
           ) 
         ) 
       ) 
       // Add the third ad 
       ->addAd(
         $ad->withSource(
           // This creates the URL https://www.mywebsite.com/ss;adtype=banner300x250;adslot=3 
           add_query_arg(
             array(
              'adtype' => 'banner300x250', 
              'adSlot' => '3', 
             ), 

             'https://www.mywebsite.com/ss' 
           ) 
         ) 
       ); 

     return $article; 
}); 

Avec ce code, le plugin prendra soin du reste, et il ajoutera automatiquement le code suivant à la section section:

<meta property="fb:use_automatic_ad_placement" content="enable=true ad_density=default"/> 

Il ajoutera également les éléments suivants juste avant la fermeture de l'en-tête :

<section class="op-ad-template"> 
       <figure class="op-ad op-ad-default"> 
       <iframe src="https://www.mywebsite.com/ss?adtype=banner300x250&amp;adSlot=1" width="300" height="250"></iframe> 
       </figure> 
       <figure class="op-ad"> 
       <iframe src="https://www.mywebsite.com/ss?adtype=banner300x250&amp;adSlot=2" width="300" height="250"></iframe> 
       </figure> 
       <figure class="op-ad"> 
       <iframe src="https://www.mywebsite.com/ss?adtype=banner300x250&amp;adSlot=3" width="300" height="250"></iframe> 
       </figure> 
</section> 
+0

Sa me montrant page blanche à l'extrémité avant de mon site et Facebook Options de l'article instantanée du poste sont juste montrant une icône de chargement. Je ne peux pas voir les informations de débogage ou quoi que ce soit d'autre. –

+1

Juste modifié ma réponse ... Vous devez ajouter ceci en haut de functions.php: utiliser Facebook \ InstantArticles \ Elements \ Ad; – luqita

+0

Génial! Maintenant, ça marche. Pouvez-vous m'expliquer ce code? Un peu s'il vous plaît :) Et merci! –