(sans objet)

Bonjour tout le monde, j’ai bespon d’une petite fonction php et je ne me souvient plus trop si elle existe ou si C mon imagination qui me joue des tours.
Y a til une fonction qui prend une chaine de caractère de code spip,

EXEMPLE :fonction ("#TITRE_SITE")

et qui renvoi le code spip interprété :

exemple : " Mon site spip"

merci d’avance

Salut,

c'est confus

Soit tu cherches a afficher le titre de ton site. Auquel cas, tu peux utiliser la balise spip : #NOM_SITE_SPIP

soit tu veux utiliser un filtre ex : [(#NOM_SITE_SPIP|tonfiltre)]

et dans mes_fonctions.php, tu met :

<?php

function tonfiltre($texte) {
  <...ton code...>
  return $texte;
}

?>

Chag

Le cygne a écrit :

Bonjour tout le monde, j'ai bespon d'une petite fonction php et je ne me souvient plus trop si elle existe ou si C mon imagination qui me joue des tours.
Y a til une fonction qui prend une chaine de caractère de code spip,

EXEMPLE :fonction ("#TITRE_SITE")

et qui renvoi le code spip interprété :

exemple : " Mon site spip"

merci d'avance

------------------------------------------------------------------------

_______________________________________________
liste spip
spip@rezo.net - désabonnement : spip-off@rezo.net
Infos et archives : http://listes.rezo.net/mailman/listinfo/spip
Documentation de SPIP : http://www.spip.net/
irc://irc.freenode.net/spip
FAQ : http://www.spip-contrib.net/spikini/FaQ

--
"Ca ne marche pas" ne veut rien dire. Alors ne dites rien
"it doesn't work" means nothing. So, say nothing

non non non ( dsl à tous G oublier l’objet du mail )

je veut juste interprété du code spip mai en php. cela vien du fait que je veu utiliser le resultat du code dans des variables php + requete sql

Le 17/08/07, Le cygne <cygnepgm@gmail.com > a écrit :

Bonjour tout le monde, j’ai bespon d’une petite fonction php et je ne me souvient plus trop si elle existe ou si C mon imagination qui me joue des tours.
Y a til une fonction qui prend une chaine de caractère de code spip,

EXEMPLE :fonction (« #TITRE_SITE »)

et qui renvoi le code spip interprété :

exemple : " Mon site spip"

merci d’avance


liste spip
spip@rezo.net - désabonnement : spip-off@rezo.net
Infos et archives : http://listes.rezo.net/mailman/listinfo/spip
Documentation de SPIP : http://www.spip.net/
irc://irc.freenode.net/spip
FAQ : http://www.spip-contrib.net/spikini/FaQ

* Le cygne tapotait, le 17/08/2007 18:48:

non non non ( dsl à tous G oublier l'objet du mail )

je veut juste interprété du code spip mai en php. cela vien du fait que je veu utiliser le resultat du code dans des variables php + requete sql

Alors, cherche avec Google : spip php et javascript sont dans un bateau.

Tu peux faire
<?php
$mavar = [(#NOM_SITE_SPIP|texte_script)];
?>

--
RealET

oui je C mais cela bug a cause de luttilisation postérieur que je fait de $mavar . moi je veu une fonction qui traduise le spip sur le moment et on en parle plu après :smiley:

Le 17/08/07, RealET <real3t@gmail.com> a écrit :

  • Le cygne tapotait, le 17/08/2007 18:48:

non non non ( dsl à tous G oublier l’objet du mail )

je veut juste interprété du code spip mai en php. cela vien du fait que
je veu utiliser le resultat du code dans des variables php + requete sql
Alors, cherche avec Google : spip php et javascript sont dans un bateau.

Tu peux faire

<?php $mavar = [(#NOM_SITE_SPIP|texte_script)]; ?>


RealET


liste spip
spip@rezo.net - désabonnement : spip-off@rezo.net
Infos et archives : http://listes.rezo.net/mailman/listinfo/spip
Documentation de SPIP : http://www.spip.net/
irc://irc.freenode.net/spip
FAQ : http://www.spip-contrib.net/spikini/FaQ

* Le cygne tapotait, le 17/08/2007 19:05:

oui je C mais cela bug a cause de luttilisation postérieur que je fait de $mavar . moi je veu une fonction qui traduise le spip sur le moment et on en parle plu après :smiley:

Bon, mis à part que j'avais oublié les guillemets, je n'ai pas l'impression soit que tu t'exprime d'une manière que je comprenne, soit que tu ais lu l'article de SPIP contrib sur SPIP, php et javascript dans un bateau.

PS : les puristes te demanderaient aussi, pourquoi as-tu besoin de PHP ?
Tu peux pas faire un filtre ?

--
RealET

Le cygne a écrit :

oui je C mais cela bug a cause de luttilisation postérieur que je fait de $mavar . moi je veu une fonction qui traduise le spip sur le moment et on en parle plu après :smiley:

ben que tu fasses :
<?php
$x='[(#BALISE|texte_script)]';

//plein de trucs sur x

echo $x;
?>

ou

<?php
function toto($x){
//plein de trucs sur x
return $x
}

echo toto('[(#BALISE|texte_script)]');
?>

c'est pareil.

sauf que, comme le disait Jacques, il vaut mieux faire directement (sans PHP):

[(#BALISE|toto)]

avec la fonction toto dans mes_fonctions.php

comme ca, c'est le resultat qui est mis en cache, au lieu d'avoir le calcul de toto (et un eval de l'ensemble de la page) à chaque hit.

@++

Rhooo mais non!!
Une fonction,un filtre,une balise, bref!!! SPIP offre tout et même au pire un Include!!!
Et pire que pire c'est le cache à 0 de manière à ce que php tourne presque aussi vite que Spip au niveau Apache.

Mais je te conseille de lire sur spip contrib: Spip, php et javascript sont dans un bateau...

Pfff, c'est du rabaché, désolé mais faut tout bien lire :wink:
Alle bon courage!!! :slight_smile:

Bernard..

Stephane a écrit :

Le cygne a écrit :
  

oui je C mais cela bug a cause de luttilisation postérieur que je fait de $mavar . moi je veu une fonction qui traduise le spip sur le moment et on en parle plu après :smiley:
    
ben que tu fasses :
<?php
$x='[(#BALISE|texte_script)]';

//plein de trucs sur x

echo $x;
?>

ou

<?php
function toto($x){
//plein de trucs sur x
return $x
}

echo toto('[(#BALISE|texte_script)]');
?>

c'est pareil.

sauf que, comme le disait Jacques, il vaut mieux faire directement (sans PHP):

[(#BALISE|toto)]

avec la fonction toto dans mes_fonctions.php

comme ca, c'est le resultat qui est mis en cache, au lieu d'avoir le calcul de toto (et un eval de l'ensemble de la page) à chaque hit.

@++
_______________________________________________
liste spip
spip@rezo.net - désabonnement : spip-off@rezo.net
Infos et archives : http://listes.rezo.net/mailman/listinfo/spip
Documentation de SPIP : http://www.spip.net/
irc://irc.freenode.net/spip
FAQ : http://www.spip-contrib.net/spikini/FaQ

Bon je vais vous donner l’application exacte de mon code si vous y tenez : J’envois un mail a un utilisateur lambda

$titre = " Newsletter ".$titre_courriel;

si $titre_courriel=‹ hello world ›; l’utilisateur recoi un mail avec « Newsletter hello world » comme titre

si $titre_courriel=‹ #TITRE_SITE_SPIP ›; l’utilisateur recoi un mail avec « Newsletter » comme titre

Le 17/08/07, RealET <real3t@gmail.com> a écrit :

  • Le cygne tapotait, le 17/08/2007 19:05:

oui je C mais cela bug a cause de luttilisation postérieur que je fait
de $mavar . moi je veu une fonction qui traduise le spip sur le moment
et on en parle plu après :smiley:
Bon, mis à part que j’avais oublié les guillemets, je n’ai pas
l’impression soit que tu t’exprime d’une manière que je comprenne, soit
que tu ais lu l’article de SPIP contrib sur SPIP, php et javascript dans
un bateau.

PS : les puristes te demanderaient aussi, pourquoi as-tu besoin de PHP ?
Tu peux pas faire un filtre ?


RealET


liste spip
spip@rezo.net - désabonnement : spip-off@rezo.net
Infos et archives : http://listes.rezo.net/mailman/listinfo/spip
Documentation de SPIP : http://www.spip.net/
irc://irc.freenode.net/spip
FAQ : http://www.spip-contrib.net/spikini/FaQ

Le cygne a écrit :

Bon je vais vous donner l'application exacte de mon code si vous y tenez : J'envois un mail a un utilisateur lambda

            $titre = " Newsletter ".$titre_courriel;

si $titre_courriel='hello world'; l'utilisateur recoi un mail avec "Newsletter hello world" comme titre

si $titre_courriel='#TITRE_SITE_SPIP'; l'utilisateur recoi un mail avec "Newsletter" comme titre

Le 17/08/07, *RealET* <real3t@gmail.com <mailto:real3t@gmail.com>> a écrit :

    * Le cygne tapotait, le 17/08/2007 19:05:
    > oui je C mais cela bug a cause de luttilisation postérieur que
    je fait
    > de $mavar . moi je veu une fonction qui traduise le spip sur le
    moment
    > et on en parle plu après :smiley:
    Bon, mis à part que j'avais oublié les guillemets, je n'ai pas
    l'impression soit que tu t'exprime d'une manière que je comprenne,
    soit
    que tu ais lu l'article de SPIP contrib sur SPIP, php et
    javascript dans
    un bateau.

    PS : les puristes te demanderaient aussi, pourquoi as-tu besoin de
    PHP ?
    Tu peux pas faire un filtre ?

Beuhh! Pas trop top ton truc... Comme le conseille Realet faits donc un filtre! Au pire une function que tu appelles au travers une balise..
D'autre part et sans vouloir te chagriner il existe plein de plugins newsletter... Quel est donc l'interet d'envoyer un mail de news avec le nom de domaine ou pas?
J'avoue ne pas saisir ta démarche...

Bernard

Le cygne a écrit :

Bon je vais vous donner l'application exacte de mon code si vous y tenez : J'envois un mail a un utilisateur lambda

            $titre = " Newsletter ".$titre_courriel;

si $titre_courriel='hello world'; l'utilisateur recoi un mail avec "Newsletter hello world" comme titre

si $titre_courriel='#TITRE_SITE_SPIP'; l'utilisateur recoi un mail avec "Newsletter" comme titre

donc, avec le filtre texte_script par securité, ca devrait marcher.

pour faire ca bien, tu peux aussi repartir de Plugin envoyer à un ami - SPIP-Contrib

le code est sur la zone (Connexion · GitLab), tu n'as qu'à modifier la fonction d'envoi

@++

Beuhh! Pas trop top ton truc… Comme le conseille Realet faits donc un
filtre! Au pire une function que tu appelles au travers une balise…
D’autre part et sans vouloir te chagriner il existe plein de plugins
newsletter… Quel est donc l’interet d’envoyer un mail de news avec le
nom de domaine ou pas?
J’avoue ne pas saisir ta démarche…

Bernard

Je sais très bien que foulle de ces plugins existent, et c’est parce que j’uttilise l’un d’entre eux que je vous pose la question. Plus précisement spip_list. Le problème de ce plugin est que les emails automatiques qu’il envoit au liste d’abonné n’on qu’un seul et même titre ( par liste ). Ce qui veut dire que si j’ai une liste nommée abonnées ils recevrons toujours un mail avec ecrit un titre invariant du genre Newsletter de mon site. Moi j’aimerai que l’objet du mail soit un peut personnaliser, et qu’on laisse donc le choix à l’admin de mettre une boucle dans l’objet de son courriel histoire que, si il envoit les 5 dernière brèves parut sur le site, le titre de la dernière brève soit inclut dans l’objet du mail

Beuhh! Pas trop top ton truc… Comme le conseille Realet faits donc un
filtre! Au pire une function que tu appelles au travers une balise…
D’autre part et sans vouloir te chagriner il existe plein de plugins
newsletter… Quel est donc l’interet d’envoyer un mail de news avec le
nom de domaine ou pas?
J’avoue ne pas saisir ta démarche…

Bernard

Je sais très bien que foulle de ces plugins existe, et c’est parce que j’uttilise l’un d’entre eux que je vous pose la question.plus précisement spip_list. Le problème de ce plugin est que les emails automatiques qu’il envoit au liste d’abonné n’on qu’un seul et même titre ( par liste ). Ce qui veut dire que si j’ai une liste abonnées il recevrons toujours un mail avec ecrit un titre invariant du genre Newsletter. Moi j’aimerai que l’objet du mail soit un peut personnaliser, et qu’on laisse donc le choix

Le cygne a écrit :

**

    Beuhh! Pas trop top ton truc... Comme le conseille Realet faits donc un
    filtre! Au pire une function que tu appelles au travers une balise..
    D'autre part et sans vouloir te chagriner il existe plein de plugins
    newsletter... Quel est donc l'interet d'envoyer un mail de news avec le
    nom de domaine ou pas?
    J'avoue ne pas saisir ta démarche...

    Bernard

Je sais très bien que foulle de ces plugins existe, et c'est parce que j'uttilise l'un d'entre eux que je vous pose la question.

ben c'etait loin d'etre clair...
Si tu avais commencé par la, on ne t'aurait pas repondu la meme chose.

Si ton besoin est juste de modifier spip_liste, ben... modifie spip_liste !

cherche dans le plugin ou est fait l'envoi, place une copie de c e fichier dans /squelettes et fait tes modifs dedans.

@++

PS : ca, c'est à discuter sur spip-zone du coup

Le 18/08/07, Stephane <stephane@rezo.net> a écrit :

Le cygne a écrit :

**

Beuhh! Pas trop top ton truc… Comme le conseille Realet faits donc un
filtre! Au pire une function que tu appelles au travers une balise…
D’autre part et sans vouloir te chagriner il existe plein de plugins
newsletter… Quel est donc l’interet d’envoyer un mail de news avec le
nom de domaine ou pas?
J’avoue ne pas saisir ta démarche…

Bernard

Je sais très bien que foulle de ces plugins existe, et c’est parce que
j’uttilise l’un d’entre eux que je vous pose la question.

ben c’etait loin d’etre clair…
Si tu avais commencé par la, on ne t’aurait pas repondu la meme chose.

Si ton besoin est juste de modifier spip_liste, ben… modifie spip_liste !

cherche dans le plugin ou est fait l’envoi, place une copie de c e
fichier dans /squelettes et fait tes modifs dedans.

@++

Mais c’est déjà ce que je fais , je modifie le cron de spiplist qui est en charge de generer un email automatique pour un envoi futur aux liste d’abonnés.Spip liste fonctionne avec des patrons, c’est à dire des squelettes ( a peu de choses près ) pour ces modèles de mails. Moi, pour le moment je déclare une variable dans ce patron ( $titre_courriel ) pour pouvoir le récupérer dans le cron et l’envoyer correctement par la suite. Le problème c’est que quand $titre_courriel contient du code spip ca fait tout buger (ca n’apparait pas dans l’objet du mail et le mail n’est plus en html mais en format texte ) , alors que lorsqu’il sagit d’une chaine de caractère lambda ca passe.

Je ne connais pas bien spip aussi me suis-je dis qu’il s’agissait là d’un problème d’interprétation du code spip. J’ai alors demandé si il existé une fonction qui traduise le code spip au moment même où on l’appelle pour être tranquil par la suite.

Ce problème peut être discuté sur la zone en effet mais je n’ai pas une version officielle de spip_liste, j’ai une version que toggg à legerement modifié… donc il peut y avoir des différence pas forcement visibles entre les deux version

Le cygne a écrit :

Mais c'est déjà ce que je fais , je modifie le cron de spiplist qui est en charge de generer un email automatique pour un envoi futur aux liste d'abonnés.Spip liste fonctionne avec des patrons, c'est à dire des squelettes ( a peu de choses près ) pour ces modèles de mails. Moi, pour le moment je déclare une variable dans ce patron ( $titre_courriel ) pour pouvoir le récupérer dans le cron et l'envoyer correctement par la suite. Le problème c'est que quand $titre_courriel contient du code spip ca fait tout buger (ca n'apparait pas dans l'objet du mail et le mail n'est plus en html mais en format texte ) , alors que lorsqu'il sagit d'une chaine de caractère lambda ca passe.

Je ne connais pas bien spip aussi me suis-je dis qu'il s'agissait là d'un problème d'interprétation du code spip. J'ai alors demandé si il existé une fonction qui traduise le code spip au moment même où on l'appelle pour être tranquil par la suite.

Ce problème peut être discuté sur la zone en effet mais je n'ai pas une version officielle de spip_liste, j'ai une version que toggg à legerement modifié... donc il peut y avoir des différence pas forcement visibles entre les deux version

Ah, OK.

pour le nom du site, c'est un meta, donc tu peux le recuperer dans la globale meta (d'ailleurs, c'est fait au debut du cron).

par contre, pour recuperer autre chose, il faudrait reproduire le systeme du texte sur le titre en faisant des "parton_titre".
genre :
$texte_patron_bg = recuperer_fond('patrons/'.$patron, $contexte_patron);
$titre = recuperer_fond('patrons/'.$patron.'_titre', $contexte_patron);

@++

* Le cygne tapotait, le 18/08/2007 11:24:

Ce problème peut être discuté sur la zone en effet mais je n'ai pas une version officielle de spip_liste, j'ai une version que toggg à legerement modifié... donc il peut y avoir des différence pas forcement visibles entre les deux version

Tu peux utiliser un outil de diff pour voir les différences :wink:

PS : ce serait sur la version pour OS que tu travailles là ?

--
RealET

Merci j’y avais déjà songer ce pourrait en effet être une solution mais cela me chagrine de faire créer deux patrons à l’utilisateur pour un email ( d’un autre côté le code spip dans le php ce n’est pas du tout du tout propre comme vous me l’avait fais remarquer )…

Ah, OK.

pour le nom du site, c’est un meta, donc tu peux le recuperer dans la
globale meta (d’ailleurs, c’est fait au debut du cron).

par contre, pour recuperer autre chose, il faudrait reproduire le
systeme du texte sur le titre en faisant des « parton_titre ».
genre :
$texte_patron_bg = recuperer_fond(‹ patrons/ ›.$patron, $contexte_patron);
$titre = recuperer_fond(‹ patrons/ ›.$patron.‹ _titre ›, $contexte_patron);

@++


liste spip
spip@rezo.net - désabonnement : spip-off@rezo.net
Infos et archives : http://listes.rezo.net/mailman/listinfo/spip
Documentation de SPIP : http://www.spip.net/
irc://irc.freenode.net/spip
FAQ : http://www.spip-contrib.net/spikini/FaQ

par contre, pour recuperer autre chose, il faudrait reproduire le
systeme du texte sur le titre en faisant des « parton_titre ».
genre :
$texte_patron_bg = recuperer_fond(‹ patrons/ ›.
$patron, $contexte_patron);
$titre = recuperer_fond(‹ patrons/ ›.$patron.‹ _titre ›, $contexte_patron);

Bon après plusieurs recherches j’ai opté pour la solution d’un deuxième patron « _titre »… C’est plus propre niveaux code même si ça demande deux fois plus de fichiers… Je trouve cette fonctionnalitée interessante, pensez vous que je puisse l’inclure a la distribution du plugin sur la zone???

Ps: oui je travail bien sur la version de toggg pour OS