web-dev-qa-db-fra.com

Ajout d'un code CSS, JS et HTML à un bloc

Utilisation de Drupal 7.2 J'ai ajouté avec succès une bannière Google Adsense à mon site Web en créant un nouveau bloc avec admin/structure/bloquer/ajouter et mettre le code de Google en "HTML brut" (ajout du premier format "HTML brut" dans admin/config/content/formats/add ) là:

<script type="text/javascript"><!--
google_ad_client = "XXX";
/* block1 */
google_ad_slot = "YYY";
google_ad_width = 160;
google_ad_height = 600;
//-->
</script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>

Maintenant, j'essaie d'ajouter un autre bloc contenant n bouton Like par le réseau social russe Odnoklassniki.ru:

Like

Mon problème est - ils veulent que j'ajoute:

Tête:

<link href="http://stg.odnoklassniki.ru/share/odkl_share.css" rel="stylesheet">
<script src="http://stg.odnoklassniki.ru/share/odkl_share.js" type="text/javascript"></script>

<style type="text/css">
.odkl-klass, .odkl-klass:hover {background:none;}
.odkl-klass {background: url(/images/128x128.png) no-repeat;}
</style>

Corps:

<a class="odkl-klass-stat" href="http://preferans.de" onclick="ODKL.Share(this); return false;"><span>0</span></a>

Et appelez:

<body onload="ODKL.init();">

Comment pourrais-je le faire de la meilleure façon s'il vous plaît? (il serait bon de ne pas le mettre à jour à chaque fois que je mets à jour la Drupal)

Lorsque j'essaie simplement de mettre les 3 éléments répertoriés ci-dessus dans un bloc (comme je l'ai fait pour la bannière Google) - le bouton ne fonctionne pas.

4
Alexander Farber

Le lien et le script peuvent être ajoutés via drupal_set_html_head () head

drupal_set_html_head('<link href="http://stg.odnoklassniki.ru/share/odkl_share.css" rel="stylesheet"><script src="http://stg.odnoklassniki.ru/share/odkl_share.js" type="text/javascript" ></script>');

Les clics ne sont pas une bonne pratique dans Drupal. Les comportements sont utilisés à la place.

Donc, dans votre bloc, vous pouvez sortir

  <a class="odkl-klass-stat" href="http://preferans.de"><span>0</span></a>

Vous pouvez ensuite définir quelques comportements dans votre propre script, que vous pouvez mettre dans un fichier et ajouter en utilisant drupal_add_js ()

 Drupal.behaviors.my_module = function (context) {
   // This will load on page load
   ODKL.init();
   // This will attach a click handler to the links
   $('.odkl-klass-stat').click(function() {
   ODKL.Share(this);
   return false;
   }); 
 };
6
Jeremy French

http://drupal.org/project/cpn Code per Node est vraiment utile pour inclure Javascript et CSS dans des champs de texte séparés.

Regarde

3
WestieUK

Pour Adsense:

La solution qui a fonctionné pour moi est que j'ai utilisé le format de balises adsense, puis utilisé ce format pour diffuser des annonces sur le site. En fait, je désactivais les annonces pour l'administrateur et pour les autres utilisateurs, je recevais l'annonce vide avec un espace occupé sur la page, mais rien n'était affiché. Après différents réglages et expériences, j'ai obtenu le code suivant qui fonctionnait pour moi

[adsense: 336x280: XXXXXXXXXX]

Le deuxième paramètre correspond à la largeur x la hauteur. Le troisième paramètre: XXXXXXXXXX désigne l'espace publicitaire/l'identifiant Google.

J'espère que cela aidera les autres.

1
Ata ul Mustafa

Rapide et sale. Mettez cela dans le bloc:

<link href="http://stg.odnoklassniki.ru/share/odkl_share.css" rel="stylesheet">
<script src="http://stg.odnoklassniki.ru/share/odkl_share.js" type="text/javascript" ></script>
<script type="text/javascript" >window.onload=ODKL.init();</script>
<a class="odkl-klass-stat" href="http://preferans.de" onclick="ODKL.Share(this); return false;"><span>0</span></a>

Sale pourquoi? parce que les meilleures pratiques disent de mettre le CSS dans le <head> pour être du HTML valide, les scripts dans le pied de page pour des raisons de performances, etc. Mais cela fonctionnera.

La meilleure façon de le faire est d'activer PHP et d'utiliser drupal_add_js, drupal_add_css fonctions, etc., ou créez un module très simple Drupal, uniquement avec un hook_init pour ajouter les js, css puis le bloc ne contiendra que l'élément a.

1
corbacho

Le lien et le script peuvent être ajoutés via drupal_set_html_head() head

drupal_set_html_head('<link href="http://stg.odnoklassniki.ru/share/odkl_share.css" rel="stylesheet"><script src="http://stg.odnoklassniki.ru/share/odkl_share.js" type="text/javascript" ></script>')

Le lien et le script peuvent être ajoutés via drupal_set_html_head() head

drupal_set_html_head('<link href="http://stg.odnoklassniki.ru/share/odkl_share.css" rel="stylesheet"><script src="http://stg.odnoklassniki.ru/share/odkl_share.js" type="text/javascript" ></script>')
0
hhhvv