Faire ses balises {PERSO} Faire ses balises {PERSO}
 

News:

cpg1.5.48 Security release - upgrade mandatory!
The Coppermine development team is releasing a security update for Coppermine in order to counter a recently discovered vulnerability. It is important that all users who run version cpg1.5.46 or older update to this latest version as soon as possible.
[more]

Main Menu

Faire ses balises {PERSO}

Started by Elwood J. Blues, August 22, 2007, 07:09:01 PM

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

Elwood J. Blues

Bonjour,

Petite question technique... Comment faire une balise de type {BUTTONS} pour le fichier template qui exécuterai le code PHP défini dans theme.php (ou un autre fichier) ?

Merci d'avance !
Avant de poser une question passez par ici . 90% des réponses s'y trouvent !

Elwood J. Blues

Bon à force de recherche je me sui aperçu qu'on appelait ça des {TOKEN}s

Il faut surcharger la fonction pageheader en ajoutant son token...

    $template_vars = array('{LANG_DIR}' => $lang_text_dir,
        '{TITLE}' => $CONFIG['gallery_name'] . ' - ' . strip_tags(bb_decode($section)),
        '{CHARSET}' => $charset,
        '{META}' => $meta,
        '{GAL_NAME}' => $CONFIG['gallery_name'],
        '{GAL_DESCRIPTION}' => $CONFIG['gallery_description'],
        '{SYS_MENU}' => theme_main_menu('sys_menu'),
        '{SUB_MENU}' => theme_main_menu('sub_menu'),
        '{ADMIN_MENU}' => theme_admin_mode_menu(),
        '{CUSTOM_HEADER}' => $custom_header,
        '{HASARD}' => ...,
        );


Pour l'instant si je remplace les ... par "TEST" le mot test s'affiche ! si je mets une variable ou une fonction (déclaré avant) ça fonctionne pas...

Je continue mes investigations  ;)
Avant de poser une question passez par ici . 90% des réponses s'y trouvent !

Elwood J. Blues

C'est bon j'ai enfin réussi... Il faut donc retourner une variable...
Avant de poser une question passez par ici . 90% des réponses s'y trouvent !

Pascal YAP

Bonjour,

Montrez-nous votre solution et soutenez la communauté Coppermine, et je coche votre sujet "SOLVED:D

PYAP

Elwood J. Blues

Vaudrai mieux que je montre la solution pour mon bloc de photo au hasard sur le côté de la page d'accueil de mon site.

Sinon ça reprend ce que j'ai cité plus haut :

Fichier theme.php

function mon_texte()
{

   $retour = "Ceci sera affiché sur le site à la place de la balise {TEXTE}";
   return $retour;


}


// Function for writing a pageheader
function pageheader($section, $meta = '')
{
    global $CONFIG, $THEME_DIR;
    global $template_header, $lang_charset, $lang_text_dir;

    $custom_header = cpg_get_custom_include($CONFIG['custom_header_path']);

        $charset = ($CONFIG['charset'] == 'language file') ? $lang_charset : $CONFIG['charset'];

    header('P3P: CP="CAO DSP COR CURa ADMa DEVa OUR IND PHY ONL UNI COM NAV INT DEM PRE"');
        header("Content-Type: text/html; charset=$charset");
    user_save_profile();

    $template_vars = array('{LANG_DIR}' => $lang_text_dir,
        '{TITLE}' => $CONFIG['gallery_name'] . ' - ' . strip_tags(bb_decode($section)),
        '{CHARSET}' => $charset,
        '{META}' => $meta,
        '{GAL_NAME}' => $CONFIG['gallery_name'],
        '{GAL_DESCRIPTION}' => $CONFIG['gallery_description'],
        '{SYS_MENU}' => theme_main_menu('sys_menu'),
        '{SUB_MENU}' => theme_main_menu('sub_menu'),
        '{ADMIN_MENU}' => theme_admin_mode_menu(),
        '{CUSTOM_HEADER}' => $custom_header,
        '{TEXTE}' => mon_texte(),
        );

    echo template_eval($template_header, $template_vars);
}



Et voilà !  ;D Si vous souhaitez l'ajouter dans un quelconque Wiki ou fichier d'aide, n'hésitez pas !
Avant de poser une question passez par ici . 90% des réponses s'y trouvent !

Pascal YAP

Merci,

Je vous ai noté avec un KARMA +1  ;D
C'est la communauté Coppermine qui vous remercie.

PYAP

Elwood J. Blues

Ah ! Merci, plus que 19 coups de main alors pour arriver à votre hauteur  ;D Ca va pas être simple tout ça....
Avant de poser une question passez par ici . 90% des réponses s'y trouvent !

François Keller

Bonne contribution, merci elwood j.Blues
K+1 (plus que 18 pour rattraper Pyap, pour ma part, j'ai encore de la marge  ;D ;D ;D)
Avez vous lu la DOC ? la FAQ ? et cherché sur le forum avant de poster ?
Did you read the DOC ? the FAQ ? and search the board before posting ?
Mon Blog

Elwood J. Blues

On va pas faire la course au Karma parce que sinon je vais avoir beaucoup de mal  ;D
Avant de poser une question passez par ici . 90% des réponses s'y trouvent !

François Keller

Quote from: Elwood J. Blues on August 23, 2007, 08:25:50 AM
On va pas faire la course au Karma parce que sinon je vais avoir beaucoup de mal  ;D
Non, suremement pas  ;D ce n'est pas le but. En tout cas encore merci pour cette contribution en attendant la page sur le wiki  ;)
Avez vous lu la DOC ? la FAQ ? et cherché sur le forum avant de poster ?
Did you read the DOC ? the FAQ ? and search the board before posting ?
Mon Blog

Elwood J. Blues

http://frantzk.free.fr/WikiFree/index.php?title=Faire_ses_tokens_persos  ;D

Je galère un peu pour ajouter du code... Comment faire pour qu'il ne mette pas le <?php ?> ?

Avant de poser une question passez par ici . 90% des réponses s'y trouvent !

François Keller

On peut pas en tout cas en gardant la coloration syntaxique, mais ça ne gène pas.
Merci pour l'article je le place dans la section des tutoriels dès que possible (ce soir)
Avez vous lu la DOC ? la FAQ ? et cherché sur le forum avant de poster ?
Did you read the DOC ? the FAQ ? and search the board before posting ?
Mon Blog