Menu Bar Link Mod for TNG

Posts: 134
Joined: Sun Oct 01, 2017 3:08 pm

Menu Bar Link Mod for TNG

Post by steven »

When using TNG with WordPress all has gone reasonably well except for mobile devices. There is no easy way to get back to WordPress from TNG pages without using the back button or typing in the URL again. So I created a MOD that adds a URL link in the TNG inner menu bar. After thinking about it users might want a link for other reasons, like linking to a blog, so I changed the MOD and added modes of operation. This MOD can be used with or without a CMS (Content Management System - WordPress, joomla etc.). The first version of Menu Bar Link was rather clunky so it was rewritten.

TNG provides a way to add pull down menus where you can add links. If you are looking for a pull down menu check out Add Links to TNG. This MOD adds one link while pull down menus support multiple links.
In Mode 0 the left home button function remains unchanged and links to TNG while the new button displays CMS, by default, and will link to any clean URL specified in the MOD's Edit Options menu.
--- MODE 0 Display ---


In Mode 1 the left home button links to a URL, specified in the mod options, while the new button links to TNG. The default text displays TNG.
--- MODE 1 Display ---


So if you use WordPress for your home page, you can select mode 1, and enter a clean URL for WordPress. When users select Home the WordPress page will be loaded. If they select the new button, the TNG page will be loaded.

You can change the text that is displayed depending on which mode you use. For example in Mode 0 you can change the text for the URL link but not the home page link.
--- MODE 0 Display ---


In Mode 1 you can change the text for the TNG link but cannot change text for the home page URL link text since it becomes your home page.
--- MODE 1 Display ---


The screen shot below shows the mobile menu, for my website, on an iPhone. Mobile devices were the primary reason for creating the mod.

--- MODE 1 Display on iPhone ---


The MOD includes a menubartext.php file, located in the current extensions folder. You do not need to edit the cust_text.php for any installed languages. The text file allows admins to change the text displayed in the menu without causing a partially installed message in mod manager. All standard TNG languages are included. A blank line was added between languages to make it easier to edit. Note the SerbianCyrillic_UTF8 is commented out because the anchor text is missing in the TNG language file. Content of the menubartext.php file for v12.3 is shown in the code box:

Code: Select all

	// Edit the language(s) you are using to display text in the inner menu bar.
	// Names ending in _cms are for the URL link when using mode 0
	// Names ending in _tng are for TNG page when using mode 1
	// In either mode the home link displays the original language for the home button.

	$Afrikaans_tng = 'TNG';
	$Afrikaans_cms = 'CMS';
	$Afrikaans_UTF8_tng = 'TNG';
	$Afrikaans_UTF8_cms = 'CMS';

	$Arabic_UTF8_tng = 'TNG';
	$Arabic_UTF8_cms = 'CMS';

	$Chinese_UTF8_tng = 'TNG';
	$Chinese_UTF8_cms = 'CMS';

	$Croatian_tng = 'TNG';
	$Croatian_cms = 'CMS';
	$Croatian_UTF8_tng = 'TNG';
	$Croatian_UTF8_cms = 'CMS';

	$Czech_tng = 'TNG';
	$Czech_cms = 'CMS';
	$Czech_UTF8_tng = 'TNG';
	$Czech_UTF8_cms = 'CMS';

	$Danish_tng = 'TNG';
	$Danish_cms = 'CMS';
	$Danish_UTF8_tng = 'TNG';
	$Danish_UTF8_cms = 'CMS';

	$Dutch_tng = 'TNG';
	$Dutch_cms = 'CMS';
	$Dutch_UTF8_tng = 'TNG';
	$Dutch_UTF8_cms = 'CMS';

	$English_tng = 'TNG';
	$English_cms = 'CMS';
	$English_UTF8_tng = 'TNG';
	$English_UTF8_cms = 'CMS';

	$Finnish_tng = 'TNG';
	$Finnish_cms = 'CMS';
	$Finnish_UTF8_tng = 'TNG';
	$Finnish_UTF8_cms = 'CMS';

	$French_tng = 'TNG';
	$French_cms = 'CMS';
	$French_UTF8_tng = "TNG";
	$French_UTF8_cms = "CMS";

	$German_tng = 'TNG';
	$German_cms = 'CMS';
	$German_UTF8_tng = 'TNG';
	$German_UTF8_cms = 'CMS';

	$Greek_UTF8_tng = 'TNG';
	$Greek_UTF8_cms = 'CMS';

	$Icelandic_tng = 'TNG';
	$Icelandic_cms = 'CMS';
	$Icelandic_UTF8_tng = 'TNG';
	$Icelandic_UTF8_cms = 'CMS';

	$Italian_tng = 'TNG';
	$Italian_cms = 'CMS';
	$Italian_UTF8_tng = 'TNG';
	$Italian_UTF8_cms = 'CMS';

	$Norwegian_tng = 'TNG';
	$Norwegian_cms = 'CMS';
	$Norwegian_UTF8_tng = 'TNG';
	$Norwegian_UTF8_cms = 'CMS';

	$Polish_UTF8_tng = "TNG";
	$Polish_UTF8_cms = "CMS";

	$PortugueseBR_tng = 'TNG';
	$PortugueseBR_cms = 'CMS';
	$PortugueseBR_UTF8_tng = 'TNG';
	$PortugueseBR_UTF8_cms = 'CMS';

	$Romanian_tng = 'TNG';
	$Romanian_cms = 'CMS';
	$Romanian_UTF8_tng = 'TNG';
	$Romanian_UTF8_cms = 'CMS';

	$Russian_UTF8_tng = 'TNG';
	$Russian_UTF8_cms = 'CMS';

	$Serbian_tng = 'TNG';
	$Serbian_cms = 'CMS';
	//$SerbianCyrillic_UTF8_tng = 'TNG'; missing anchor text in language file
	//$SerbianCyrillic_UTF8_cms = 'CMS'; missing anchor text in language file
	$Serbian_UTF8_tng = 'TNG';
	$Serbian_UTF8_cms = 'CMS';
	$Slovak_tng = 'TNG';
	$Slovak_cms = 'CMS';
	$Slovak_UTF8_tng = 'TNG';
	$Slovak_UTF8_cms = 'CMS';

	$Spanish_tng = 'TNG';
	$Spanish_cms = 'CMS';
	$Spanish_UTF8_tng = 'TNG';
	$Spanish_UTF8_cms = 'CMS';

	$Swedish_tng = 'TNG';
	$Swedish_cms = 'CMS';
	$Swedish_UTF8_tng = 'TNG';
	$Swedish_UTF8_cms = 'CMS';
	$Turkish_UTF8_tng = 'TNG';
	$Turkish_UTF8_cms = 'CMS';
