Scout Web Portail, le moteur de site internet scout

Forum de Discussions

Forums - Support SWP v1.1.x - intégrer phpbb3 et zenphoto

Rechercher dans le forum

intégrer phpbb3 et zenphoto

Panda

Visiteur

Bonjour,

J'aime bien le portail ,mais certains éléments sont "limités", comme la galerie photos et le forum, par exemple. Du coup, j'aimerais garder l'architecture du swp, avec la gestion des membres, la page d'accueil, etc...mais intégrer un forum phpbb "visuellement".
Il ne s'agit donc pas de faire un bridge avec les droits et les utilisateurs

En gros, quand on clique sur "forum", j'aimerais que phpbb3 apparaisse en dessous de la bannière, et à droit du menu de gauche.
Idem pour la galerie photo.

Est-ce que quelqu'un a déja essayé, est-ce que quelqu'un est prêt à tenter l'aventure avec moi, histoire de partager ses connaissances et expériences.

En gros, est-ce qu'il suffit d'une fonction de ce type la:

<?php get_the_left_menu() ?> dans l'index.php pour que le menu de gauche s'affiche?

Merci,

Panda
Voir son profil Posté le 11/03/2008 à 12:05:17

Re : intégrer phpbb3 et zenphoto

Panda

Visiteur

Salut à tous!

Je n'ai pas encore trouvé comment intégrer phpbb3 dans swp, mais voici déjà la méthode pour afficher les 5 derniers messages d'un forum phpbb3 sur la page d'accueil de swp:

1. Créer un fichier appelé "phpbb_dernier.php"
2. Dedans placez-y ce code:

Code :
<?php
 


    define('IN_PHPBB', TRUE);

    $phpbb_root_path = 'forum/';
    $phpEx = substr(strrchr(__FILE__, '.'), 1);
    include($phpbb_root_path . 'common.' . $phpEx);


    // Start session management
    $user->session_begin();
    $user->setup('', $forum_data['forum_style']);

       $sql = "SELECT t.topic_id, t.topic_title, t.topic_replies, t.topic_last_post_id, f.forum_id, f.forum_name, p.post_time, u.user_id, u.username
              FROM ".TOPICS_TABLE." AS t, ".FORUMS_TABLE." AS f, ".POSTS_TABLE ." AS p, ".USERS_TABLE." AS u
              WHERE t.forum_id = f.forum_id"; 
        $sql .=" AND t.topic_moved_id = 0
              AND p.post_id = t.topic_last_post_id
              AND u.user_id = p.poster_id  ";



        $sql .= "
              ORDER BY t.topic_last_post_id DESC LIMIT 5";

    $result = $db->sql_query($sql);

	echo '<h2>Forums : Derniers messages <a href="'.$phpbb_root_path.'" title="Rejoindre le forum"><img src="templates/default/images/go.png" width="12" height="12" border="0" alt="forum du groupe des tilleuls" /></a></h2>';
			


    while ($row = $db->sql_fetchrow($result))
    {   
       echo utf8_decode('<a href="' . $phpbb_root_path . 'viewtopic.php?t=' . $row['topic_id'] . '">' . $row['topic_title']) . '</a><br />';
       echo utf8_decode('Par: <a href="' . $phpbb_root_path . 'memberlist.php?mode=viewprofile&u=' . $row['user_id'] . '">' . $row['username'] . '</a> <br />le ' . $user->format_date($row['post_time'])) . '<br />-----------------<br />';
    }

    ?>


3. Placez ce fichier dans le dossier de votre swp, et n'oubliez pas de changer l'adresse de votre forum
4. Ouvrez indexg.php, et après Code :
<?php
	}
	derniersmessagesforum('280');

?>
, placez le code suivant:

Code :
<div id="derniers_messages_forum">
<?php include("phpbb_dernier.php");?>
</div>


5. Ouvrez le fichier /prv/fonc_moteurs et enlever toutes les information comprise entre Citation :
function derniersmessagesforum($largeur = '100%')
{
et Citation :
}


function membresaautoriser($do)

