Go Back   vb.org Archive > vBulletin Modifications > Archive > Modification Graveyard
FAQ Community Calendar Today's Posts Search

Reply
 
Thread Tools
vB Global Translator - Multiply your indexed pages & put search traffic on autopilot Details »»
vB Global Translator - Multiply your indexed pages & put search traffic on autopilot
Version: 1.7, by Dave Hybrid Dave Hybrid is offline
Developer Last Online: Dec 2013 Show Printable Version Email this Page

Category: Miscellaneous Hacks - Version: 3.8.x Rating:
Released: 06-14-2009 Last Update: 06-19-2009 Installs: 35
Uses Plugins Template Edits
Additional Files  
No support by the author.

vB Global Translator


Note - There are 2 versions of this script depending on your setup. This script is compatible with users running standard vBulletin and vBSEO only and all vB release versions. If you cannot install this I am more than happy to answer support questions.

So what does this do?

vB Global Translator automatically translates your forum into 28 other languages via the Google translate API, stores those translations in a MYSQL database then rewrites new URLs so you end up with 28 new pages for every current page.

So, if you have 10,000 pages, this MOD will translate those pages into 28 languages making a total of 280,000 pages in 28 languages. This results in a flood of international traffic and referrals from the search engines. If you are getting 1,000 visits a day from your 10,000 pages imagine how many referrals you will get from 280,000 pages!

The current languages this MOD works with are all supported by AdSense so you can expect your income to rise accordingly. I have this running on a 20,000 page forum and after a few months I have more than doubled my search engine traffic.

How do I Install?

Note - Please make sure you have CURL enabled on your server, it will be listed in you php.ini file. If in doubt ask your host.

First download the relevant package below for your setup.

Next you need to add a new MySQL database to your domain to store the translated pages. Open the database in phpmyadmin or similar and import the db.sql file to install the database tables. Once you have done that you need to select the 'wt_cache' table on the left then 'operations' from the top menu and change the storage engine to InnoDB, then click Go.

Add your new database details to translate.php then, if your forums base language is different to English, change your country code. Otherwise ignore this step.

Find:

Code:
REMOVED
Change en to:

Code:
REMOVED
Next save translate.php and upload that, translateflags.php and overloadcache.txt to your forum root, so if your forums are in a /forums/ folder upload these files there. Upload the flags folder to your domain root, thats the domain root.

CHMOD overloadcache.txt to 777

In your vBulletin admin panel add a new plugin with the following settings.

Hook Location: global_complete
Title: vB Global Translator
Execution Order: 5
Plugin PHP Code:

Code:
REMOVED
Save the plugin and activate.

In your vBulletin admin panel add another new plugin with the following settings.

Hook Location: global_start
Title: vB Global Translator Flags
Execution Order: 5
Plugin PHP Code:

Code:
REMOVED
Save and activate.

Finally add the code below to your template so the flags to select languages appear. This is typically the header, navbar or footer so that they display on every page.

Code:
REMOVED
Load Issues:

This script is can be quite server intensive for large sites. As you are adding links to all of these new pages from all of your current pages the search engine bots will crawl these 1,000's of new pages fast. As the MySQL trys to deal with the many, many translations and querys I have seen my server load spike a bit.

To combat this we have written in a condition that if server load is more than 1.5, the cache setting will disable and pages will be read live from the Google API and no database writing will take place.

If you feel this setting too high/low you can change it by finding the variable below in translate.php and editing accordingly. The only reason to change this is if - A) You are on a slow server and it is overloaded/crashing or B) You have a very fast server and it can handle more, this will mean your site will get fully cached faster resulting in faster page load times when people re-visit the translated pages.

Code:
if(floatval(getServerLoad()) >= 1.5)
One final thing to remember is while your site is being cached and data written to the new database read access times to already cached pages may vary. Uncached pages need to be translated and this can take time when translating a fresh page. Cached pages may load fast or slow depending on whether your server is under load or not as when under load read access from the database is disabled. You just need to be patient and wait until your site is fully cached which will vary between site size, server spec and how often search bots crawl your pages.

Please rate and click install

THANK YOU!

Version History:

v1.7

* Removed ioncube encryption to bring script inline with vBulletin.org rules

v1.6

* Fixed nofollow block on flag links for users with vbseo sites
* Fixed adsense ads showing for translation services etc. by adding section targeting ignore tags

v1.5

* Fixed database speed issues by using InnoDB instead of MyISAM
* Code encrypted with ioncube

v1.0

* Script base version

Show Your Support

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

Comments
  #142  
Old 06-18-2009, 01:57 PM
The Realist's Avatar
The Realist The Realist is offline
 
Join Date: Oct 2001
Location: UK
Posts: 842
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Installed and working but when I go here: http://www.xxxxxxx.co.uk/photoplog/index.php

I get this error:

Code Removed.

Any ideas?

Works everywhere else.
Reply With Quote
  #143  
Old 06-18-2009, 02:07 PM
Dave Hybrid's Avatar
Dave Hybrid Dave Hybrid is offline
 
