PHP-Nuke France - Communauté Européenne: Forums

FAQFAQ  RechercherRechercher
Groupes d'utilisateursGroupes d'utilisateurs    Les rangsLes Rangs
ProfilProfil  Se connecter pour vérifier ses messages privésSe connecter pour vérifier ses messages privés  ConnexionConnexion
*AVANT TOUT, consultez la charte de nos forums !

ATTENTION
En téléchargeant une version de PHP-Nuke autre que celle que nous proposons, vous prenez la décision de ne pouvoir prétendre à aucun support sur nos Forums.
Vous êtes libre de faire vos propres choix mais nous ne pouvons accepter de faire le travail des autres.
Par conséquent et en connaissance de cause, toute question relative à une autre version que celle que nous nous sommes engagé à supporter sera transférée à la corbeille.

 Prenez 2 minutes pour prendre connaissance plus en détails de notre fonctionnement

[Ok] Nom du forum, du message... en Titre de Page

Aller à la page 1, 2, 3  Suivante
Poster un nouveau sujet   Répondre au sujet    PHP-Nuke France - CE Index du Forum Référencement - URL Rewrittin - Google
Printer-friendly version
Voir le sujet précédent :: Voir le sujet suivant  
Auteur Message
FB




Administrateur
Administrateur



Inscrit le: Dec 27, 2003
Messages: 3376
Localisation: Gradignan (33)

MessagePosté le: 24.09.2004, 21:56:56    Sujet du message: [Ok] Nom du forum, du message... en Titre de Page Répondre en citant

Bonjour,

Je cherche depuis assez longtemps à intégrer dans la balise Title d'une page de mon site le titre (ou au moins l'ID) des posts qui y sont visualisés. Je n'ai jamais réussi. (logique : je ne parvenais pas à transmettre la variable $page_title définie dans l'index.php du forum à la fonction head () de header.php ... puisqu'elle s'exécute avant !)

Il me senblait que c'etait pareil ici et, tout à l'heure, en lisant un post, j'ai vu en haut de mon navigateur un titre du genre :PHPNuke EUROPE #id_post#id_post.

Idea Il est donc possible de transmettre une balise < Title > dynamique depuis une page du forum. Comment ? : J'ai "supprimé" la balise title de header.php ( avec un if ($name !="Forums") {echo "< title > etc... ) et ça fonctionne très bien... (le fichier page_header.php génère une balise title avec le sujet du topic)

MAIS : Ma balise title n'est plus dans le < head > ! (et même bien loin de là en dessous dans le code source de la page). Ma question est donc la suivante : cela pose-t-il un problème pour l'indexation des pages du forum ? (par google etc...)

Merci.

_________________
FB33

Respectez la charte - Merci !


Dernière édition par FB le 23.12.2004, 13:38:36; édité 3 fois
Revenir en haut
Deconnecte    Voir le profil de l'utilisateur Envoyer un message privé Visiter le site web du posteur
FB




Administrateur
Administrateur



Inscrit le: Dec 27, 2003
Messages: 3376
Localisation: Gradignan (33)

MessagePosté le: 24.09.2004, 23:28:25    Sujet du message: Répondre en citant

... De retour de WebRankInfo : Il semble que ce ne soit pas bon d'avoir sa balise title hors du head !

Alors, si quelqu'un a une meilleure idée : Merci beaucoup !

Crying or Very Sad

_________________
FB33

Respectez la charte - Merci !
Revenir en haut
Deconnecte    Voir le profil de l'utilisateur Envoyer un message privé Visiter le site web du posteur
ckforum




Habitué
Habitué



Inscrit le: Jan 06, 2004
Messages: 1653
Localisation: FRANCE

MessagePosté le: 25.09.2004, 06:15:20    Sujet du message: Répondre en citant

SAlut FB,

Bon sans avoir testé dans tout les sens, voilà j'te file un p'tit bout de code que tu mettras à ta sauce Smile ...

Dans le fichier header.php de la root tu cherches :