After the mod is installed go to the extensions folder and edit the menubartext.php file. Edit either CMS or TNG text for your language using Komodo IDE, Notepad++ or a similar editor that does not add a BOM (Byte Order Mark) character to the file. Text is enclosed in single quotes and the line must end with a semicolon. If you make a mistake, you may get a php error which could prevent TNG from loading. If this happens go the the extensions folder and delete the menubartext.php file. When you return to Mod Manager it will say Partially Installed. Select Clean Up and reinstall the mod.

You can delete any languages you are not going to use. If you uninstall the MOD the menubartext.php file is deleted from the extensions folder. If you decide to reinstall the MOD you will need to edit the menubartext file again to change the default text.

The MOD can be used regardless of the TNG installation configuration. It doesn't matter if TNG and WordPress are in separate folders or if TNG is installed in the WordPress folder. No integration between TNG and WordPress is required but if the two are integrated the MOD should install and run without issue provided there are no additional modifications, by other MODs, that prevents installation.

When when using one domain name and placing TNG and CMS files in separate folders, both folders are placed in the root or root folder if you have virtual hosts. Create an index file, in the root or root folder, that points to the program you want to use for the home page.

For example if WordPress is the home page use the code below: (change the wp folder name to the correct name)

Code: Select all

define( 'WP_USE_THEMES', true );

require __DIR__ . '/wp/wp-blog-header.php' );
If you are using TNG for the home page use the code below: (change the domain_name and tng folder name to the correct names)

Code: Select all

header("Location: http://domain_name/tng/index.php");
Keep in mind if you have an established TNG website, this will break existing links and bookmarks because the TNG folder name is added to the URL. If you are using Apache, create a rewrite rule that redirects existing links to the new TNG folder.

Some TNG templates do not display the inner menu bar on the index page. If you want to display the menu bar open the index.php file, for the template you are using, and change $flags['noicons'] from true to false.

When the mod is first installed the additional icon will be the bookmark icon, simply refresh the page to reload the icons.

Mod revision - Updated for v13
For TNG Versions 13.0.3 to 14.0.3 (See below *)

Mod revision - Removed conditional logic from language files.

For TNG Version 12.3.0

* The mod does not install in v13.0 because the anchor text is missing in Croatian-UFT8 customtext.php. Update the languages or use Notepad++ or a similar editor place the code below on the second line, after <?php, and the mod will install.

Code: Select all

//Mods should put their changes before this line, local changes should come after it.

Obsolete Versions
(3.1 KiB) Downloaded 120 times
(3.12 KiB) Downloaded 307 times
(3.16 KiB) Downloaded 314 times
You do not have the required permissions to view the files attached to this post.
Last edited by steven on Sat Sep 26, 2020 9:15 am, edited 7 times in total.