De telle sorte que la fonction "derniersmessagesforum" soit vide. (Elle doit être comme ceci:
Code :
function derniersmessagesforum($largeur = '100%')
{
	
}


Et voila le travail, normalement, un bloc des 5 derniers messages s'affiche à la place des 5 dernier message de l'ancien forum.

Il reste cependant des problèmes:
1: les forum "cachés" s'affichent aussi.
2: le style n'est pas beau !
==>Si quelqu'un sait comment faire pour arranger ces deux problème, je suis preneur, de même que si quelqu'un sait comment importer les anciens message dans le nouveau forum, ca serait excellent. (chmat, est-ce que tu pourrais fournir un shema de la base de donnée "forum", de manière à ce que quelqu'un calé en phpbB3 puisse faire une sorte de petit script (j'en serais bien incapable !))
Enfin, si quelqu'un sait comment intégré, graphiquement, phpbb3 dans le swp, ca serait excellent ! J'ai essayé avec un iframe, mais ca donne rien du tout !!

Pour aller voir ce que ça donne: http://www.groupedestilleuls.be

Aplus et merci !

Panda

ps: le code de phpbb_dernier.php est très fortement (pour pas dire entièrement ;)) inspiré de ce sujet: http://forums.phpbb-fr.com/viewtopic.php?f=100&t=135972&st=0&sk=t&sd=a&hilit=10+messages+index
Voir son profil Posté le 16/03/2008 à 13:15:18

Re : intégrer phpbb3 et zenphoto

ChMat

Webmaster

Hello,

Hmm, suis assez occupé sur la prépa d'une formation ces derniers temps, donc je peux pas vraiment faire grand chose.

Une piste cependant. Il sera plus simple d'intégrer visuellement SWP à l'intérieur de phpbb.

En effet :
En l'état actuel, SWP affiche son contenu à mesure qu'il est généré par le script.
Quant à phpbb, il récupère toutes les infos dans une variable puis affiche tout d'un coup.

Pour l'intégrer, je pense qu'il suffit de modifier les fichiers tpl de phpbb et d'y intégrer un peu de code imitant la structure de SWP (dans les fichiers tpl, je ne suis pas certain qu'on puisse exécuter du php).

Le jour où SWP fonctionnera de manière plus proche de phpbb, on sera peut-être à la version 2 ou 3

PS - La structure des tables du forum de SWP est assez proche de celle de phpbb en réalité. Je crois qu'il ne manque que la gestion des sous-catégories.
Voir son profil Posté le 17/03/2008 à 00:27:41

Re : intégrer phpbb3 et zenphoto

Panda

Visiteur

Salut!

Pour afficher le dernier commentaire d'une galerie zenphoto sur la page d'accueil, il faut modifier la page d'accueil comme ceci:

1. Modifier le fichier indexg.php, en ajoutant Code :
include_once('zen-recent-comments.php');
juste en dessous de "include_once('prv/fonc_moteurs.php')"
2. Modifier la partie "afichage de l'éditorial du site" du fichier indexg.php comme ceci:
Code :
<?php
// Affichage de l'éditorial du site
echo ($site['format_edito'] == 1) ? makehtml($site['edito'], 'html') : makehtml($site['edito'], 'ibbcode');