Code:

    echo "<title>$sitename $pagetitle</title>\n";


Que tu remplaces par :

Code:

   
// -------------------------------------------------------
// petit bout de code pour titre post forum dans tire page
// titre visible si posté ou déjà posté
// -------------------------------------------------------

      
      global $name, $HTTP_GET_VARS,$db;
      
      // si on est dans forums
      if ($name=='Forums') {
    foreach ($HTTP_GET_VARS as $key =>$v1) { 
       
       // si il y a  viewtopic dans les valeur de l'array $HTTP_GET_VARS
         if (in_array('viewtopic',$HTTP_GET_VARS)) {
            
               // si les Key du tableau sont soit t(view) ou p(view suite post!)
             if ($key=='t' or $key=='p') {
                
                // alors val de l'un ou l'autre (pour récup id pour la
                // requete ci-dessous
                
                $myvalhead = $v1;
             }
          }
        }
   
       // si myvalhead ok et si on est dans forums (pour eviter la requete ailleurs)
       if ($myvalhead && $name=='Forums') {
          $result = $db->sql_query("select post_id, post_subject from nuke_bbposts_text where post_id=$myvalhead");
          list($p_id,$sujet) = $db->sql_fetchrow($result);
         
          // var a mettre dans le titre su site
          $sujet= "<<< ($p_id) $sujet >>>";
        }
     } // fin if forums
 
    echo "<title>$sitename $pagetitle $sujet</title>\n";


Voilà avec Ce code tu auras l'id + le titre du post qui s'affichera dans le titre de la page (balise title) uniquement dans le mod Forums et sans avoir a toucher le reste (pratique car ok dans tout les themes Exclamation ...

J'ai essayé de commenté un peu ...

Désolé si je suis passé à côté de ce que tu voulais mais il est tard et je suis un peu dans le gaz Mr. Green

_________________
Bah on fait ce qu'on peut Hein Pas vrai ? ! et Vous !!!
(pas de demande d'aide via MP Merci ....)
Revenir en haut
Deconnecte    Voir le profil de l'utilisateur Envoyer un message privé Visiter le site web du posteur
FB




Administrateur
Administrateur



Inscrit le: Dec 27, 2003
Messages: 3376
Localisation: Gradignan (33)

MessagePosté le: 25.09.2004, 10:36:48    Sujet du message: Répondre en citant

Salut Ck et merci beaucoup !

En attendant une réponse, j'ai pensé a utiliser $_GET et codé ceci, qui marche très bien :

1) Ajouter $prefix, $db à la fin de la ligne global située au début de header.php ( tout début de la fonction head() ) qui devient :

Code:
global $slogan, $sitename, $banners, $nukeurl, $Version_Num, $artpage, $topic, $hlpfile, $user, $hr, $theme, $cookie, $bgcolor1, $bgcolor2, $bgcolor3, $bgcolor4, $textcolor1, $textcolor2, $forumpage, $adminpage, $userpage, $pagetitle, $page_title, $name, $prefix, $db;


2) Remplacer la ligne :

Code:
echo "<title>$sitename $pagetitle</title>\n";


Par :

Code:
/***** TITRE PAGE (Ajout FB) *****/   
if ($name =="Forums") {
   if ($_GET['file'] =="viewforum"){
      $forumid = $_GET['f'];
      $row = $db->sql_fetchrow($db->sql_query("SELECT forum_name FROM ".$prefix."_bbforums WHERE forum_id='$forumid'"));
      $forum = $row['forum_name'];
      echo "<title>Forum $sitename : $forum </title>\n";}
   if ($_GET['file'] =="viewtopic"){
      $topicid = $_GET['t'];
      $row = $db->sql_fetchrow($db->sql_query("SELECT topic_title FROM ".$prefix."_bbtopics WHERE topic_id='$topicid'"));
      $topic = $row['topic_title'];
      echo "<title>Forum $sitename : $topic </title>\n";}
   if ($_GET['file'] =="search"){echo "<title>Forum $sitename : Recherche </title>\n";}
   if ($_GET['file'] =="faq"){echo "<title>Forum $sitename : FAQ du Forum </title>\n";}
   if (($_GET['file'] =="index") OR ($_GET['file'] =="")){echo "<title>Forum $sitename : Accueil </title>\n";}
   else {echo "<title>Forum $sitename</title>\n";}
} else {echo "<title>$sitename $pagetitle</title>\n";} // si pas forum
/*****   /FIN TITRE PAGE/    *****/



