Go Back   vb.org Archive > vBulletin Modifications > vBulletin 3.8 Modifications > vBulletin 3.8 Add-ons
FAQ Community Calendar Today's Posts Search

Reply
 
Thread Tools
YABBSEO[vB] Lite - Another Better SEO Module for vB 3.8.x Details »»
YABBSEO[vB] Lite - Another Better SEO Module for vB 3.8.x
Version: 1.1, by yabsoft yabsoft is offline
Developer Last Online: Jan 2014 Show Printable Version Email this Page

Category: Major Additions - Version: 3.8.x Rating:
Released: 01-31-2009 Last Update: 03-28-2010 Installs: 76
Uses Plugins
Additional Files Translations  
No support by the author.

The FULL version is available here.

YABBSEO[vB] Lite

YABBSEO[vB] is a well-developed easy-to-use lighty module for vBulletin aiming at optimizing your forum for Search Engines. This is a lite version and a full version will come with GUI for controling lots of options of YABBSEO.

Main Features:
1. Customised Forumdisplay, Showthread, Member profile url, etc...
Edit yabbseo/data/config.php:
PHP Code:
'template' => 
    array (
      
'showthreadpage' => 'f{forum_id}-{forum_title}/{thread_title}-{thread_id}-page{thread_page}.html',
      
'showthread' => 'f{forum_id}-{forum_title}/{thread_title}-{thread_id}.html',
      
'showthreadnew' => 'f{forum_id}-{forum_title}/{thread_title}-{thread_id}-newpost.html',
      
'showthreadpost' => 'f{forum_id}-{forum_title}/{thread_title}-{thread_id}-p{post_id}.html#post{post_id}',
      
'forumdisplaypage' => 'f{forum_id}-{forum_title}/index{forum_page}.html',
      
'forumindex' => 'forumindex.html',
      
'forumdisplay' => 'f{forum_id}-{forum_title}',
      
'member' => 'members/{username}.html',
      
'memberlistpage' => 'memberlists/{member_page}.html',
      
'memberlistltr' => 'memberlists/{letter}.html',
      
'memberlistltrpage' => 'memberlists/{letter}-{member_page}.html',
      
'memberlist' => 'memberlists',
    ), 
2. Built-in Multiple languages supported. You don't need manually list the special chars to convert. Tested with Deutsch, Espa?ol, Fran?ais, T?rk?e.

3. 301 safe redirecting dynamical url to the above static url.

4. Add "no=follows" for all external site url.

5. Lots of options in yabbseo/data/config.php. For example, removing comman words in static url, customised keyword separator. Ability to create your customised url for other content.

6. Parse archive pages and redirect thread links to the static one.

7. Improve meta keywords for thread pages.

8. Canonicalization Url Support.

9. Redirect external urls by a custom script.

Lots of other improments...

Live Demo(vB3.7.1:
http://yabsoft.info/demo/vbforum

Live Site(vB 3.8.4):
https://yabsoft.com/forum

------------------------------------------
|YABBSEO[vB] Installation Requirements
------------------------------------------

1. Mod-rewrite Module for Apache server.
2. Entered Forum URL at vBulletin Admin CP > vBulletin Options > Site Name / URL / Contact Details.

Installing YABBSEO[vB]

Quote:
1. Extracting the installation package

Download and extract the installation package into a directory in your local computer.

2. Uploading YABBSEO[vB] to the Server.

You only need upload all files in /upload to your vBulletin installation.

3. Go into vBulletin's Admin CP > Plugins & Products > Manage Products.

a). Click on 'Import Product' and select 'overwrite'.
b). Click on the 'Browse' button, and browse to the location where YABBSEO[vB]'s installation package was extracted.
c). Find a file named Product-YABBSEOLite-1.0.xml in the root directory YABBSEO[vB].
d). Click on 'Import'.

4. Uploading the .htaccess file

If your server does not have a .htaccess file in its root, then upload the .htaccess file found in the YABBSEO[vB]'s installation package.

If your server already has a .htaccess file in its root of vBulletin installation, then the content of YABBSEO[vB]'s .htaccess will have to be merged into the main .htaccess file.
Versions:
YABBSEO[vB] Lite v1.1.0 At 01 Nov 2009
YABBSEO[vB] Lite v1.0.1 At 15 Feb 2009
YABBSEO[vB] Lite v1.0.0 At 05 Feb 2009

Updates of YABBSEO v1.1: Latest version!
Please see the following post with detailed directions and explanations of yabbseo/data/config.php.

