Archives FluxBB.fr

Les archives de FluxBB.fr

Recherche rapide

Vous n'êtes pas identifié(e).

Version 1.4.13 : [.tar.gz][.zip] (maj 20/10/2014)
Pack langue française pour 1.4.x : [.zip] (maj 06/01/2012)

Branche 1.5.x : fluxbb.org

Version 1.2.24 fr (entièrement en français) : [.zip] (maj 26/08/2011)
Pack langue française pour 1.2.x : [.zip] [.rar] (maj 15/10/2006)

Vous avez un problème ?
Avant de poser votre question sur les forums d'entraide nous vous invitons à consulter :

#26 01-10-2006 19:39:00

docteur_marc
Régulier

Re : Problème avec Google!

Audiofeeline a écrit :

Bon alors, j'ai commencé a mettre les mains dans le cambouis mais c'est achement dure...

Il faut donc créer une fonction qui récupère le 1er post...
Je ne sais pas si je suis sur la bonne piste mais je regarde du coté de viewtopic.php et de la variable $cur_post['message']...

si quelqun pouvais nous aider a nous mettre sur la voie

ce serais cool


Nous autres, mordus d'informatique, préférons par-dessus tout passer notre temps à bidouiller nos ordinateurs, plutôt que les utiliser pour faire quelque chose de productif.

Hors ligne

#27 01-10-2006 19:55:38

Audiofeeline
Habitué

Re : Problème avec Google!

Oui... Cool... tongue
Parce que là, pfiouu, ça me dépasse... big_smile


Divertissement : Cinéma, musique, jeux vidéo, Internet et web 2.0...
Musique : Actualité musicale, vidéo clips et chroniques d'albums...
Geek : High tech et culture geek...

Hors ligne

#28 01-10-2006 20:53:53

Lyconide
Habitué

Re : Problème avec Google!

Audiofeeline a écrit :

Bon alors, j'ai commencé a mettre les mains dans le cambouis mais c'est achement dure...

Il faut donc créer une fonction qui récupère le 1er post...
Je ne sais pas si je suis sur la bonne piste mais je regarde du coté de viewtopic.php et de la variable $cur_post['message']...

C'est bien $cur_post qui récupère tous les posts d'un sujet donné, sauf que le problème c'est que la variable est crée après avoir appelé header.php

Donc pas utilisatable dans header.php. Il y aurait un système de template "a la phpbb", t'aurais éventuellement pu l'utiliser (encore que), mais c'est pas le cas

Tu pourrais faire un copier/coller de la requête avant l'appel, mais je ne pense pas que ca soit la solution non plus... ca va te faire une requête de plus, surtout que tu vas rappeler cette même requête une 2ème fois... optimisation 0