Join Date: Mar 2007
Posts: 463
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Quote:
Originally Posted by The Realist View Post
Installed and working but when I go here: http://www.sattalk.co.uk/photoplog/index.php

I get this error:

Warning: require_once(translate.php) [function.require-once]: failed to open stream: No such file or directory in [path]/includes/functions.php(5721) : eval()'d code on line 9

Fatal error: require_once() [function.require]: Failed opening required 'translate.php' (include_path='.:/usr/lib/php:/usr/local/lib/php') in /home/sattalk/public_html/includes/functions.php(5721) : eval()'d code on line 9

Any ideas?

Works everywhere else.
try uploading translate.php to the photoplg folder
Reply With Quote
  #144  
Old 06-18-2009, 02:11 PM
The Realist's Avatar
The Realist The Realist is offline
 
Join Date: Oct 2001
Location: UK
Posts: 842
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Yep that did the trick, well done
Reply With Quote
  #145  
Old 06-18-2009, 04:49 PM
SuperTaz's Avatar
SuperTaz SuperTaz is offline
 
Join Date: Apr 2007
Location: Pennsylvania
Posts: 744
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Seems to be working great on my site so far with no errors.
Reply With Quote
  #146  
Old 06-18-2009, 04:51 PM
RWerksman RWerksman is offline
 
Join Date: Dec 2007
Posts: 77
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Quote:
Originally Posted by Dave Hybrid View Post
I believe this only works for sites in one base language. As per the first install instruction you need to set your base language so the script knows what to tell the Google translate APi to translate from and into. So multiple languages will confuse it a lot and cause errors.
Dave,

Then correct me if I'm wrong here - this would effectively drive traffic to your forum then it wouldn't be able to cope with anyone actually replying to messages, correct?
Reply With Quote
  #147  
Old 06-18-2009, 04:58 PM
Dave Hybrid's Avatar
Dave Hybrid Dave Hybrid is offline
 
Join Date: Mar 2007
Posts: 463
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

This mod will drive foreign visitors you otherwise would net get to your pages, if they want to contribute they will need to also speak your base language. That said on most sites 90% of search traffic bounces after reading one page via the back button or an advert. So, on my sites all this really does is increase my CPM on my banners and adsense clicks. For free. You're use may vary.

If you are simply wanting to offer parts of your site in other languages as a feature rather than a search traffic tool look into language packs. You will however need to create new content in those languages in order to get search referrals, language packs will not translate a site. They just allow other languages to be used.
Reply With Quote
  #148  
Old 06-18-2009, 06:27 PM
Dave Hybrid's Avatar
Dave Hybrid Dave Hybrid is offline
 
Join Date: Mar 2007
Posts: 463
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

I have just made a leap in improving load times on large sites, we found that on big sites the sheer volume of MySQL writes being made as the search bots and users try to translate all your pages was locking the translate database. This means cached pages were loading slow, even though they were cached and a few other bugs. The new method seems to allow sites to be cached much faster with lower server load and cached pages load instant or there abouts. I will update when we are 100%, it's a simple upgrade too. Thanks.
Reply With Quote
  #149  
Old 06-19-2009, 12:52 AM
Sweeks Sweeks is offline
 
Join Date: Jul 2008
Posts: 633
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

We upgraded to a VPS tonight and now it gives a blank page, any fix for this?

http://www.teenforumz.com/?hl=ar

Thanks!
Reply With Quote
  #150  
Old 06-19-2009, 10:47 AM
Dave Hybrid's Avatar
Dave Hybrid Dave Hybrid is offline
 
Join Date: Mar 2007
Posts: 463
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

<font color="Red">Ok so here is the information for those of you experiencing slow load times, it is recommended that all users make these changes.</font>

Add a new MySQL database to your domain. Open the database in phpmyadmin or similar and import the db.sql file to install the database tables the same as before but once you have done that you need to select 'operations' from the top menu and change the storage engine to InnoDB, then click Go. Then enter the new DB details into translate.php and re-upload that file.

InnoDB seems to handle the multiple read/write requests without issue whereas MyISAM had issues with tables locking and thus locking read/write access under load which caused huge bottlenecks on larger/busier sites.

We tested this on a few huge 100k thread sites without issue.

Thanks, enjoy the traffic.

Dave.
Reply With Quote
  #151  
Old 06-19-2009, 11:51 AM
Sweeks Sweeks is offline
 
Join Date: Jul 2008
Posts: 633
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Would this sort out the blank page after moving servers?
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 02:34 AM.


Powered by vBulletin® Version 3.8.12 by vBS
Copyright ©2000 - 2025, vBulletin Solutions Inc.
X vBulletin 3.8.12 by vBS Debug Information
  • Page Generation 0.04986 seconds
  • Memory Usage 2,327KB
  • 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
  • (6)bbcode_code
  • (2)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
  • (2)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
  • (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_postinfo_query
  • fetch_postinfo
  • 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_display_complete
  • post_thanks_function_can_thank_this_post_start
  • pagenav_page
  • pagenav_complete
  • tag_fetchbit_complete
  • forumrules
  • navbits
  • navbits_complete
  • showthread_complete