Updates of YABBSEO v1.0.1:
1. Now YABBSEO supports mysqli connection.
2. Fix a serious bug that cause script not to parse the external url correctly.
3. Adding a miss hook in v1.0.0 for search members to redirect to the correct profile url.
4. Adding some HTML tags parsing to correct some images not showing.
5. Fixing some redirecting error reported by members here.
6. Fix a bug for parsing the birthday members profile url in the front page of forum.

How to update your installation of YABBSEO v1.0.1:
Untill now, you only need redownload the attachment to update the php scripts files and then reimporting the product XML file. BUT you must be careful if you have modified the file yabbseo/data/config.php. When you upload new scripts, please don't overwrite your customised config.php. And a backup of old installation is recommended when you make any updates on current installation.

Some previous installation may not include such TAG parsings in yabbseo/data/config.php, if yes, you need add them manually(suppose you don't want to overwrite config.php directly)
PHP Code:
'import' =>
    array (
      
=> '\\@',
      
=> 'url',
      
=> '\\(',
      
=> '\\"',
      
=> '1',
    ),
    
'image:' =>
    array (
      
=> 'background\\-',
      
=> 'url',
      
=> '\\(',
      
=> '\\>',
      
=> '1',
    ), 
The previous installation miss a hook called "Search members" at Plugins & Products>Plugin Manager, if you don't want to reimport the product XML file, you can add this hook as follows:
Plugins & Products>Add New Plugin
Product:
Code:
YABBSEO[vB]
Hook Location:
Code:
member_start
Title:
Code:
Search members
Plugin PHP Code:
PHP Code:
include 'yabbseo/forumhook/match_member.php'

Support
We provide tech support for the lite version via vB.org forum. If you have any questions, just reply this thread or PM me.

Click INSTALL if you like this plug-in.

Download Now

File Type: zip YABBSEO-Lite-v1.1.zip (57.3 KB, 347 views)
File Type: zip YABBSEO[vB]-Lite-1.0.zip (39.0 KB, 44 views)
File Type: zip YABBSEO[vB]-Lite-1.0.1.zip (39.1 KB, 86 views)

Supporters / CoAuthors

Show Your Support

  • This modification may not be copied, reproduced or published elsewhere without author's permission.

Comments
  #152  
Old 10-19-2009, 01:36 AM
final kaoss final kaoss is offline
 
Join Date: Apr 2006
Posts: 1,314
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Search for posts by {username} is not seo'd as seen here
http://vgchat.info/forum/search.php?do=finduser&u=73
after clicking stats page & hovering over to find posts for them
fix please?
Reply With Quote
  #153  
Old 10-21-2009, 01:40 PM
Noli Noli is offline
 
Join Date: Oct 2009
Posts: 20
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

I installed the script and now all i get is

Code:
Script written by Stephen Yabziz | > Date started: 1th March 2007 +-------------------------------------------------------------------------- */ # yabbseo cp redirecting if(VB_AREA=='AdminCP'&&$_GET['yabbseo']==1) { $vbulletin->scriptpath='yabbseocp.php'; } # only parsing forum area! if(VB_AREA!='Forum') return ''; require_once( 'yabbseo/seo.init.php' ); # YABBSEO is disabled by itself if(defined('YABBSEOACTIVE')&&YABBSEOACTIVE==0) return ; # using the one at vB admin panel if(!$vbulletin->options['bburl']) { die("YABBSEO need [Forum URL] setup at [AdminCP > vBulletin Options > Site Name / URL / Contact Details]"); } $urlparts = parse_url($vbulletin->options['bburl']); $YABBCONFIG['GLOBAL']['bbscript_url'] = $YABBCONFIG['GLOBAL']['absolutebburl']? $vbulletin->options['bburl']:$urlparts['path']; $YABBCONFIG['GLOBAL']['bbscript_path'] = $urlparts['path'].'/'; $YABBCONFIG['GLOBAL']['localhost'] = str_replace('www.','',$urlparts['host']); # adding localhost to the exclusive lists $YABBCONFIG['GLOBAL']['exclusive_externalurls'][]=$YABBCONFIG['GLOBAL']['localhost']; $YABBCONFIG['GLOBAL']['exclusive_externalurls'][]='www.'.$YABBCONFIG['GLOBAL']['localhost']; ############################# # begin extending Database ############################# if (!function_exists('spl_object_hash')) { /** * Returns the hash of the unique identifier for the object. * * @param object $object Object * @author Rafael M. Salvioni * @return string */ function spl_object_hash($object) { if (is_object($object)) { ob_start(); var_dump($object); $dump = ob_get_contents(); ob_end_clean(); //if (preg_match('/^object\(([a-z0-9_]+)\)\#(\d)+/i', $dump, $match)) { // return md5($match[1] . $match[2]); //} return md5($dump); } return null; } } $dbtype = strtolower($vbulletin->config['Database']['dbtype']); if($dbtype=='mysql'||$dbtype=='') $dbclass = 'vB_Database'; if($dbtype=='mysql_slave') $dbclass = 'vB_Database_Slave'; if($dbtype=='mysqli') $dbclass = 'vB_Database_MySQLi'; if($dbtype=='mysqli_slave') $dbclass = 'vB_Database_MySQLi_Slave'; if($dbtype=='mysqli'||$dbtype=='mysqli_slave') $newcode = @file_get_contents('yabbseo/forumhook/db_extend2.php'); else $newcode = @file_get_contents('yabbseo/forumhook/db_extend.php'); eval("class YABBDB extends $dbclass{ " . $newcode . " } "); $mydb = new YABBDB($vbulletin); $arrVars = get_class_vars($dbclass); foreach ($arrVars as $key=>$value) { $mydb->$key =& $db->$key; } unset($arrVars); $db = $mydb; unset($mydb); ############################# # end extending Database ############################# # 301 redirect is disabled if($YABBCONFIG['GLOBAL']['301_redirect']==0||$_POST) { return ; } /** * Processing forum_id: * 1. recover it from forum titles? * 2. checking if the forum titles are changed */ # get forum id from unique forum title #if($YABBCONFIG['GLOBAL']['forumtitleonly']==1&&'forumdisplay.php'==YABBSEO_THIS_SCRIPT) if('forumdisplay.php'==YABBSEO_THIS_SCRIPT&&$bbvalues['f']==0) { global $vbulletin,$bbvalues; # use custom forum titles? $forumcache = BuildForumTitles(); # compare the forum title with the one in db # and check if the title is changed foreach($forumcache as $forumid=>$forumrow) { if($bbvalues['forum_title']==MakeUrls($forumrow['title_clean'])) { $vbulletin->GPC['forumid']=$forumid; break; } } } # checking if the forum titles are changed: avoid the title changes, # the below code for the script forumdisplay.php called from yabbseo.php $redirect_301 = 0; if('forumdisplay.php'==YABBSEO_THIS_SCRIPT #&&$YABBCONFIG['GLOBAL']['forumtitleonly']==0 &&$bbvalues['f'] &&( in_array('forum_title',$YABBCONFIG['URL']['seovars']['forumdisplay']) ||strlen($bbvalues['forum_title']) ) ) { global $vbulletin,$bbvalues; # use custom forum titles? $forumcache = BuildForumTitles(); $org_forumrow = $forumcache[$bbvalues['f']]; if($bbvalues['forum_title']!=MakeUrls($org_forumrow['title_clean'])) { $redirect_301 = true; unset($_GET['bbseourl']); unset($_GET['forum_title']); } } # get query $bbquery = defined('IN_YABBSEO') ? $bbvalues : $_GET; # redirecting showthread.php?p=x to showthread.php?t=x&page=x # redirecting forum_title/thread_title_postid.html to forum_title/thread_title/index_page.html if ($YABBCONFIG['GLOBAL']['redirect_showthreadpost']==1&&THIS_SCRIPT=='showthread'&&!empty($bbquery['p'])) { $postinfo = verify_id('post', $bbquery['p'], 0, 1); $postid =& $postinfo['postid']; $threadedmode = 0; if ($vbulletin->options['allowthreadedmode'] AND !$show['search_engine']) { if (!isset($threadedmode)) { // Set threaded mode from user options if it doesn't exist in cookie or url passed form $threadedmode = $vbulletin->userinfo['threadedmode'] == 3 ? 0 : $vbulletin->userinfo['threadedmode']; } } $postorder = $vbulletin->userinfo['postorder'] ? 'DESC': ''; $postinfo = verify_id('post', $postid, 1, 1); $threadid = $postinfo['threadid']; // assign to the bbvalues $bbvalues['t'] = $threadid; $getpagenum = $db->query_first(" SELECT COUNT(*) AS posts FROM " . TABLE_PREFIX . "post AS post WHERE threadid = $threadid AND visible = 1 AND dateline " . iif(!$postorder, '<=', '>=') . " $postinfo[dateline] "); $vbulletin->GPC['pagenumber'] = ceil($getpagenum['posts'] / 10); $bbquery['page']=$vbulletin->GPC['pagenumber']; $redirect_301 = true; } # if direct access to dynamical url, redirect to static url # or the forum titles are changed, 301 redirect to new forum title page if(defined('IN_YABBSEO')&&!$redirect_301) return ''; /** * Get forum vars: */ $shortvars = array( 'f' => 'forumid', 't' => 'threadid', 'p' => 'postid', 'u' => 'userid', 'a' => 'announcementid', 'c' => 'calendarid', 'e' => 'eventid', 'q' => 'query', 'pp' => 'perpage', 'page' => 'pagenumber', 'sort' => 'sortfield', 'order' => 'sortorder', '0' => 'forum_title', '1' => 'thread_title', ); foreach($shortvars as $longvar) { unset($bbquery[$longvar]); } $bbscript = THIS_SCRIPT.'.php'; $bbinput = $bbquery; /** * Redirecting forum index page */ if(THIS_SCRIPT=='index') { //$new_url = BBUrlConverter('forumindex'); } /** * Redirecting forum display page */ if(THIS_SCRIPT=='forumdisplay') { $forumid = intval($bbinput['f']); $new_url = sitemap_forumdisplay($forumid,$bbinput,$bbscript); } /** * Redirecting thread page */ if(THIS_SCRIPT=='showthread') { if($bbquery['t']) { $threadid = intval($bbquery['t']); unset($bbinput['f']); $new_url = sitemap_showthread($threadid,$bbinput,$bbscript); } elseif($bbquery['p']) { $postid = intval($bbquery['p']); unset($bbinput['f']); unset($bbinput['t']); $new_url = sitemap_showthreadpost($postid,$bbinput,$bbscript); } } /** * Redirecting showpost page */ if(THIS_SCRIPT=='showpost') { $postid = intval($bbquery['p']); $new_url = sitemap_showpost($postid,$bbinput,$bbscript); } /** * Redirecting announcement page */ if(THIS_SCRIPT=='announcement') { $announcementid = intval($bbquery['f']); $new_url = sitemap_announcement($announcementid,$bbinput,$bbscript); } /** * Redirecting member list page */ if(THIS_SCRIPT=='memberlist') { $url_data = array( '{ltr}'=>strtolower($bbquery['ltr']), '{memberlist_page}'=>$bbquery['page'], '{bbscript}'=>$bbscript, '{bbquery}'=>$p['query'], '{bbinput}'=>$bbinput, ); $new_url = sitemap_memberlist($bbinput,$bbscript); } /** * Redirecting member page */ if(THIS_SCRIPT=='member') { $userid = intval($bbquery['u']); $new_url = sitemap_member($userid,$bbinput,$bbscript); } /** * 301 redirect dynamical url */ if(strlen($new_url)) { $new_url = @str_replace('&','&',$new_url); header("HTTP/1.1 301 Moved Permanently"); header("location:$new_url"); exit; } ?>
the rest is blank, see at www.monkeydesk.at

i have mod_rewrite aktive. i think the installation killed my database is that possible?

edit:

ok i worked around the bug. i deleted all the code in the files and then i could deinstall it. thanks
Reply With Quote
  #154  
Old 10-22-2009, 01:03 PM
Pikeypete Pikeypete is offline
 
Join Date: Oct 2009
Posts: 4
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Mistake, please delete moderator.
Reply With Quote
  #155  
Old 10-24-2009, 11:31 AM
yabsoft yabsoft is offline
 
Join Date: Jun 2006
Posts: 70
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Quote:
Originally Posted by extreme-gaming View Post
Search for posts by {username} is not seo'd as seen here
http://vgchat.info/forum/search.php?do=finduser&u=73
after clicking stats page & hovering over to find posts for them
fix please?
I donot know your issue, but http://vgchat.info/forum/search.php?do=finduser&u=73 shows fine, I think.
Reply With Quote
  #156  
Old 11-02-2009, 08:11 PM
yabsoft yabsoft is offline
 
Join Date: Jun 2006
Posts: 70
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

A new version of YABBSEO is available with lots of improved features. A detailed upgrade guide and explanation of yabbseo/data/config.php are created in this post:
https://vborg.vbsupport.ru/showthrea...49#post1731132
Reply With Quote
  #157  
Old 11-03-2009, 12:14 AM
jmpa jmpa is offline
 
Join Date: Apr 2008
Posts: 48
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Is it fully utf-8 compatible?
Reply With Quote
  #158  
Old 11-03-2009, 02:23 PM
Gene Steinberg Gene Steinberg is offline
 
Join Date: Dec 2006
Posts: 278
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Do you have a way of converting URLs altered by other URL rewrite mods, such as TfSEO or C-Logic SEO?

Also, when vBulletin 4.0 comes out with its own expanded SEO capabilities, would that render this mod moot?

Peace,
Gene
Reply With Quote
  #159  
Old 11-03-2009, 04:52 PM
Qleb's Avatar
Qleb Qleb is offline
 
Join Date: Sep 2008
Location: Lebanon
Posts: 121
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

this mod is the best vb seo system

i was try it by my self the 301 redirect is the best its work if i uninstall vbseo and recover my old links loooooooooooool

i love that mod sooooooooooo much

thanks allot yabsoft you have great maind i hate to work with vbseo after this mod
Reply With Quote
  #160  
Old 11-03-2009, 06:32 PM
Lautaro's Avatar
Lautaro Lautaro is offline
 
Join Date: Jan 2009
Location: United States
Posts: 233
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Looks great, I'll try it !
Reply With Quote
  #161  
Old 11-03-2009, 08:17 PM
yabsoft yabsoft is offline
 
Join Date: Jun 2006
Posts: 70
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Quote:
Originally Posted by jmpa View Post
Is it fully utf-8 compatible?
Yes, you can choose the charset for your forum. And YABBSEO is working with any charset.
Reply With Quote
Reply


Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT. The time now is 01:57 AM.


Powered by vBulletin® Version 3.8.12 by vBS
Copyright ©2000 - 2024, vBulletin Solutions Inc.
X vBulletin 3.8.12 by vBS Debug Information
  • Page Generation 0.04850 seconds
  • Memory Usage 2,373KB
  • Queries Executed 27 (?)
More Information
Template Usage:
  • (1)SHOWTHREAD
  • (1)ad_footer_end
  • (1)ad_footer_start
  • (1)ad_header_end
  • (1)ad_header_logo
  • (1)ad_navbar_below
  • (1)ad_showthread_beforeqr
  • (4)bbcode_code
  • (3)bbcode_php
  • (3)bbcode_quote
  • (1)footer
  • (1)forumjump
  • (1)forumrules
  • (1)gobutton
  • (1)header
  • (1)headinclude
  • (1)modsystem_post
  • (1)navbar
  • (4)navbar_link
  • (120)option
  • (1)pagenav
  • (1)pagenav_curpage
  • (4)pagenav_pagelink
  • (1)pagenav_pagelinkrel
  • (11)post_thanks_box
  • (11)post_thanks_button
  • (1)post_thanks_javascript
  • (1)post_thanks_navbar_search
  • (11)post_thanks_postbit_info
  • (10)postbit
  • (3)postbit_attachment
  • (11)postbit_onlinestatus
  • (11)postbit_wrapper
  • (1)spacer_close
  • (1)spacer_open
  • (1)tagbit_wrapper 

Phrase Groups Available:
  • global
  • inlinemod
  • postbit
  • posting
  • reputationlevel
  • showthread
Included Files:
  • ./showthread.php
  • ./global.php
  • ./includes/init.php
  • ./includes/class_core.php
  • ./includes/config.php
  • ./includes/functions.php
  • ./includes/class_hook.php
  • ./includes/modsystem_functions.php
  • ./includes/functions_bigthree.php
  • ./includes/class_postbit.php
  • ./includes/class_bbcode.php
  • ./includes/functions_reputation.php
  • ./includes/functions_post_thanks.php 

Hooks Called:
  • init_startup
  • init_startup_session_setup_start
  • init_startup_session_setup_complete
  • cache_permissions
  • fetch_threadinfo_query
  • fetch_threadinfo
  • fetch_foruminfo
  • style_fetch
  • cache_templates
  • global_start
  • parse_templates
  • global_setup_complete
  • showthread_start
  • showthread_getinfo
  • forumjump
  • showthread_post_start
  • showthread_query_postids
  • showthread_query
  • bbcode_fetch_tags
  • bbcode_create
  • showthread_postbit_create
  • postbit_factory
  • postbit_display_start
  • post_thanks_function_post_thanks_off_start
  • post_thanks_function_post_thanks_off_end
  • post_thanks_function_fetch_thanks_start
  • post_thanks_function_fetch_thanks_end
  • post_thanks_function_thanked_already_start
  • post_thanks_function_thanked_already_end
  • fetch_musername
  • postbit_imicons
  • bbcode_parse_start
  • bbcode_parse_complete_precache
  • bbcode_parse_complete
  • postbit_attachment
  • postbit_display_complete
  • post_thanks_function_can_thank_this_post_start
  • pagenav_page
  • pagenav_complete
  • tag_fetchbit_complete
  • forumrules
  • navbits
  • navbits_complete
  • showthread_complete