Qu'en penses-tu ? (code de petit amateur, je suppose... en plus, çà m'a coûté du sommeil !)


J'ai un autre problème : Le forum génère ses propres balises (doctype, head, title ...) qui se trouvent donc en milieu de la page html envoyée par le serveur pour toute page concernant le forum : COMMENT DESACTIVER L'EDITION DE CES LIGNES (-> < title > $sitename :: $page_title...) car il parait que ce n'est pas bon du tout. J'ai cherché dans tout le module forum mais...

MERCI.

_________________
FB33

Respectez la charte - Merci !


Dernière édition par FB le 25.09.2004, 12:21:01; édité 1 fois
Revenir en haut
Deconnecte    Voir le profil de l'utilisateur Envoyer un message privé Visiter le site web du posteur
FB




Administrateur
Administrateur



Inscrit le: Dec 27, 2003
Messages: 3376
Localisation: Gradignan (33)

MessagePosté le: 25.09.2004, 12:15:16    Sujet du message: Répondre en citant

Bon...

C'est dans le thème. Ce qui suit est peut-être à adapter (exemple avec Cooldsteel) quique les deux fichiers en question doivent exister dans tout les thèmes puisqu'ils sont indispensable pour un phpBB en standalone. Question

Ces lignes sont dans themes/nom_theme/forums, il s'agit de overall_header.tpl et overall_footer.tpl.

1) Dans ce dernier, enlever les deux dernières lignes :

Code:
 </body> et </html>


2) dans overall_header.tpl, enlever le début du fichier, à savoir :

Code:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 ... jusquà
... <title>{SITENAME} :: {PAGE_TITLE}</title>



Voilà de quoi avoir des pages conformes, sur ce point, avec le W3C Laughing

@+

_________________
FB33

Respectez la charte - Merci !
Revenir en haut
Deconnecte    Voir le profil de l'utilisateur Envoyer un message privé Visiter le site web du posteur
Montrer les messages depuis:   
Printer-friendly version
Poster un nouveau sujetRépondre au sujet    PHP-Nuke France - CE Index du Forum Référencement - URL Rewrittin - Google Toutes les heures sont au format GMT + 2 Heures
Aller à la page 1, 2, 3  Suivante
Page 1 sur 3

 
Sauter vers:  
Vous ne pouvez pas poster de nouveaux sujets dans ce forum
Vous ne pouvez pas répondre aux sujets dans ce forum
Vous ne pouvez pas éditer vos messages dans ce forum
Vous ne pouvez pas supprimer vos messages dans ce forum
Vous ne pouvez pas voter dans les sondages de ce forum
Vous ne pouvez pas joindre des fichiers dans ce forum
Vous pouvez télécharger des fichiers dans ce forum

:: Powered by phpBB © 2001, 2005 phpBB Group ::

Site motorisé par PHP-Nuke en version Française distribuée par PHP-Nuke France - CE
PHP-Nuke © 2004 by Francisco BURZI
Logiciel gratuit que vous pouvez redistribuer librement en respectant la licence GPL
Tout le contenu du site est copyright PHP-Nuke France - CE
Site déclaré à la C.N.I.L sous le n° de dossier 865996
Noms de domaines, hébergement et site propriété de RondPoint Médias Services - Jean-Claude GIRAUD
Design RMS - Création RondPoint Médias Services   RondPoint Médias Services - © 2005 / 2006
Réseau : Etxe Ama - Ovalie - PHP-Nuke France : CE - RondPoint Médias Services - La Vallouise