Peut être que la meilleure solution serait de modifier la requête qui récupère le topic (juste en dessous de :"// Fetch some info about the topic")
C'est ce qui me parait le plus logique
Niveau optimisation, faut faire une jointure naturel, avec sélection d'1 seul message (le premier de la page sur laquelle l'utilisateur se trouve)
Dans une requête la jointure est souvent couteuse en temps, donc je sais pas comment ca va réagir (si y'a des spécialistes big_smile)

La requête qu'on devrait faire je pense, j'ai pas tester :

$substr_sql = ($db_type != 'sqlite') ? 'SUBSTRING' : 'SUBSTR';
// Fetch some info about the topic
if (!$pun_user['is_guest'])
    $result = $db->query('SELECT t.subject, t.closed, t.num_replies, t.sticky, f.id AS forum_id, '.$substr_sql.'(p.message, 1, 300) AS message, f.forum_name, f.moderators, fp.post_replies, s.user_id AS is_subscribed FROM '.$db->prefix.'topics AS t INNER JOIN '.$db->prefix.'forums AS f ON f.id=t.forum_id INNER JOIN '.$db->prefix.'posts AS p ON t.id=p.topic_id LEFT JOIN '.$db->prefix.'subscriptions AS s ON (t.id=s.topic_id AND s.user_id='.$pun_user['id'].') LEFT JOIN '.$db->prefix.'forum_perms AS fp ON (fp.forum_id=f.id AND fp.group_id='.$pun_user['g_id'].') WHERE (fp.read_forum IS NULL OR fp.read_forum=1) AND t.id='.$id.' AND t.moved_to IS NULL ORDER BY p.id LIMIT 0,1') or error('Impossible de retrouver les informations de la discussion', __FILE__, __LINE__, $db->error());
else
    $result = $db->query('SELECT t.subject, t.closed, t.num_replies, t.sticky, f.id AS forum_id, '.$substr_sql.'(p.message, 1, 300) AS message, f.forum_name, f.moderators, fp.post_replies, 0 FROM '.$db->prefix.'topics AS t INNER JOIN '.$db->prefix.'forums AS f ON f.id=t.forum_id INNER JOIN '.$db->prefix.'posts AS p ON t.id=p.topic_id LEFT JOIN '.$db->prefix.'forum_perms AS fp ON (fp.forum_id=f.id AND fp.group_id='.$pun_user['g_id'].') WHERE (fp.read_forum IS NULL OR fp.read_forum=1) AND t.id='.$id.' AND t.moved_to IS NULL ORDER BY p.id LIMIT 0,1') or error('Impossible de retrouver les informations de la discussion', __FILE__, __LINE__, $db->error());

Ca permet de récupère le message dans la variable $cur_topic['message']. Le message est coupé au 300 premiers caractères ( j'ai pompé ce que fait la recherche pour couper un message)... donc reste plus qu'a faire le traitement pour l'afficher dans la méta. Bon la, j'vais y réfléchir, mais appriori un simple explode (ou implode j'sais jamais), ca doit pouvoir passer
Voila, ca fait déjà un peu avancé le problème je pense tongue

edit : Je récupère le premier message du topic, et pas le premier message de la page.
Pour pouvoir récupèrer le premier message de la page, faudrait déplacer la variable $start_from (et ce qui va avec), juste avant la requête pour pouvoir l'utiliser
-------------

Je viens de faire un test pour savoir si la requête donné dans le code pouvait éventuellement trop ralentir le temps d'accès à une page.
La moyenne est celle de 10 requêtes fait via phpmyadmin

Requête de base sur un topic de 153 pages :
- Moyenne : 0,00557 sec
Requête avec jointure sur la table post sur un topic de 153 pages de messages:
- Moyenne : 0,04592 sec

Requête de base sur un topic de 8 message :
- Moyenne 0,009
Requête avec jointure sur la table post sur un topic de 8 messages :
- Moyenne : 0,00193

Au niveau temps de réponse, on a les même résultats en temps d'accès (enfin en gros) qu'avec une requête simple sur la table post toutes seule

Donc en fait, au niveau temps d'accès d'un topic, comme on fait une requête sur la table post à 2 reprise (pour le topic avec jointure pour récupèrer 1 message, et celle pour récupère les messages à afficher), on doit pouvoir au moins multiplier par 2 le temps d'accès à un topic en ajoutant la jointure dans la requete.

Ca à l'air d'être assez "négligeable", y'a vraiment que si ce sont de gros topics que ca pourrait éventuellement ralentir considérablement le temps d'accès, et encore que, c'est quand même relativement rapide
( bon, j'ai pas une grosse base de donnée, donc ca joue peut être aussi )

Dernière modification par Lyconide (01-10-2006 20:56:17)

Hors ligne

#29 01-10-2006 21:38:58

Audiofeeline
Habitué

Re : Problème avec Google!

ça peut-être une solution temporaire si on arrive à se faire comprendre...


Divertissement : Cinéma, musique, jeux vidéo, Internet et web 2.0...
Musique : Actualité musicale, vidéo clips et chroniques d'albums...
Geek : High tech et culture geek...

Hors ligne

#30 01-10-2006 21:46:47

docteur_marc
Régulier

Re : Problème avec Google!

j utilise un mod pour le RSS  celui alex king

http://www.alexking.org/index.php?conte … ontent.php

je pense  qu il y a tout ce qu il faut  dedans ..

regarde cette fonction ...

function putPost($cur)  je m y connais pas trop bien mais je pense que cest exploitable

Dernière modification par docteur_marc (02-10-2006 12:56:43)


Nous autres, mordus d'informatique, préférons par-dessus tout passer notre temps à bidouiller nos ordinateurs, plutôt que les utiliser pour faire quelque chose de productif.

Hors ligne

#31 02-10-2006 13:06:10

docteur_marc
Régulier

Re : Problème avec Google!

Audiofeeline a écrit :

ça peut-être une solution temporaire si on arrive à se faire comprendre...

c'est ca le plus dur en fin de compte !

dans parser.php

il y a cette function

function parse_message ligne 375

quelq'un peut me confirmer que cest bien la fonction d'affichage du text d un topic ?

Dernière modification par docteur_marc (02-10-2006 15:17:41)


Nous autres, mordus d'informatique, préférons par-dessus tout passer notre temps à bidouiller nos ordinateurs, plutôt que les utiliser pour faire quelque chose de productif.

Hors ligne

#32 02-10-2006 18:16:37

Lyconide
Habitué

Re : Problème avec Google!

docteur_marc a écrit :

function parse_message ligne 375

quelq'un peut me confirmer que cest bien la fonction d'affichage du text d un topic ?

function parse_message n'affiche pas le texte, cette fonction permet de faire la correspondance entre le bbcode, et le code html associé
C'est ce qui va transformé l'intérieur d'un  en italique par exemple.

Donc aucun interet pour ce que vous voulez faire. Les 300 premiers caractères du message, avec la modif donné plus haut, se trouvent dans la variable :
$cur_topic['message']

Ce qui veut dire que si vous voulez afficher cette variable dans la méta, voila ce qu'il faut faire :
echo '<meta name="keywords" content="'.$cur_topic['message'].'" />'."\n";

Problème :
- Les balises bbcode toujours présentes (de plus, l'intérieur d'une balise telle que [url]ou [img] n'a aucun interet à être présent dans la méta description, au contraire de [i], [b]...)

Voila ce à quoi il faut réfléchir.
Ca passe surement par une autre fonction parser, à base d'expression régulière... pour supprimer toutes les balises [...] et [/...], et ne garder que l'intérieur  (sauf certaines bien sur)

Edit : j'ai modifié un peu le problème. Je pensais que c'était les mots clefs que vous vouliez mettre en meta (j'sais pas pq je pensais ca d'ailleurs, vu que j'ai coupé la chaine au 300 premiers caractères siffle). Donc, reste surtout à supprimer les balises, et je crois pas qu'il y ai une fonction de base de punbb qui le fasse

Dernière modification par Lyconide (02-10-2006 18:21:21)

Hors ligne

#33 02-10-2006 18:27:01

mangafan
Habitué très actif

Re : Problème avec Google!

Oui, ca va finir en usine à gaz tout ça. Mais passer par un fil rss c'est peut-être une solution à moindre mal.


canon Mangafan : Mettez un chat dans votre processeur ! happy

Hors ligne

#34 02-10-2006 18:48:56

Lyconide
Habitué

Re : Problème avec Google!

mangafan a écrit :

Oui, ca va finir en usine à gaz tout ça. Mais passer par un fil rss c'est peut-être une solution à moindre mal.

Ne pas oublier ce qui est demandé à la base. Ce qui n'a rien à voir avec un fil rss happy
De plus qu'est-ce qui te fait dire "usine à gaz" ? C'est le terme expression régulière que j'ai utilisé ? big_smile
( car sinon, niveau modif, pour le moment y'a pas grand chose à faire, d'autant plus que ca ralentit en rien le forum, donc j'aimerais bien comprendre l'utilisation du terme en question... qui est plutot assez fort tongue)

Dernière modification par Lyconide (02-10-2006 18:50:04)

Hors ligne

#35 02-10-2006 19:00:25

docteur_marc
Régulier

Re : Problème avec Google!

Lyconide a écrit :

Edit : j'ai modifié un peu le problème. Je pensais que c'était les mots clefs que vous vouliez mettre en meta (j'sais pas pq je pensais ca d'ailleurs, vu que j'ai coupé la chaine au 300 premiers caractères siffle). Donc, reste surtout à supprimer les balises, et je crois pas qu'il y ai une fonction de base de punbb qui le fasse

dans le code mod RSS citée plus haut  il vire les tag tu devrais regarder comment il fait..
exemple: http://www.docteurmarc.com/forum/rss.php?fid=9
regarde le fils rSS qui genere  la derniere description  est normalement remplis de bbcode 

Hors dans le RSS  il ny a plus de BBCODE



on desirerais comme cette modifcation pour dotclear

mais adapter pour punBB  mais on est trop nul en php

http://www.dotclear.net/forum/viewtopic … 583#p73583

Dernière modification par docteur_marc (02-10-2006 19:28:02)


Nous autres, mordus d'informatique, préférons par-dessus tout passer notre temps à bidouiller nos ordinateurs, plutôt que les utiliser pour faire quelque chose de productif.

Hors ligne

#36 02-10-2006 19:38:29

mangafan
Habitué très actif

Re : Problème avec Google!

T'as pas compris ma remarque pour envoyer les 300 premiers caractères dans les balises meta qui se trouvent être créés dans le header.php.

Il faut contourner :
- les problèmes dû au bbcode,
- créer une rêquete dans le header.php,
- s'assurer des caractères envoyés (les poctuations et cie).

Quand je parle de rss c'est pour faire quelque chose du genre.

<head>
<meta http-equiv="Content-Type" content="text/html; charset=<pun_char_encoding>" />
<pun_head>
<meta name="keywords" content="<pun_include "fil-rss-des-3OO-caractères-propre-dans un-script-dédié-tout-propre" >" />
</head>

A la reflexion le rss m'a soufflé l'idée mais un script prévu à cet effet serait plutôt un plug-in.

Dernière modification par mangafan (02-10-2006 19:40:47)


canon Mangafan : Mettez un chat dans votre processeur ! happy

Hors ligne

#37 02-10-2006 19:52:21

dahousemix
Habitué actif

Re : Problème avec Google!

Lyconide a écrit :

Requête de base sur un topic de 153 pages :
- Moyenne : 0,00557 sec
Requête avec jointure sur la table post sur un topic de 153 pages de messages:
- Moyenne : 0,04592 sec

Requête de base sur un topic de 8 message :
- Moyenne 0,009
Requête avec jointure sur la table post sur un topic de 8 messages :
- Moyenne : 0,00193
Au niveau temps de réponse, on a les même résultats en temps d'accès (enfin en gros) qu'avec une requête simple sur la table post toutes seule

Excuse moi mais je trouve ça assez énorme comme différence de temps de réponse, sur un gros forum avec rien qu'une cinquantaine de connectés tu multiplies énormément les temps rien que pour ça...

Hors ligne

#38 02-10-2006 21:48:03

mangafan
Habitué très actif

Re : Problème avec Google!

Juste histoire de montrer que même si l'idée me semble pas utilie à 100%, j'ai quand même fait un petit test en local.

Dans le main.tpl :

<html dir="<pun_content_direction>">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=<pun_char_encoding>" />
<pun_head>
<pun_include "motcle.php">
</head>
<body>

La page motcle.php dans /include/user :
(Très dépouillé, j'ai juste mis deux conditions pour montrer qu'il y avait la un moyen de récupérer les variables de la page viewforum sans forcèment devoir créer une requête supplémentaire.)

<?php
if ($pun_user['is_guest'] &&  $footer_style == 'viewtopic')
{
echo '<meta name="keywords" content="youpi, voilà, les, mots, clés, sur, mes, topics" />';
}
?>

Dernière modification par mangafan (02-10-2006 22:57:43)


canon Mangafan : Mettez un chat dans votre processeur ! happy

Hors ligne

#39 02-10-2006 22:58:55

Lyconide
Habitué

Re : Problème avec Google!

@dahousemix : J'suis d'accord avec toi, les temps sont pas négligeable.
L'exemple montre quand même que ca doit se ressentir principalement sur des topics énormes (encore que)
Et, sur les petits topics, la différence de temps est pas aussi grande.

Quand je vois les temps d'accès d'un forum punbb (pour ne pas le citer, omplanete... j'suis pas admin, ni modo la bas, c'est juste pour l'exemple), 183 membres connectés avec plus d'1M de message, je me dit que sur un forum comme ca, la requête plus haute ne doit pas ralentir plus que ca le forum (ca me parait être déjà un assez gros forum tongue)

Bon, comme ca m'embetait quand même un peu (pour ca que j'avais fait un petit test), et que tu penses la même chose dahousemix. J'ai refait la modif en n'ajoutant aucune requête, ni en les modifiants... j'ai juste déplacé/modifié un poil des bouts de code déjà présent à l'origine
Donc voila, on reprends tout et on recommence big_smile

#
#---------[ 1. OUVRIR ]-----------------------------------------------------
#
viewtopic.php

#
#---------[ 2. TROUVER ]-----------------------------------------------------
#
require PUN_ROOT.'header.php';

#
#---------[ 3. AJOUTER AVANT ]------------------------------------------------
#
// Retrieve the posts (and their respective poster/online status)
$result = $db->query('SELECT u.email, u.title, u.url, u.location, u.use_avatar, u.signature, u.email_setting, u.num_posts, u.registered, u.admin_note, p.id, p.poster AS username, p.poster_id, p.poster_ip, p.poster_email, p.message, p.hide_smilies, p.posted, p.edited, p.edited_by, g.g_id, g.g_user_title, o.user_id AS is_online FROM '.$db->prefix.'posts AS p INNER JOIN '.$db->prefix.'users AS u ON u.id=p.poster_id INNER JOIN '.$db->prefix.'groups AS g ON g.g_id=u.group_id LEFT JOIN '.$db->prefix.'online AS o ON (o.user_id=u.id AND o.user_id!=1 AND o.idle=0) WHERE p.topic_id='.$id.' ORDER BY p.id LIMIT '.$start_from.','.$pun_user['disp_posts']) or error('Impossible de retrouver les informations des messages', __FILE__, __LINE__, $db->error());
$cur_post = $db->fetch_assoc($result);

#
#---------[ 4. TROUVER ]-----------------------------------------------------
#
// Retrieve the posts (and their respective poster/online status)
$result = $db->query('SELECT u.email, u.title, u.url, u.location, u.use_avatar, u.signature, u.email_setting, u.num_posts, u.registered, u.admin_note, p.id, p.poster AS username, p.poster_id, p.poster_ip, p.poster_email, p.message, p.hide_smilies, p.posted, p.edited, p.edited_by, g.g_id, g.g_user_title, o.user_id AS is_online FROM '.$db->prefix.'posts AS p INNER JOIN '.$db->prefix.'users AS u ON u.id=p.poster_id INNER JOIN '.$db->prefix.'groups AS g ON g.g_id=u.group_id LEFT JOIN '.$db->prefix.'online AS o ON (o.user_id=u.id AND o.user_id!=1 AND o.idle=0) WHERE p.topic_id='.$id.' ORDER BY p.id LIMIT '.$start_from.','.$pun_user['disp_posts'], true) or error('Impossible de retrouver les informations des messages', __FILE__, __LINE__, $db->error());

#
#---------[ 5. SUPPRIMER LA LIGNE ]----------------------------------------------------
#

#
#---------[ 6. TROUVER ]-----------------------------------------------------
#
while ($cur_post = $db->fetch_assoc($result))

#
#---------[ 7. REMPLACER PAR ]----------------------------------------------------
#
if($cur_post){
do

#
#---------[ 8. TROUVER ]-----------------------------------------------------
#
}

?>
<div class="postlinksb">

#
#---------[ 9. AJOUTER AVANT ]----------------------------------------------------
#
}while ($cur_post = $db->fetch_assoc($result));

#
#---------[ 10. OUVRIR ]----------------------------------------------------
#
header.php

#
#---------[ 11. TROUVER ]----------------------------------------------------
#
    echo '<meta name="ROBOTS" content="NOINDEX, FOLLOW" />'."\n";

#
#---------[ 12. AJOUTER APRES ]----------------------------------------------------
#
if(isset($cur_post['message']))
    echo '<meta name="description" content="'.substr($cur_post['message'], 0, 300).'" />'."\n";

Reste toujours le problème des balises bbcode wink La solution utilisée pour le rss fonctionne, mais elle me plait pas trop dans le sens, ou on parse le message, et ensuite on enlève les balises du code html. Alors qu'il serait plus simple d'enlever directement les balises du code bbcode (et ca évite de passer par une étape inutile à mon sens).

@mangafan : Effectivement, j'l'avais pas compris comme ca smile

Hors ligne

#40 02-10-2006 23:16:08

docteur_marc
Régulier

Re : Problème avec Google!

cool merci on va tester ca !!

cela marche !!!!

mais cest vrai qu il faut nettoyer les espace blanc  et le BBcode et l'html

Dernière modification par docteur_marc (02-10-2006 23:37:38)


Nous autres, mordus d'informatique, préférons par-dessus tout passer notre temps à bidouiller nos ordinateurs, plutôt que les utiliser pour faire quelque chose de productif.

Hors ligne

#41 02-10-2006 23:26:54

mangafan
Habitué très actif

Re : Problème avec Google!

En fait je venais de laisser tomber l'idée du rss et je partais plutôt sur ça.

Même modif pour le main.tpl

<head>
<meta http-equiv="Content-Type" content="text/html; charset=<pun_char_encoding>" />
<pun_head>
<pun_include "motcle.php">
</head>

Créer motcle.php dans include/user/

<?php
if ($pun_user['is_guest'] &&  $footer_style == 'viewtopic')
{
echo '<meta name="keywords" content="' . $keywords . '" />';
}
?>

Ouvrir

viewtopic.php

Trouver

[c]// Perform the main parsing of the message (BBCode, smilies, censor words etc)[/c]

Ajourter juste avant

[c]if($post_count == 1) $keywords = $cur_post['message'];[/c]

En fait dans PunBB si il y a un truc que j'aime pas modifier c'est les requêtes sql.


canon Mangafan : Mettez un chat dans votre processeur ! happy

Hors ligne

#42 03-10-2006 10:40:31

docteur_marc
Régulier

Re : Problème avec Google!

Lyconide ton mod marche tres bien .. (reste a regler les espace blanc et le BBcode)

on sait tous que <?php echo $page_title ?>  suivant la page que l on affiche
(voir topic plus haut) au fur et a mesure que l on decend dans le forum

renvoit  "le nom du site"
ou        "le nom du site" +"le nom du forum"
ou        "le nom du site" +" le titre du post"

on peut imaginer un 4ieme niveau ?

"le nom du site" + "premier mot du post"
?



peut etre en modifiant  la function  $page_title  il ny aurais qu"un fichier a modifier ?

$page tile est definie dans function.php ligne 569

c'est juste une idée comme ça ?

Dernière modification par docteur_marc (03-10-2006 11:19:03)


Nous autres, mordus d'informatique, préférons par-dessus tout passer notre temps à bidouiller nos ordinateurs, plutôt que les utiliser pour faire quelque chose de productif.

Hors ligne

#43 03-10-2006 11:59:19

Lyconide
Habitué

Re : Problème avec Google!

@mangafan :
J'avoue, c'est encore plus simple par ta méthode smile Ca évite de déplacer du code un peu partout
*connaissais pas trop ce pun_include*

Voila ce que donne ta méthode au propre, mais pour la meta description (et pas keywords... pour keywords, faut faire un autre traitement), avec une fonction qui parse le message. On ne doit plus avoir que les 300 premiers caractères sans bbcode. Faut tester si la fonction qui enlève les bbcodes fonctionnent correctement tongue

#
#---------[ 1. OUVRIR ]-----------------------------------------------------
#
include/template/main.tpl

#
#---------[ 2. TROUVER ]-----------------------------------------------------
#
<pun_head>

#
#---------[ 3. AJOUTER APRES ]------------------------------------------------
#
<pun_include "meta.php">

#
#---------[ 4. OUVRIR ]-----------------------------------------------------
#
viewtopic.php

#
#---------[ 5. TROUVER ]-----------------------------------------------------
#
// Perform the main parsing of the message (BBCode, smilies, censor words etc)

#
#---------[ 6. AJOUTER AVANT ]-----------------------------------------------------
#
if($post_count == 1) $description = $cur_post['message'];

#
#---------[ 7. OUVRIR ]-----------------------------------------------------
#
include/parser.php

#
#---------[ 8. AJOUTER A LA FIN ]-----------------------------------------------------
#
function parser_del_bbcode($text, $size){
    global $pun_config;

    if ($pun_config['o_censoring'] == '1')
        $text = censor_words($text);

    // ending html tags into line breaks
    $text=preg_replace('#\[(hide|url|img|quote)\](.*?)\[/(hide|url|img|quote)\]#s','',$text);
    $text=preg_replace('#\[quote=(?:.*?)\](.*?)\[/quote\]#s','',$text);    
    $text=preg_replace('#\[(url|color|email)=(?:.*?)\](.*?)\[/(url|color|email)\]#s','$2',$text);
    // remove other bbcode tags
    $text=preg_replace('#\[(.*?)\]#s','',$text);
    // remove newlines
    $text=preg_replace('# +#s',' ',$text);
    $text=preg_replace('#\n#s','',$text);
    return substr($text, 0, $size);
}

Et il faut créer le fichier : meta.php dans le dossier include/user/
Avec à l'intérieur :

<?php
if ($pun_user['is_guest'] &&  $footer_style == 'viewtopic')
{
    echo '<meta name="description" content="' . parser_del_bbcode($description,300) . '" />';
}
?>

@docteur_marc : qu'est-ce que tu veux dire par regler les "espace blanc" ?
Ca serait plutot pour les balises keywords qu'il faudrait régler les espaces non ?

Dernière modification par Lyconide (05-10-2006 22:26:30)

Hors ligne

#44 03-10-2006 12:14:06

docteur_marc
Régulier

Re : Problème avec Google!

Lyconide a écrit :

@docteur_marc : qu'est-ce que tu veux dire par regler les "espace blanc" ?
Ca serait plutot pour les balises keywords qu'il faudrait régler les espaces non ?

et bien par exemple on fait un post comme ce ci

----------------------------
bonjour,
debut du post  blabla bla bla
---------------------------------
bonjour, --------- supprimer le blanc entre --------
debut du post  blabla bla bla
---------------------------------

sinon  on a des description  avec de grand espace blanc  et si je me souvient  pour un moteur de recherche  un espace = un caractere..


Nous autres, mordus d'informatique, préférons par-dessus tout passer notre temps à bidouiller nos ordinateurs, plutôt que les utiliser pour faire quelque chose de productif.

Hors ligne

#45 03-10-2006 15:31:47

mangafan
Habitué très actif

Re : Problème avec Google!

Oui j'ai fait ça à la va vite, après faut jouer un peu du str_replace ou autre.

J'avais commencé ça pour motcle.php.

<?php
if ($pun_user['is_guest'] &&  $footer_style == 'viewtopic')
{
$keywords = str_replace(array("\r", "\n", " "), " ", $keywords);
$keywords = str_replace(array(" "), ", ", $keywords);
$keywords = str_replace(array(",,",".,"), ",", $keywords);
echo '<meta name="keywords" content="' . $keywords . '" />';
}
?>

Mais ce n'est pas optimisé ni très judicieux, il faut revoir plein de truc...

Virer le bbcode, les liens, les courriels, les ponctuations, les articles (le, la, les, un, une, de, des, etc), les sujets inutiles (j, ,je, t, tu, il, nous , vous, etc), les verbes être et avoir, etc...

C'est le plus dure, c'est la partie usine à gaz. L'avantage de ma méthode pour ne pas être incommodé, le visiteur s'inscrit, il n'est plus en guest et il ne mange pas le temps de génération des mots clés.

Dernière modification par mangafan (03-10-2006 19:21:43)


canon Mangafan : Mettez un chat dans votre processeur ! happy

Hors ligne

#46 05-10-2006 19:49:09

docteur_marc
Régulier

Re : Problème avec Google!

les keywords sont moin important que le tag description

j'ai remarquer  que msn et google prend en compte dabord

1° tag description
en 2ieme  le premier ALT qu il trouve 
en 3 ieme <title>
et en dernier apres la page , seulement les keywords

Dernière modification par docteur_marc (05-10-2006 19:49:44)


Nous autres, mordus d'informatique, préférons par-dessus tout passer notre temps à bidouiller nos ordinateurs, plutôt que les utiliser pour faire quelque chose de productif.

Hors ligne

#47 05-10-2006 22:20:34

-aat-
Membre

Re : Problème avec Google!

Vous perdez votre temps avec la meta description... Ca fait des années que Google n'utilise plus les meta pour le ranling des sites! Google se sert uniquement de la meta description pour afficher un snippet des sites qui n'ont pas assez de contenu pour créer un résumé.

A coté de ça, le Punbb de base a de gros obstables pour le referencement. Le principal, c'est le "duplicate content" (plusieurs url mènent au même contenu). Et puis aussi la gestion des entêtes qui est assez exotique. Mais on en a déjà parlé...


Envie d'un blog? Créer un blog sur Blaug.fr

Hors ligne

#48 05-10-2006 22:29:28

docteur_marc
Régulier

Re : Problème avec Google!

je fait partie des site a petit contenu

c'est pour ca (si tu regarde plus haut) qu on essaye de faire un mod dynamic
pour le meta description

et il marche plutot bien

je que commence a avoir des resultats  plus que probant

Dernière modification par docteur_marc (05-10-2006 22:38:56)


Nous autres, mordus d'informatique, préférons par-dessus tout passer notre temps à bidouiller nos ordinateurs, plutôt que les utiliser pour faire quelque chose de productif.

Hors ligne

#49 05-10-2006 23:26:52

Lyconide
Habitué

Re : Problème avec Google!

J'ai ajouté une modif sur mon dernier message (partie parser.php, j'ai ajouté une ligne. Et partie viewtopic.php, j'ai modifié une variable)

Normalement, il ne devrait plus y avoir d'espaces multiples, mais 1 seul espace au max.

Hors ligne

#50 05-10-2006 23:32:21

docteur_marc
Régulier

Re : Problème avec Google!

http://fr.php.net/preg_replace   

il y a un script pour enlever le bbcode


merci lyco  je vient seulement de voir ta modif ..

Dernière modification par docteur_marc (05-10-2006 23:35:26)


Nous autres, mordus d'informatique, préférons par-dessus tout passer notre temps à bidouiller nos ordinateurs, plutôt que les utiliser pour faire quelque chose de productif.

Hors ligne

Pied de page des forums