[high]Copyright:[/high] You may use this modification at your own risk. I cannot and will not be held responsible for any damage you may cause to your forums during installation or thereafter. You may not distribute this modification in whole or parts and anyone found doing so faces risk of prosecution. All my modifications are released at vBulletin.org and anyone found releasing them elsewhere also faces risk of prosecution. You may not translate this modification without my prior permission.
[high]Donations:[/high] I release my modifications for free. If you wish to donate please contact me and I will give you my details. All donations are graciously appreciated.
What does this modification do?
This modification will allow you to automatically have more search engine friendly URLs in your vBulletin. A forum which would normally display as forumdisplay?f=1 will now appear as f1-forumtitle.html and the same with threads. Having keywords in your URL can be of an advantage in search-engine ranking.
Requirements:
You must have mod_rewrite apache module enabled on your server. Contact your host for more information.
This will not work well for non-english boards as it strips most non-alpha numeric characters. E.g. ? would be stripped on french boards etc
Installation
1/
Please read the readme.txt file included in the zip for details on how to install this modification.
Please Click Install!
If you installed this modifcation please click the install button. It'll help you keep up to date with future releases and important bugfixes, security updates.
Show Your Support
This modification may not be copied, reproduced or published elsewhere without author's permission.
would you like to share the xml file of the edited plugin ?
also what about the showthread url if I don't want to display the thread title on url ?
thanks for your help
ok I got some time.
I'll just give you my whole xml file I edited. If you go into plugin manager, and then click edit on the first listed file for this hack, this is what you have to replace. Leave the 2nd url mod rewrite file alone.
heres my global_complete
Please note, for this XML file to work, you must have the same .htaccess code as me, as this is configured to display forums as forum-14.html and threads the defualt way except this removes the "t" that was before the topic number. So if you want to use my XML, replace your current .htaccess with the following...
Code:
RewriteEngine On
RewriteRule ^forum-([0-9]+)\.html$ forumdisplay.php?f=$1 [L]
RewriteRule ^([0-9]+)(((-p)([0-9]+))?)([A-Za-z0-9\-]+)\.html$ showthread.php?t=$1&page=$5&pp=10 [L]
and your global_complete with the following..
PHP Code:
// lets fix the forum links in the navbar
if(THIS_SCRIPT == 'forumdisplay' OR THIS_SCRIPT == 'showthread' OR THIS_SCRIPT == 'newthread' OR THIS_SCRIPT == 'newreply')
{
preg_match_all('/<a href="forumdisplay\.php\?f=([0-9]+)">(.*?)<\/a>/i', $GLOBALS['navbits']['breadcrumb'], $nnavbits);
$size = sizeof($nnavbits[1]);
for($i = 0; $i <= $size; $i++)
{
$output = str_replace('forumdisplay.php?f=' . $nnavbits[1][$i] . '"', 'f' . $nnavbits[1][$i] . '-' . strtolower(str_replace('--', '-', preg_replace('/[^A-Za-z0-9-]+/i', '', str_replace(' ', '-', $nnavbits[2][$i])))) . '.html"', $output);
}
}
// we better do the same here on forumhome and forumdisplay
if(THIS_SCRIPT == 'index' OR THIS_SCRIPT == 'forumdisplay')
{
preg_match_all('/<a href="forumdisplay\.php\?f=([0-9]+)">(.*?)<\/a>/i', $GLOBALS['forumbits'], $seobits);
$size = sizeof($seobits[1]);
for($i = 0; $i < $size; $i++)
{
if(!preg_match('/forum_link\.gif".*?forumdisplay.php\?f=' . $seobits[1][$i] . '/is', $GLOBALS['forumbits']))
{
$output = str_replace('forumdisplay.php?f=' . $seobits[1][$i] . '"', 'forum-' . $seobits[1][$i] . '' . strtolower(str_replace('--', '-', preg_replace('/[^0-9]+/i', '', str_replace(array(' ', '<strong>', '</strong>'), array('-', '', ''), $seobits[2][$i])))) . '.html"', $output);
}
}
}
// we need to fix the thread links and also the multi-page thread links on forumdisplay
if(THIS_SCRIPT == 'forumdisplay')
{
// normal thread bits
if(!empty($GLOBALS['threadbits']))
{
preg_match_all('/<a href="showthread\.php\?t=([0-9]+)" id="(.*)">(.*?)<\/a>/i', $GLOBALS['threadbits'], $seobits2);
$size = sizeof($seobits2[1]);
for($j = 0; $j < $size; $j++)
{
$output = str_replace('showthread.php?t=' . $seobits2[1][$j] . '"', '' . $seobits2[1][$j] . '-' . strtolower(str_replace('--', '-', str_replace(' ', '-', preg_replace('/[^\sA-Za-z0-9]+/', '', $seobits2[3][$j])))) . '.html"', $output);
}
}
yes, its working, your probably just didnt refresh your page aftyer install or something. If you didnt know what this did, it creates most of your forum files to .html so its alot more navigatable for search engines.
Quote:
Originally Posted by xtreme-mobile
how do i know idf this is working? im a little confused as to what this does
this is what shows as a link to a thread after installing (i cant see any difference)
Hi folks, I have this installed. As an FYI, I have modified this to permit non-english characters to be enhanced (at least for the extended ASCII such as ?????, etc). This applies for the topics and the forums.
This is very similar to my SEO hack for all the *Nuke/phpbb sites:
Great work on getting this hack working. I know there is the commercial vbSEO hack, however, with some help, we can make this free one better if folks are interested.
Hi folks, I have this installed. As an FYI, I have modified this to permit non-english characters to be enhanced (at least for the extended ASCII such as ?????, etc). This applies for the topics and the forums.
This is very similar to my SEO hack for all the *Nuke/phpbb sites:
Great work on getting this hack working. I know there is the commercial vbSEO hack, however, with some help, we can make this free one better if folks are interested.
may i ask how did you permit non english characters
One Problem: Have you ever moved 1 Posting into another Thread?
In this case you have to give vBulletin a URL of the Thread where the Post has to be moved, and unfornatelty vB doesnt want to take the new URLs.
I wrote this little workaround for my moderators, you can use it for yours:
Quote:
Schritt 1:
mark the checkbox of the posting to move
Schritt 2:
"move postings" and go
Schritt 3:
Now you see this.
Schritt 4:
Now do a new Tab / Window of the Thread where the posting should be moved in.Rightklick on #1 and copy the Link.