2010-09-14 8 views
2

J'utilise le widget sélecteur de couleurs jpicker avec mon thème. A l'intérieur du fichier js j'ai dû hardcode la référence à l'images de jpicker dossier comme si ...Comment modifier un chemin codé en dur vers un chemin dynamique en javascript?

images:{clientPath: '../wp-content/themes/MyThemeFolder/js/jPicker/images/', 

je voudrais refaire ce par plus dynamique dans le cas où l'utilisateur change le nom du dossier thématique .

Des idées? Analyse d'URL?

MISE À JOUR: Voici ce que je devais faire pour le résoudre ...

intérieur functions.php et juste avant le script js est inclus, je mis ce ...

<script type="text/javascript"> 
<?php echo 'var myThemePath="../wp-content/themes/'.get_option("template").'/js/jPicker/images/"';?> 
</script> 

Ensuite, , dans le fichier .js, je ne la remplacerai sur le chemin du répertoire hardcoded pour que cette ...

images:{clientPath: '../wp-content/themes/MyThemeFolder/js/jPicker/images/', 

Devient cette ...

images:{clientPath: myThemePath, 

Répondre

1

Ce que je veux faire est de sauver l'URL racine web (ou un dossier média/ressources URL ou autre) dans une variable globale JS avant d'inclure des scripts externes:

<script type="text/javascript"> 
my_project_web_root = "http://example.com"; 
</script> 

et l'utiliser dans tous postérieurs Scripts:

images:{clientPath: my_project_web_root+'/wp-content/themes/MyThemeFolder/...' 
+0

Merci pour la réponse rapide Pekka. Dans cet exemple, je distribue mon thème aux utilisateurs finaux, donc je ne connaîtrai pas l'URL du site afin de définir la racine web. Je suis à la recherche d'une méthode complètement dynamique :) –

+0

@Scott je vois! Est-ce que le chemin relatif ne fonctionne pas alors? Peut-être que vous aurez besoin d'ajouter plus de détails sur ce qui est relatif à où. –

+0

@pekka, je pense que je dois clarifier ce que je cherche. J'ai juste besoin d'un moyen de remplacer "MyThemeFolder" par une valeur générée dynamiquement pour le représenter. Si je code en dur le nom du dossier de thème, le script se casse si l'utilisateur décide de changer le nom du dossier de thème. –

Questions connexes