// Affichage du dernier commentaire de la galerie photo
zenphoto_recent_comments();
if ($user == 0)
{
?>


3.uploader un fichier zen-recent-comments.php, qui contient ceci:

Code :
<?php

/*

Plugin Name: Zenphoto Recent Comments

Plugin URI: http://www.zenphoto.org/trac/wiki/ZenphotoPlugins#ZenphotoRecentComments

Description: This simple WP plugin will show <a href="http://www.zenphoto.org">Zenphoto</a>'s Most Recent Comments to your WordPress. Most of the codes here are from Zenphoto. To show Zenphoto's Recent Comments just put <code>&lt;?php zenphoto_recent_comments(); ?></code> in your template.

Version: 0.1

Author: Cary De Guzman

Author URI: http://www.bisayaonline.net/
Modified for SWP by Splitsch:  http://www.pastanque.be/splitsch



   Copyright 2007  Cary De Guzman  (email : carydeguzman@gmail.com)



    This program is free software; you can redistribute it and/or modify

    it under the terms of the GNU General Public License as published by

    the Free Software Foundation; either version 2 of the License, or

    (at your option) any later version.



    This program is distributed in the hope that it will be useful,

    but WITHOUT ANY WARRANTY; without even the implied warranty of

    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the

    GNU General Public License for more details.



    You should have received a copy of the GNU General Public License

    along with this program; if not, write to the Free Software

    Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA

*/



function zenphoto_recent_comments()

{

////////////////////////////////////////////////////////////
////////

/*------------------- START OF CONFIGURATION ---------------------*/

/*MySQL Settings*/

$zen_db = '*******'; //The name of the database

$zen_username = '*******'; //Your MySQL username

$zen_password = '********'; //...and password

$zen_host = 'localhost'; //99% chance you won't need to change this value

$mysql_prefix = ''; //Zen Database Tables prefix (if any)



/*More...*/

$num_of_comments = '1'; //Number of comments you want to show up.

$mods_rewrite = false; //If you have Apache mod_rewrite, put true here, and you'll get nice cruft-free URLs.

$gallery_folder = 'galerie_photo'; //eg. http://mysite.com/zenphoto

/*--------------------- END OF CONFIGURATION ---------------------*/

////////////////////////////////////////////////////////////
////////



//we will try to connect to the database

@ $mysql_connection = mysql_connect($zen_host,$zen_username,$zen_password) or die('Could not connect to database.');

//selecting zenphoto database

@ mysql_select_db($zen_db) or die('Could not select database.');



$sql = "SELECT c.id, i.title, i.filename, a.folder, a.title AS albumtitle, c.name, c.website,"

            . " c.date, c.comment FROM zp_comments AS c, zp_images AS i, zp_albums AS a "

            . " WHERE c.ownerid = i.id AND i.albumid = a.id ORDER BY c.id DESC LIMIT 1";

            

$result = mysql_query($sql, $mysql_connection) or die('MySQL Query ( '.$sql.' ) Failed. Error: ' . mysql_error());



  $allrows = array();

  while ($row = mysql_fetch_assoc($result))

  $allrows[] = $row;



          foreach ($allrows as $comment) {

            $author = $comment['name'];

            $album = $comment['folder'];

            $image = $comment['filename'];

            $albumtitle = $comment['albumtitle'];

            if ($comment['title'] == "") $title = $image; else $title = $comment['title'];

            $website = $comment['website'];

            $comment = truncate_string($comment['comment'], 123);

            echo utf8_decode("<div id="dernier_commentaire"><h2>Albums photos: Dernier Commentaire</h2><a href=""

              . ($mods_rewrite ? "../$gallery_folder/$album/$image" : "../$gallery_folder/index.php?album=".urlencode($album)."&image=".urlencode($image))

              . "">$albumtitle / $title</a><br /><h3>$author:</h3>$comment</div>");

          }

}



//Prefix a table name with a user-defined string to avoid conflicts.

function prefix($tablename) {

  return '`' . $mysql_prefix . $tablename . '`';

}



function truncate_string($string, $length) {

  if (strlen($string) > $length) {

    $pos = strpos($string, ' ', $length);

    if ($pos === FALSE) return substr($string, 0, $length) . '...';

    return substr($string, 0, $pos) . '...';

  }

  return utf8_decode($string);

}



?>


Et voila le travail Pour voir à quoi cela ressemble, rendez-vous sur http://www.groupedestilleuls.be

Aplus!

Panda
Voir son profil Posté le 17/03/2008 à 17:44:45

Forums - Support SWP v1.1.x - intégrer phpbb3 et zenphoto


Forum en accès public
Modération par les animateurs de section

Pour écrire sur le forum, connecte-toi ci-dessous ou inscris-toi sur le site.

Plus d'infos au sujet du forum

Page générée en 0.16 secondes (6 requêtes)