Page 1 sur 1

[phpBB 3.0.x] Variables dans les messages

Posté : sam. 15 oct. 2011 23:01
par Dakin Quelia
» Créer variables pour les messages et messages privés

Nous allons vous apprendre comment ajouter des variables à utiliser dans vos messages normaux et messages privés. Cela vous permet ainsi de pouvoir créer des modèles de messages et pour de messages privés.

/!\ Avant toute modification, faites une sauvegarde de vos fichiers au préalable.

Voici quelques variables qui sont définies:
  • {WE}: Affiche le nom de l'expéditeur plus celui du destinataire.
  • {ME}: Affiche le nom de l'expéditeur uniquement.
  • {YOU}: Affiche le nom du destinataire.
  • {BOARD}: Affiche le nom du forum
  • {DATE}: Affiche la date du message
  • {BOARD_CONTACT}: Affiche le courriel utilisé par le forum
Bien sûr, rien ne vous empêche d'en créer d'autres.

» Variables pour les messages normaux

Cela vous permettra d'utiliser dans les messages normaux du forum les variables citées ci-dessus afin de personnaliser le message.

Introduction

Nous aurons besoin des fichiers suivants:
  • posting.php
  • viewtopic.php
Définir les variables

Dans cette partie de la documentation, nous allons définir certaines variables (voir ci-dessus) qui pourront être utilisées dans des situations spécifiques. Par exemple, un message personnalisé à chaque utilisateur.

Ouvrez le fichier « posting.php »

Cherchez:

Code : Tout sélectionner

// Preview
if (!sizeof($error) && $preview)
{
    $post_data['post_time'] = ($mode == 'edit') ? $post_data['post_time'] : $current_time; 

Après, ajoutez:

Code : Tout sélectionner

    // Variables for message
    $your_username  = get_username_string('full', $user->data['user_id'], $user->data['username'], $user->data['user_colour'], $user->lang['GUEST']);
    $my_username    = get_username_string('full', $message_row['user_id'], $message_row['username'], $message_row['user_colour']);
    $board_name     = $config['sitename'];
    $date           = $user->format_date($row['post_time']);
    $board_contact  = $config['board_contact'];

    $find = array('{WE}', '{ME}', '{YOU}', '{BOARD}', '{DATE}', '{BOARD_CONTACT}');

    $replace = array($your_username . ' ' .$user->lang['AND'] . ' ' . $my_username, $my_username, $your_username, $board_name, $date, $board_contact);

    $preview_message = str_replace($find, $replace, $preview_message); 


Ouvrez le fichier « viewtopic.php ».

Cherchez:

Code : Tout sélectionner

    $message = smiley_text($message); 
Après, ajoutez:

Code : Tout sélectionner

    // Variables for messages
    $your_username     = get_username_string('full', $user->data['user_id'], $user->data['username'], $user->data['user_colour'], $user->lang['GUEST']);
    $my_username    = get_username_string('full', $message_row['user_id'], $message_row['username'], $message_row['user_colour']);
    $board_name     = $config['sitename'];
    $date             = $user->format_date($row['post_time']);
    $board_contact  = $config['board_contact'];

    $find = array('{WE}', '{ME}', '{YOU}', '{BOARD}', '{DATE}', '{BOARD_CONTACT}');

    $replace = array($your_username . ' ' .$user->lang['AND'] . ' ' . $my_username, $my_username, $your_username, $board_name, $date, $board_contact);

    $message = str_replace($find, $replace, $message); 
» Variables pour les messages privés

Cela vous permettra d'utiliser dans les messages privés les variables citées ci-dessus afin de personnaliser le message.

Ouvrez le fichier « includes/ucp/ucp_pm_viewmessage.php ».

Cherchez:

Code : Tout sélectionner

    $template->assign_vars(array(
        'MESSAGE_AUTHOR_FULL'        => 
Avant, ajoutez:

Code : Tout sélectionner

    // Variables for message
    $your_username  = get_username_string('full', $user->data['user_id'], $user->data['username'], $user->data['user_colour'], $user->lang['GUEST']);
    $my_username    = get_username_string('full', $author_id, $user_info['username'], $user_info['user_colour']);
    $board_name     = $config['sitename'];
    $date           = $user->format_date($message_row['message_time']);
    $board_contact  = $config['board_contact'];

    $find = array('{WE}', '{ME}', '{YOU}', '{BOARD}', '{DATE}', '{BOARD_CONTACT}');
    $replace = array($your_username . ' ' .$user->lang['AND'] . ' ' . $my_username, $my_username, $your_username, $board_name, $date, $board_contact);

    $message = str_replace($find, $replace, $message); 
Ainsi vous pouvez utiliser des variables dans vos messages. ;)