- Statut : non résolu
- Ce sujet contient 14 réponses, 6 participants et a été mis à jour pour la dernière fois par
BertrandB21, le il y a 13 années.
-
AuteurMessages
-
18 avril 2011 à 7 h 54 min #493995
Bonjour,
Ma configuration WP actuelle
– Version de WordPress : 3.1.1
– Version de PHP/MySQL : 5.3.6/5.5.10
– Thème utilisé : Mon Thème
– Nom de l’hebergeur : LocalProblème(s) rencontré(s) :
Je suis en train de crée mon propre thème. Dans mon fichier « style.css »
j’ai mis le code suivant :background-image:url(‘images/pattern.jpg’);
Les liens en relatif fonctionne.
Par contre dans les pages PHP je suis obligé de mettre les liens vers les images en absolue:
<img src="wp-content/themes/mon_theme/images/toto.png"/>
Y a t’il un moyen de mettre le chemin des images en relatif.
18 avril 2011 à 9 h 12 min #765827Resalut Pegase.
Au passage c’est relatif dans les deux cas.
Ma réponse ne va pas te plaire parce que ça ne va pas raccourcir l’écriture. Tu peux utiliser aussi la fonction bloginfo ()<img src="/images/toto.png » />
Pas bien avancé.
L’avantage de bloginfo ? Changement de thème, de nom de site, de répertoire wordpress… Par contre il faudra toujours avoir un répertoire images et un fichier toto.png dans ton thème.
Le codex ici pour avoir les paramètres.18 avril 2011 à 11 h 43 min #765828wasicu wrote:Pas bien avancé.
L’avantage de bloginfo ? Changement de thème, de nom de site, de répertoire wordpress… Par contre il faudra toujours avoir un répertoire images et un fichier toto.png dans ton thème.
Le codex ici pour avoir les paramètres.Si si, tu as résolus mon problème. C’était justement par rapport aux changement du nom du dossier du thème que je cherchais une solution.
Merci pour la réponse, sa m’arrange parfaitement. :rolleyes:18 avril 2011 à 15 h 01 min #765829Juste un tout petit problème. Je n’arrive pas à concaténer la fonction dans une autre fonction :
edit_post_link(‘<img alt="edit" />‘, ‘ | ‘, »);
Argg sa ne marche pas
18 avril 2011 à 15 h 31 min #765830Hehehehe. T’as oublié que c’est une fonction php la bloginfo.
Et puis en php, il est possible que » et ‘ ne soient pas interprétés de la même manière dans une fonction. Je ne suis pas un expert, loin de là. Donc revoir bloginfo(« »)
Mais c’est bien, j’ai du respect pour ton acharnement. Tu sais ce que tu veux.
Ne pas oublier non plus le ; après les fonctions.
Bon courage.18 avril 2011 à 15 h 47 min #765831dans ce contexte, ‘ et » sont pareils, cependant ils ne sont aussi performants.
pour info, wp-content/themes/mon_theme/images/toto.png est un chemin relatif, un chemin absolu ressemblerais à ça : http://www.tonsite.com/wp-content/themes/mon_theme/images/toto.png
18 avril 2011 à 16 h 08 min #765832Merci anthony.
18 avril 2011 à 16 h 13 min #765833si jamais tu veux en savoir plus à ce sujet, tu peux faire un tour ici : http://m-fernandez.developpez.com/articles/php/bench/#LII
🙂
18 avril 2011 à 16 h 21 min #765834Yep. Génial surtout l’article détaillé fournit en lien. Ca fait une grosse différence s’il y a des variables. Merci.
19 avril 2011 à 19 h 00 min #765836Bon j’ai trouvé une solution à mon problème.
La solution simple quant on a juste un balise img
<img src="/images/comment.png » alt= »commentaires » />
La sa ce complique car cet une balise img dans une fonction. J’utilise donc cette méthode:
<?php $image = '<img src="wp-content/themes/'.$nom_dossier_theme.'/images/edit.png" alt="edit" />‘;?>
La variable $nom_dossier_theme fait appel au préalable à une fonction:
$nom_dossier_theme = nom_dossier_theme();
Fonction ayant pour but de récupérer le nom du dossier de mon thème perso:
function nom_dossier_theme(){
$dir = array_reverse(explode(‘\’, dirname(__FILE__)));
return $dir[0];
}Et voila le tour est joué. Si vous avez trouvé plus simple, faites moi en part.
19 avril 2011 à 19 h 14 min #765835on peut déjà gagner un peu
<?php $image = '<img src="wp-content/themes/' . nom_dossier_theme() . '/images/edit.png" alt="edit" />‘;
sinon pour vous amusez
cherchez ce que fait$nom_dossier_theme = nom_dossier_theme;
echo « mon répertoire est {$nom_dossier_theme()} »;ça s’appelle la syntaxe complexe et couplé avec les Heredoc ça permet d’écrire diférement(tm) les pages html intégrant du php. Et ce de manière beaucoup plus lisible …
19 avril 2011 à 20 h 32 min #765837J’ai cru lire qu’il valait mieux un chemin en dur dans les thèmes pour éviter les requêtes inutiles (enfin pour un thème personnalisé).
20 avril 2011 à 17 h 13 min #765838je n’ai pas regader dans le Codex mais je suis sur qu’il y a une variable positionné pour le chemin du thème. Si c’est le cas comme je crois le payload n’est pas énorme pour l’indirection mis en place.
et bon sang qu’est ce que l’on peut gagner detemps humain en dépensant un peu de temps machine22 janvier 2012 à 17 h 14 min #765839Bonjour à tous,
Effectivement a résolu le même problème chez moi.
Cependant il m’a semblé voir qq part qu’indiquer clairement le nom du template dans le code source était dangereux (ça donne des indices aux hackeurs) d’où l’intéret de faire images/image.jpg
Qu’en pensez vous ?
Merci.23 janvier 2012 à 20 h 14 min #765840Que rien n’impose de respecter le nom du répertoire du thème (hormis pour les maj automatique)
et je ne suis pas certain que le thème soit une « faille » particulière. Où alors il faut qu’il soit vachement mal fichu.
Je n’en dirais pas autant des plugins. -
AuteurMessages
- Vous devez être connecté pour répondre à ce sujet.