Bonjour,
Est-il possible de reproduire dans une css le code équivalent à :
[(#TITRE|image_typo{police=stencil.ttf})]
Car je voudrais traiter mes intertitres (h3.spip) avec une image.
merci !
dd
Bonjour,
Est-il possible de reproduire dans une css le code équivalent à :
[(#TITRE|image_typo{police=stencil.ttf})]
Car je voudrais traiter mes intertitres (h3.spip) avec une image.
merci !
dd
dd <lemotjuste@free.fr> wrote:
Bonjour,
Est-il possible de reproduire dans une css le code équivalent à :
[(#TITRE|image_typo{police=stencil.ttf})]
Car je voudrais traiter mes intertitres (h3.spip) avec une image.
avec une css je ne pense pas mais avec un filtre sur #TEXTE filtre
utilisant une expression rationnelle pour remplacer les <h3
class='spip'>xxx</h3> par une image typo
function fabrique_image($h3){
return produire_image_typo($h3, $police='stencil.ttf');
}
function h3_typo($text) {
$text = reg_replace_callback( '`<h3
class=\'spip\'>(.*)</h3>`/ui' , $fabrique_image , $text);
return $text;
}
et dans tes squelettes utiliser le filtre [(#TEXTE|h3_typo)]
Pas testé mais un truc du genre devrait marcher.
je ne suis pas certain de la façon d'invoquer produire_image_typo, si
quelqu'un peut corriger évetuellement.
--
http://wojylac.free.fr
Un proverbe chinois dit que lorsqu'on a rien à dire
on cite généralement un proverbe chinois.
dd a écrit :
Est-il possible de reproduire dans une css le code équivalent à :
[(#TITRE|image_typo{police=stencil.ttf})]
il est toujours possible de faire :
<div style="background-image: url([(#TITRE|image_typo{police=stencil.ttf}|extraire_attribut{src})]);">
bla
</div>
dans une feuille de style externe, prévoir de la nommer et de l'appeler correctement avec les arguments nécessaires.
Dominique a écrit :
avec une css je ne pense pas mais avec un filtre sur #TEXTE filtre
utilisant une expression rationnelle pour remplacer les <h3
class='spip'>xxx</h3> par une image typofunction fabrique_image($h3){
return produire_image_typo($h3, $police='stencil.ttf');
}function h3_typo($text) {
$text = reg_replace_callback( '`<h3
class=\'spip\'>(.*)</h3>`/ui' , $fabrique_image , $text);
return $text;
}et dans tes squelettes utiliser le filtre [(#TEXTE|h3_typo)]
Pas testé mais un truc du genre devrait marcher.
je ne suis pas certain de la façon d'invoquer produire_image_typo, si
quelqu'un peut corriger évetuellement.Merci de ta réponse rapide,
mais cela retourne une erreur et je vaux 0 en code donc je ne sais pas ce qui cloche :
Fatal error: Call to undefined function reg_replace_callback() in /home/dd/www/site/squelettes/mes_fonctions.php on line 10
dd
Le 30 août 2009 19:18, dd<lemotjuste@free.fr> a écrit :
Merci de ta réponse rapide,
mais cela retourne une erreur et je vaux 0 en code donc je ne sais pas ce
qui cloche :Fatal error: Call to undefined function reg_replace_callback() in
/home/dd/www/site/squelettes/mes_fonctions.php on line 10
Peut-être la version de php utilisée
preg_replace_callback :
(PHP 4 >= 4.0.5, PHP 5)
--
@plus
Jacques
Pour les lyonnais++ spip-lyon@rezo.net http://spip-party.net/-Lyon-
dd <lemotjuste@free.fr> wrote:
Dominique a écrit :
> avec une css je ne pense pas mais avec un filtre sur #TEXTE filtre
> utilisant une expression rationnelle pour remplacer les <h3
> class='spip'>xxx</h3> par une image typo
>
> function fabrique_image($h3){
> return produire_image_typo($h3, $police='stencil.ttf');
> }
>
> function h3_typo($text) {
> $text = reg_replace_callback( '`<h3
> class=\'spip\'>(.*)</h3>`/ui' , $fabrique_image , $text);
> return $text;
> }
>
> et dans tes squelettes utiliser le filtre [(#TEXTE|h3_typo)]
>
> Pas testé mais un truc du genre devrait marcher.
> je ne suis pas certain de la façon d'invoquer produire_image_typo, si
> quelqu'un peut corriger évetuellement.
>
> Merci de ta réponse rapide,mais cela retourne une erreur et je vaux 0 en code
C'est l'occasion de s'y mettre...
donc je ne sais pas ce qui cloche :
Fatal error: Call to undefined function reg_replace_callback()
in /home/dd/www/site/squelettes/mes_fonctions.php on line 10
Quelques corrections après vérification ....
C'est bien la fonction preg_replace_callback (manquait le p...)
function fabrique_image($h){
return produire_image_typo($h[1], $police='stencil.ttf');
}
function h3_typo($text) {
$text = preg_replace_callback(
'`<h3 class=\'spip\\'>(.*)</h3>`/Ui' , 'fabrique_image' , $text);
return $text;
}
Il faut aussi probablement échapper aussi l'anti-slash dans class='spip'
(vérifier si c'est une apostrophe ou un guillemet dans ce qui est généré
dans le code par spip et adapter en conséquence).
dans ce cas '`<h3 class="spip">(.*)</h3>`/Ui' devrait le faire comme
motif
--
http://wojylac.free.fr
Un proverbe chinois dit que lorsqu'on a rien à dire
on cite généralement un proverbe chinois.
Dominique <dwojylac@free.fr> wrote:
Quelques corrections après vérification ....
C'est bien la fonction preg_replace_callback (manquait le p...)function fabrique_image($h){
return produire_image_typo($h[1], $police='stencil.ttf');
}function h3_typo($text) {
$text = preg_replace_callback(
'`<h3 class=\'spip\\'>(.*)</h3>`/Ui' , 'fabrique_image' , $text);
return $text;
}Il faut aussi probablement échapper aussi l'anti-slash dans class='spip'
(vérifier si c'est une apostrophe ou un guillemet dans ce qui est généré
dans le code par spip et adapter en conséquence).
dans ce cas '`<h3 class="spip">(.*)</h3>`/Ui' devrait le faire comme
motif
Après quelques tests voilà ce qui fonctionne
dans mes_fonctions.php
function fabrique_image_h3($h){
$arg1 = 'police=stencil.ttf';
$arg2 = 'taille=24';
// $arg3 = 'couleur='; au besoin modif en conséquence ci-dessous
// adapter les arguments ci-dessous
return produire_image_typo($h[1], $arg1, $arg2);
}
function h3_typo($text) {
$text = preg_replace_callback('`<h3 class="spip">(.*)</h3>`Ui' ,
'fabrique_image_h3' , $text);
return $text;
}
et dans les squelettes : #TEXTE|h3_typo
Bon après on peut raffiner :
définir des globals dans mes_options par exemple...
ou définir un style particulier pour les images typo (pour leur
positionnement exemple)
dans ce cas remplacer :
return produire_image_typo($h[1], $arg1, $arg2);
par
return '<h3 class="h3_typo">'.produire_image_typo($h[1], $arg1,
$arg2).'</h3>';
--
Dominique
http://wojylac.free.fr