web-dev-qa-db-fra.com

Le code de widget ne fonctionne pas sur les blogs hébergés sur WordPress.com

J'ai développé un widget JavaScript qui fonctionne bien lorsque je l'intègre dans l'une de mes pages html. Le code est quelque chose comme ça

<script type="text/javascript" charset="utf-8">
  var asset_Host = 'http://domain.com';
  var url = unescape("%3Cscript src='" + asset_Host + "/javascripts/widget.js' type='text/javascript'%3E%3C/script%3E");
  document.write(url);
</script>

<script type="text/javascript" charset="utf-8">
  var widget_options = {};
  widget_options.iframe_base_url =  asset_Host + '/widget/questions/10';
  var feedback_widget = new ShowWidget.widget(widget_options);
</script>

Cependant, lorsque j'intègre ce code dans wordpress, la balise "style" est supprimée (probablement pour des raisons de sécurité).

Comment devrais-je générer le code de widget pour wordpress afin que les utilisateurs aient le moins d'inconvénients?.

1
Nick Vanderbilt

WordPress.com ne vous permet pas de poster du javascript.

De l'assistance WordPress.com:

Les utilisateurs ne sont pas autorisés à publier du code JavaScript sur des blogs WordPress.com. JavaScript peut être utilisé à des fins malveillantes. Par exemple, JavaScript a supprimé des sites tels que MySpace.com et LiveJournal par le passé. La sécurité de tous les blogs est une priorité absolue et jusqu'à ce que nous puissions garantir que les langages de script ne seront pas dangereux, ils ne seront pas autorisés.

Le code JavaScript de partenaires de confiance, tels que YouTube et Google Video, est converti en un shortcode WordPress lors de la sauvegarde d'un article.

3
Chris_O

Je suppose que vous parlez de widget au sens général et non Widget WordPress .

Sous quelle forme souhaitez-vous offrir votre widget aux utilisateurs de WordPress?

  • un extrait JS simple peut fonctionner s'il est utilisé dans le texte Widget WordPress ou dans le contenu de publication/page, mais risque également d'être endommagé. La plupart des entrées/sorties dans WP sont fortement gommées pour des raisons de sécurité;
  • vous pouvez l'envelopper dans PHP comme fonction d'extrait pour functions.php;
  • vous pouvez le packager comme un plugin complet et proposer une utilisation comme appel de fonction ou shortcode .

Aussi wp_enqueue_script() est une lecture obligatoire pour travailler avec JS dans WP.

Tout dépend de la façon dont vous voulez y faire face, de vos PHP compétences de votre cible WP (moins ils sont avertis, plus vous devrez en prendre en charge). .

0
Rarst