| |
|
| :: |
| Auteur |
Message |
philippe phpBB SEO Team


Inscrit le: 23 Juin 2006 Messages: 495 Localisation: Région Parisienne
|
Posté le: Ven Juil 28, 2006 12:33 pm Sujet du message: Réécriture kb et pafiledb |
|
|
Je suis en train d'ajouter le mod rewrite pour la knowledge base et pafiledb mais pour ce dernier, je n'ai pas la réécriture correcte.
J'ai ajouté quelques lignes dans le sessions.php
| Code: |
$urlin = array( "'(?)viewtopic.".$phpEx."\?t=([0-9]+)".$amp."start=([0-9]+)(".$amp."){0,1}'",
"'(?)viewtopic.".$phpEx."\?t=([0-9]+)(".$amp."){0,1}'",
"'(?)viewtopic.".$phpEx."\?p=([0-9]+)(".$amp."){0,1}'",
"'(?)profile.".$phpEx."\?mode\=viewprofile".$amp."u=([0-9]+)(".$amp."){0,1}'", "'(?)kb.".$phpEx."\?mode\=cat".$amp."cat=([0-9]+)(".$amp."){0,1}'", "'(?)kb.".$phpEx."\?mode\=article".$amp."k=([0-9]+)(".$amp."){0,1}'", "'(?)dload.".$phpEx."\?action\=category".$amp."cat_id=([0-9]+)(".$amp."){0,1}'", "'(?)dload.".$phpEx."\?action\=file".$amp."file_id=([0-9]+)(".$amp."){0,1}'",
);
$urlout = array( "topic\\1-\\2.html".if_query('\\3')."",
"topic\\1.html".if_query('\\2')."",
"post\\1.html".if_query('\\2')."",
"membre\\1.html".if_query('\\2')."",
"support_cat\\1.html".if_query('\\2')."",
"support_article\\1.html".if_query('\\2')."",
"d_cat\\1.html".if_query('\\2')."",
"d_file\\1.html".if_query('\\2')."",
|
Pour les deux dernières lignes les url ne sont pas réécrites.
J'ai aussi fait quelques modifs de GGsitemap pour adapter les url de kb.
J'ai bon ou je devrais aller me recoucher ? |
_________________ Philippe
Webmaster du forum de Discussions sur la New Beetle | Blog 123-newbeetle | Annuaire Automobile |
|
| Revenir en haut de page |
|
 |
|
 |
dcz Administrateur - Site Admin

Inscrit le: 28 Avr 2006 Messages: 14131
|
Posté le: Ven Juil 28, 2006 2:52 pm Sujet du message: Re: Réécriture kb et pafiledb |
|
|
Tout d'abord bravo, tu est sur le bon chemin, la classe même
Comme tu le vois la "grammaire" de réécriture que je met en place est au final hyper souple et pas si complexe que ça, surtout en mod simple.
Tout se fait depuis l'endroit ou tu bosses, pour peux que les mods utilisent append_sid().
Et du coup je me demande si c'est pas le problème que tu as avec pafiledb.
Il faudrait vérifier si la version que tu utilises emploie bien append_sid(), si c'est une version pour phpBB. Si tu vois des liens (recherche directement "dload" dans les fichiers, c'est le script que tu souhaite réécrire) construits sans append_sid, rajoute la simplement, comme dans le code de phpBB :
genre :$url = 'dload' . $phpEx . '?mode=' .... => $url = append_sid ('dload' . $phpEx . '?mode=' ....).
Si c'est du modage perso sur la base de phparena, et qui ne partage pas vraiment les sessions de phpBB, alors il faudra essayer un autre truc, genre tout de même entourer le lien d'une fonction, mais une autre, dédié à pafiledb, ou utiliser celle qui serait déjà là, mais du coup faudrait voir si il y a pas de nouvelles exceptions.
Dans tous les cas, dès qu'une version à jour de KB sort, je sort un mod, et pour pafiledb, je n'en connais pas non plus pour phpBB, mais si tu as un lien pour le dl ....
Pour KB, il te manque rien pour la pagination des catégories, un truc du type :
| Code: |
"'(?)kb." . $phpEx . "\?mode\=cat" . $amp . "catt=([0-9]+)" . $amp . "start=([0-9]+)(" . $amp . "){0,1}'", |
couplé à :
| Code: |
"support_cat\\1-\\2.html".if_query('\\3)."", |
Le fera nickel
Juste, à placer avant la règle sans pagination, et pareil pour le .htaccess, la règle paginée du type :
| Code: | | RewriteRule ^support_cat([0-9]+)-([0-9]+)\.html$ /kb.php?mode=cat&cat=$1&start=$2 [QSA,L] |
avant celle sans pagination.
Et sans duplicates svp
++ |
_________________ Useful links :
SEO Forum || SEO Directory || SEO phpBB || SEO phpBB3 || Search
____________________
Liens Utiles :
Forum référencement || Annuaire référencement || Référencement phpBB || Référencement phpBB3 || Recherche |
|
| Revenir en haut de page |
|
 |
philippe phpBB SEO Team


Inscrit le: 23 Juin 2006 Messages: 495 Localisation: Région Parisienne
|
Posté le: Ven Juil 28, 2006 4:56 pm Sujet du message: Re: Réécriture kb et pafiledb |
|
|
Merci du compliment
Pour kb, ca devrait me suffir pour le moment pour référencer les articles, je vais juste ajouter ce que tu as indiqué.
Pour Pafiledb, en fait c'est la version du site mx-system pour phpBB
http://www.mx-system.com/modules/mx_pafiledb/dload.php?action=download&file_id=27
Pour les url, elles sont du type
| Code: |
'U_CAT' => append_sid( pa_this_mxurl( 'action=category&cat_id=' . $sub_cat_rowset[$k]['cat_id'] ) ),
|
Avec la fonction pa_this_mxurl créée dans pafiledb_common.php:
| Code: |
// Generate paths for page and standalone mode
// ...function based on original function written by Markus :-)
function pa_this_mxurl( $args = '', $force_standalone_mode = false )
{
global $mx_root_path, $module_root_path, $page_id, $phpEx, $is_block;
if ( $force_standalone_mode || !$is_block )
{
$mxurl = $module_root_path . 'dload.' . $phpEx . ( $args == '' ? '' : '?' . $args );
}
else
{
$mxurl = $mx_root_path . 'index.' . $phpEx;
if ( is_numeric( $page_id ) )
{
$mxurl .= '?page=' . $page_id . ( $args == '' ? '' : '&' . $args );
}
else
{
$mxurl .= ( $args == '' ? '' : '?' . $args );
}
}
return $mxurl;
|
Je vais faire quelques tests |
_________________ Philippe
Webmaster du forum de Discussions sur la New Beetle | Blog 123-newbeetle | Annuaire Automobile |
|
| Revenir en haut de page |
|
 |
dcz Administrateur - Site Admin

Inscrit le: 28 Avr 2006 Messages: 14131
|
Posté le: Ven Juil 28, 2006 5:14 pm Sujet du message: Re: Réécriture kb et pafiledb |
|
|
Ahh bah nickel, pas besoin de chercher plus loin alors, tu met les règles direct dans pa_this_mxurl, le seul cas qui t'intéresses est le premier (si comme je le pense tu n'utilise pas mxBB) :
| Code: | if ( $force_standalone_mode || !$is_block )
{
$mxurl = $module_root_path . 'dload.' . $phpEx . ( $args == '' ? '' : '?' . $args );
} |
Tu ne sort pas de ce if avec phpBB
Le else est pour mxBB.
Du coup, tu met le code pour pafiledb dans ce if, après le passage des arguments, et tu fait attention de retourner et de traiter $mxurl
et aussi de ne pas faire la même chose dans append_sid et ça va rouler.
++ |
_________________ Useful links :
SEO Forum || SEO Directory || SEO phpBB || SEO phpBB3 || Search
____________________
Liens Utiles :
Forum référencement || Annuaire référencement || Référencement phpBB || Référencement phpBB3 || Recherche |
|
| Revenir en haut de page |
|
 |
philippe phpBB SEO Team


Inscrit le: 23 Juin 2006 Messages: 495 Localisation: Région Parisienne
|
Posté le: Ven Juil 28, 2006 7:28 pm Sujet du message: Re: Réécriture kb et pafiledb |
|
|
J'ai un peu de mal la
Dans ce style la ?
| Code: |
if ( $force_standalone_mode || !$is_block )
{
$mxurl = $module_root_path . 'dload.' . $phpEx . ( $args == '' ? '' : '?' . $args );
$amp = ($non_html_amp) ? '&' : '&';
$urlin = array( "'(?)dload.".$phpEx."\?action\=category".$amp."cat_id=([0-9]+)(".$amp."){0,1}'",
"'(?)dload.".$phpEx."\?action\=file".$amp."file_id=([0-9]+)(".$amp."){0,1}'",
);
$urlout = array( "d_cat\\1.html".if_query('\\2')."",
"d_file\\1.html".if_query('\\2')."",
);
$mxurl = preg_replace($urlin, $urlout, $mxurl);
$mxurl = (substr($mxurl, strlen($mxurl) - 1, 1) == '?') ? substr($mxurl, 0, strlen($mxurl) - 1) : $mxurl;
}
|
|
_________________ Philippe
Webmaster du forum de Discussions sur la New Beetle | Blog 123-newbeetle | Annuaire Automobile |
|
| Revenir en haut de page |
|
 |
dcz Administrateur - Site Admin

Inscrit le: 28 Avr 2006 Messages: 14131
|
|
| Revenir en haut de page |
|
 |
philippe phpBB SEO Team


Inscrit le: 23 Juin 2006 Messages: 495 Localisation: Région Parisienne
|
|
| Revenir en haut de page |
|
 |
dcz Administrateur - Site Admin

Inscrit le: 28 Avr 2006 Messages: 14131
|
|
| Revenir en haut de page |
|
 |
philippe phpBB SEO Team


Inscrit le: 23 Juin 2006 Messages: 495 Localisation: Région Parisienne
|
Posté le: Sam Juil 29, 2006 8:42 am Sujet du message: Re: Réécriture kb et pafiledb |
|
|
Il me reste à trouver comment isèrer les catégories et les noms de fichiers dans le tite à la place du simple titre de la page.
 |
_________________ Philippe
Webmaster du forum de Discussions sur la New Beetle | Blog 123-newbeetle | Annuaire Automobile |
|
| Revenir en haut de page |
|
 |
dcz Administrateur - Site Admin

Inscrit le: 28 Avr 2006 Messages: 14131
|
|
| Revenir en haut de page |
|
 |
philippe phpBB SEO Team


Inscrit le: 23 Juin 2006 Messages: 495 Localisation: Région Parisienne
|
|
| Revenir en haut de page |
|
 |
dcz Administrateur - Site Admin

Inscrit le: 28 Avr 2006 Messages: 14131
|
Posté le: Sam Juil 29, 2006 2:09 pm Sujet du message: Re: Réécriture kb et pafiledb |
|
|
Alors comme je te l'ai dis, c'est pas la même pour pafiledb :
| Code: | $page_title = $lang['Download'];
if ( $action != 'download' )
{
/* - orig
include($phpbb_root_path . 'includes/page_header.'.$phpEx);
*/
// MX
if ( !$is_block )
{
include( $mx_root_path . 'includes/page_header.' . $phpEx );
}
}
$pafiledb->module( $actions[$action] );
$pafiledb->modules[$actions[$action]]->main( $action ); |
L'inclusion de l'overall header, dans lequel est définit le titre est postérieur à la recherche d'information sur la page de pafiledb demandée.
Donc, le seul truc que tu pourrais faire serait d'ajouter un code qui, avant l'include de l'overall header, recherche le titre du fichier ou de la catégorie.
Il te suffit de faire cela quand $action == 'category' ou $action == 'file' pour ces deux cas.
Mais cela alourdit forcement un peut, à voir si ça vaut le coup pour ce type de contenu.
Promis dès que je me penche vraiment sur pafiledb, je t'avertirais
++ |
_________________ Useful links :
SEO Forum || SEO Directory || SEO phpBB || SEO phpBB3 || Search
____________________
Liens Utiles :
Forum référencement || Annuaire référencement || Référencement phpBB || Référencement phpBB3 || Recherche |
|
| Revenir en haut de page |
|
 |
philippe phpBB SEO Team


Inscrit le: 23 Juin 2006 Messages: 495 Localisation: Région Parisienne
|
Posté le: Sam Juil 29, 2006 2:55 pm Sujet du message: Re: Réécriture kb et pafiledb |
|
|
Ouiap, ca vaut pas trop le coup pour ce type de contenu de se chercher pour le moment, j'ai d'autres trucs en tête.
La réécriture de ces url est déja pas mal.  |
_________________ Philippe
Webmaster du forum de Discussions sur la New Beetle | Blog 123-newbeetle | Annuaire Automobile |
|
| Revenir en haut de page |
|
 |
philippe phpBB SEO Team


Inscrit le: 23 Juin 2006 Messages: 495 Localisation: Région Parisienne
|
Posté le: Mer Aoû 23, 2006 4:50 pm Sujet du message: Re: Réécriture kb et pafiledb |
|
|
Je reviens un peu à la charge car toutes les pages de téléchargement sont référencées:
| Code: | Téléchargements
Ce site consacré à la new beetle de volkswagen est à la disposition de tous les fans francophones de newbeetle. annonces, rencontres et discussion sont au ...
www.forum-newbeetle.com/download_cat3.html - 21k - En cache - Pages similaires |
| Citation: | Donc, le seul truc que tu pourrais faire serait d'ajouter un code qui, avant l'include de l'overall header, recherche le titre du fichier ou de la catégorie.
Il te suffit de faire cela quand $action == 'category' ou $action == 'file' pour ces deux cas.
|
J'ai un peu de mal pour comprendre le codage de pafiledb
 |
_________________ Philippe
Webmaster du forum de Discussions sur la New Beetle | Blog 123-newbeetle | Annuaire Automobile |
|
| Revenir en haut de page |
|
 |
dcz Administrateur - Site Admin

Inscrit le: 28 Avr 2006 Messages: 14131
|
Posté le: Mer Aoû 23, 2006 11:55 pm Sujet du message: Re: Réécriture kb et pafiledb |
|
|
Et oui, les joies de l'orienté objet peut commenté et réparti sur beaucoup de fichiers.
Mais en fait pour les titres, il y a pas 36 façons de voir les choses, rien n'est possible après l'envoi de page_header.php dans dload.php.
Du coup c'est vraiment comme je te le dis, il faut ajouter une requête SQL pour les mettre, et en prenant soin de filtrer tous les cas, et il y en a pas mal.
Une fois le titre calculé, tu n'aurais qu'as le mettre à la place de :
| Code: | | $page_title = $lang['Download']; |
deviendrais :
| Code: | | $page_title = $ton_titre_dynamique_calculé_avant; |
Forcement c'est un peut de taf, mais bon, pas si lourd que ça au finale, une petite requête de plus par page pour être (beaucoup) mieux référencé c'est valable.
Pas besoin de vraiment modifier le code du mod donc, mais ajouter pas mal de truc oui.
++ |
_________________ Useful links :
SEO Forum || SEO Directory || SEO phpBB || SEO phpBB3 || Search
____________________
Liens Utiles :
Forum référencement || Annuaire référencement || Référencement phpBB || Référencement phpBB3 || Recherche |
|
| Revenir en haut de page |
|
 |
|
|
| Navigation |
Autres sujets de discussion |
|
|
|
|
|
|
|