Page 1 sur 1

[phpBB 3.0.x] Ajouter un champ dans les messages

Posté : jeu. 13 janv. 2011 13:33
par Dakin Quelia
» Ajouter un champ dans les messages

A l'aide de cette documentation, vous allez pouvoir ajouter un champ pour vos messages. Genre ajouter une image, par exemple. De ce fait, nous allons vous expliquer cela au travers de l'exemple pour ajouter une image.

» Requête SQL

Comme nous voulons ajouter un champ à une table précise, à savoir « phpbb_posts », il convient d'exécuter cette requête SQL (à adapter selon le champ que vous souhaitez).

Code : Tout sélectionner

ALTER TABLE phpbb_posts ADD img_tuto VARCHAR(255) NOT NULL DEFAULT ''
» Modifications php

Dans cette partie, il faut définir ce que contiendra le champ « img_tuto » par défaut à l'aide du fichier « functions_posting.php ». Dans notre cas, il prendra la valeur qu'on lui assignera dans la page de rédaction.

Ouvrez le fichier « functions_posting.php ».

Cherchez:

Code : Tout sélectionner

                'post_checksum'        => $data['message_md5'],      
Après, ajoutez:

Code : Tout sélectionner

                'img_tuto'          => $data['img_tuto'],       
Cherchez:

Code : Tout sélectionner

                'post_checksum'        => $data['message_md5'],      
Après, ajoutez:

Code : Tout sélectionner

                'img_tuto'          => $data['img_tuto'],       
Ouvrez le fichier « posting.php ».

Cherchez:

Code : Tout sélectionner

    $post_data['enable_bbcode']        = (!$bbcode_status || isset($_POST['disable_bbcode'])) ? false : true;            
Avant, ajoutez:

Code : Tout sélectionner

    $post_data['img_tuto']            = request_var('img_tuto', '');            
Cherchez:

Code : Tout sélectionner

                'filename_data'            => $message_parser->filename_data,            
Après, ajoutez:

Code : Tout sélectionner

                'img_tuto'                => (string) $post_data['img_tuto'],            
Cherchez:

Code : Tout sélectionner

    'MESSAGE'                => $post_data['post_text'],          
Après, ajoutez:

Code : Tout sélectionner

    'IMG_TUTO'                => $post_data['img_tuto'],          
» Modifications template

Maintenant que nous avons notre champ dans la base de données et dans la partie php, nous devons ajouter un champ de type texte dans notre fichier template. Pour cela, procédons comme suit:

Ouvrez le fichier « styles/{VOTRE_THEME}/templates/posting_editor.html ».

Code : Tout sélectionner

<dd><input type="text" name="img_tuto" id="subject" size="45" maxlength="255" tabindex="2" value="{IMG_TUTO}" class="inputbox autowidth" /></dd> 
Evidemment, quand tout est fini, il ne vous reste plus qu'à rafraîchir le template (onglet Styles) et de vider votre cache (onglet Général). ;)