Jump to content
Sign in to follow this  
FWR Media

[contribution] Multilayer SEO Pop Out Menu

Recommended Posts

FWR Multilayer SEO Pop Out Menu

 

by FWR Media

 

www.fwrmedia.co.uk

 

Robert Fisher

 

[removed email address]

 

Version 1.1.0

 

13th May 2008

License: Refer to standard oscommerce license

 

 

Compatibility:

 

MS2.2, RC1, RC2, RC2a

 

PHP4, PHP5

 

MySQL4, MySQL5 (STRICT MODE)

 

Valid XHTML 1.0 TRANSITIONAL

 

Aren't there loads of menu contributions?

 

There are many menu contributions but there were none that met my needs (the needs of my customers). I wanted pure html links on the front page, not javascript ignored by the search engines. I also wanted these links going to my deepest categories.

 

I need/want valid XHTML 1.0 Transitional code, I also like clean source code.

 

Also very importantly many menu systems use huge numbers of queries, whereas this uses just one (albeit a full category scan). A full category scan can be over heavy for very big shops so this uses a cache system that remains cached until refreshed via the admin panel.

 

 

What is it/what does it do?

 

When you hover over a category, if the category has children it pops out showing the next layer of categories.

 

It does this for multiple category layers.

 

All links are shown in the source code as pure html links which can have SEO benefits because your deeper categories are shown on page one.

 

The user also benefits because it is only one click to a category.

 

 

Queries and efficiency

 

This menu system only uses one query but that query is a full categories scan. There is an in-built system of caching which stores the categories array as a serialized file.

 

The cache is very simplistic in as much as it does not have a "lifetime" however you can reset/rebuild the cache at any time via the admin settings.

 

 

Is it easy to install?

 

Very easy, only one piece of code needs to be added above the </head> to the catalog files (adding a stylesheet).

 

One small change is made to includes/column_left.php.

 

I will not be offering support for CSS issues or for issues related to CSS (Other than issues related to the standard package). If you break the CSS and therefore the menu by modding then upload the original CSS and start again.

 

Feedback both good and bad appreciated.

 

The package is http://addons.oscommerce.com/info/5942

Edited by Jan Zonjee

Share this post


Link to post
Share on other sites

Quick tip:

 

A tip if you want a quick test is install it and only change the above </head> code in one file .. namely catalog/index.php.

 

This way you can test with category links (only .. there won't be a stylesheet for other files) it is a 5 minute install and if you don't like it a 2 minute uninstall.

 

To delete the admin settings leaving your install totally clean just reupload the install script and type in your browser ..

 

www.mysite.com/AdminMenuOptions_installer.php?fwrmenu_delete and all DB settings for this contribution will be removed.

 

Which is also a very good reason to delete the install file from your server if you are keeping the contribution.

Edited by FWR Media

Share this post


Link to post
Share on other sites

hi..

 

i already have untimate seo installed on my site .. will this work with that..?

 

 

thanks

 

nafri

Share this post


Link to post
Share on other sites

For fun stuck this into a test server.

 

RC2a -- Godaddy server using all the latest code.

 

OsC had Chemo's Ultimate SEO 2d -- HTC SEO -- SID Killer -- Oh and FWR Security and Validation.

 

 

 

Fatal error: Call to a member function add_current_page() on a non-object in ------application_top

 

$navigation->add_current_page(); was the offending code at line 325

 

Remarked out line and got another error.

 

Because the function call was to a capitalized FWR file (php5). Put it lowercase and boom everything worked.

 

Looks nice too!!!!

Share this post


Link to post
Share on other sites
hi..

 

i already have untimate seo installed on my site .. will this work with that..?

thanks

 

nafri

 

Yes

Share this post


Link to post
Share on other sites
For fun stuck this into a test server.

 

RC2a -- Godaddy server using all the latest code.

 

OsC had Chemo's Ultimate SEO 2d -- HTC SEO -- SID Killer -- Oh and FWR Security and Validation.

Fatal error: Call to a member function add_current_page() on a non-object in ------application_top

 

$navigation->add_current_page(); was the offending code at line 325

 

Remarked out line and got another error.

 

Because the function call was to a capitalized FWR file (php5). Put it lowercase and boom everything worked.

 

Looks nice too!!!!

 

Good catch! my finger must have slipped naming that file :)

 

Odd though I develop in a PHP5 strict environment, wonder why it didn't error for me?

 

Anyway for users and until I upload a new version the file to change is ..

 

includes/functions/FWR_categories.php

 

Just rename to fwr_categories.php

Share this post


Link to post
Share on other sites
Hi,

 

how can I add a horizontal line <htr> between the category names?

 

Thx, Dirk

 

The menu stylesheet

 

catalog/fwr_suckertree_css_menu.php

 

Find the following groupo of code ..

/* Sub level menu links style */
.menudiv ul li a{

 

And change the border to e.g...

 

border-bottom: 1px dotted #ccc;

Share this post


Link to post
Share on other sites

Is this contribution installed online somewhere, so I can see it in action?

 

Cheers,

Max

Share this post


Link to post
Share on other sites

Hi ladies & Gents

 

I have implemented the SEO pop Out Menu. This works really fine. Now I have started changing the menucategories in Admin. I have tried to FWR SEO function - reset menu, but nothing seems to help. Below is my settings :

 

Enable FWR Menu = true/false true

Choose sort params = categories_id or sort_order c.categories_id Info

Cache path: True uses standard osc DIR_FS_CACHE.

False will try to write to catalog root. false Info

Reset the categories menu. false Info

 

Anyone with a similar experience and fix ?

 

Kind regards Jan

Share this post


Link to post
Share on other sites
Hi ladies & Gents

 

I have implemented the SEO pop Out Menu. This works really fine. Now I have started changing the menucategories in Admin. I have tried to FWR SEO function - reset menu, but nothing seems to help. Below is my settings :

 

Enable FWR Menu = true/false true

Choose sort params = categories_id or sort_order c.categories_id Info

Cache path: True uses standard osc DIR_FS_CACHE.

False will try to write to catalog root. false Info

Reset the categories menu. false Info

 

Anyone with a similar experience and fix ?

 

Kind regards Jan

 

When you say "nothing seems to help" what is the problem?

 

You have modified your categories .. this I understand.

 

You then choose Reset the categories menu>true

 

Browse to your site and the first click will update those categories.

Share this post


Link to post
Share on other sites
When you say "nothing seems to help" what is the problem?

 

You have modified your categories .. this I understand.

 

You then choose Reset the categories menu>true

 

Browse to your site and the first click will update those categories.

 

Hi Robert.

 

I will try to refrace. I am running a 2.2rc2 version and have just added the SEO popup menu toolbox. I the started changing the categories in Admin. After changing the categories I reset the menu using the function that is provided "Set Reset=true". After having done this I reloaded the store, but the menu/categories have not changed. They are changed in the admin space - but not in the mall/store. The example i have used is that i have changed the name on one of the entries at 1. level - lets say from "XXX" to "YYY"

 

Regards .. Jan

Edited by Jan.Eckhardt

Share this post


Link to post
Share on other sites
Hi Robert.

 

I will try to refrace. I am running a 2.2rc2 version and have just added the SEO popup menu toolbox. I the started changing the categories in Admin. After changing the categories I reset the menu using the function that is provided "Set Reset=true". After having done this I reloaded the store, but the menu/categories have not changed. They are changed in the admin space - but not in the mall/store. The example i have used is that i have changed the name on one of the entries at 1. level - lets say from "XXX" to "YYY"

 

Regards .. Jan

 

Odd, I can't replicate this. Delete the cache file categories.ser and tell me what happens.

 

I wont respond for a while as I have to attend a funeral.

Share this post


Link to post
Share on other sites

My site has the following layout for categories

 

Cat1

Cat2

SubCat2-1

SubCat2-2

SubCat2-2-1

Cat3

Cat4

 

when installing SEO Pop Out Menu

My Main Categories list shows all the Categeories and the 3rd leve SubCategories all on the main menu like this

 

Cat1

Cat2 -with pop out working correctly

Cat3

Cat4

SubCat2-2

SubCat2-2-1

 

Not sure what in the code i can edit to remove the loop to display SubCat2-2-1 in the main menu.

Iassume it would be in fwr_cat_functions.php but my programmin abilities are limited.

Share this post


Link to post
Share on other sites
My site has the following layout for categories

 

Cat1

Cat2

SubCat2-1

SubCat2-2

SubCat2-2-1

Cat3

Cat4

 

when installing SEO Pop Out Menu

My Main Categories list shows all the Categeories and the 3rd leve SubCategories all on the main menu like this

 

Cat1

Cat2 -with pop out working correctly

Cat3

Cat4

SubCat2-2

SubCat2-2-1

 

Not sure what in the code i can edit to remove the loop to display SubCat2-2-1 in the main menu.

Iassume it would be in fwr_cat_functions.php but my programmin abilities are limited.

 

It shouldn't do that can I see a link?

Share this post


Link to post
Share on other sites
this is just a demo hence the missing images.

I was using this as a test before making the changes live

 

http://timewellspentgifts.com/demo/index.php

 

Everything after Seasonal shouldnt be there.

they should be showing under kitchen...>olive oils

 

Ok

 

Could you change in admin the ordering to sort_order please.

Share this post


Link to post
Share on other sites
Ok

 

Could you change in admin the ordering to sort_order please.

 

Again I can't replicate this, the code works as follows: -

 

	if($row['parent_id'] != '0') {
  // Do something
} else {
  // Do what your site is doing
}

 

Now if as you say those categories should be under kitchen>Olive oils then the parent id cannot be 0 and therefore what you are suggesting cannot happen.

 

Could you email the categories.ser file to admin(at)<myname>(dot)co(dot)uk please.

Edited by FWR Media

Share this post


Link to post
Share on other sites
Again I can't replicate this, the code works as follows: -

 

	if($row['parent_id'] != '0') {
  // Do something
} else {
  // Do what your site is doing
}

 

Now if as you say those categories should be under kitchen>Olive oils then the parent id cannot be 0 and therefore what you are suggesting cannot happen.

 

Could you email the categories.ser file to admin(at)<myname>(dot)co(dot)uk please.

 

I have noticed a harcoded languages_id all users please make the following change.

 

includes/functions/fwr_cat_functions.php

 

Replace the entire function function categoriesFullScan with the following: -

 

function categoriesFullScan($order_by){
 global $languages_id;
$sql = "
SELECT c.categories_id, c.parent_id, c.sort_order, cDescr.categories_name
FROM " . TABLE_CATEGORIES . " AS c
INNER JOIN " . TABLE_CATEGORIES_DESCRIPTION . " AS cDescr
WHERE c.categories_id = cDescr.categories_id
AND cDescr.language_id = '" . (int)$languages_id . "'
ORDER BY c.parent_id, $order_by, cDescr.categories_name
DESC";

 return tep_db_query($sql);
}

Edited by FWR Media

Share this post


Link to post
Share on other sites

Package updated to 1.1.1

 

Please update.

Share this post


Link to post
Share on other sites
Again I can't replicate this, the code works as follows: -

 

	if($row['parent_id'] != '0') {
  // Do something
} else {
  // Do what your site is doing
}

 

Now if as you say those categories should be under kitchen>Olive oils then the parent id cannot be 0 and therefore what you are suggesting cannot happen.

 

Could you email the categories.ser file to admin(at)<myname>(dot)co(dot)uk please.

 

I upgraded to 1.1.1 first and then set to sort_order

 

here is the output

 

a:37:{i:74;a:5:{s:2:"id";s:2:"74";s:6:"parent";s:1:"0";s:4:"sort";s:1:"0";s:4:"path";s:2:"74";s:4:"name";s:7:"For Her";}i:75;a:5:{s:2:"id";s:2:"75";s:6:"parent";s:1:"0";s:4:"sort";s:1:"1";s:4:"path";s:2:"75";s:4:"name";s:7:"For Him";}i:77;a:6:{s:2:"id";s:2:"77";s:6:"parent";s:1:"0";s:4:"sort";s:1:"2";s:4:"path";s:2:"77";s:4:"name";s:8:"For Kids";s:8:"children";s:16:"103,101,102,113,";}i:76;a:6:{s:2:"id";s:2:"76";s:6:"parent";s:1:"0";s:4:"sort";s:1:"3";s:4:"path";s:2:"76";s:4:"name";s:18:"For Mom & Baby";s:8:"children";s:4:"116,";}i:99;a:6:{s:2:"id";s:2:"99";s:6:"parent";s:1:"0";s:4:"sort";s:1:"4";s:4:"path";s:2:"99";s:4:"name";s:12:"Leisure Time";s:8:"children";s:8:"104,100,";}i:97;a:6:{s:2:"id";s:2:"97";s:6:"parent";s:1:"0";s:4:"sort";s:1:"5";s:4:"path";s:2:"97";s:4:"name";s:24:"Kitchen, Table & Bar";s:8:"children";s:24:"106,115,65,80,105,82,86,";}i:98;a:6:{s:2:"id";s:2:"98";s:6:"parent";s:1:"0";s:4:"sort";s:1:"6";s:4:"path";s:2:"98";s:4:"name";s:14:"Home & Spa";s:8:"children";s:7:"66,114,";}i:1;a:6:{s:2:"id";s:1:"1";s:6:"parent";s:1:"0";s:4:"sort";s:1:"8";s:4:"path";s:1:"1";s:4:"name";s:8:"For Pets";s:8:"children";s:4:"107,";}i:95;a:5:{s:2:"id";s:2:"95";s:6:"parent";s:1:"0";s:4:"sort";s:2:"10";s:4:"path";s:2:"95";s:4:"name";s:16:"Last Chance Club";}i:94;a:5:{s:2:"id";s:2:"94";s:6:"parent";s:1:"0";s:4:"sort";s:2:"11";s:4:"path";s:2:"94";s:4:"name";s:8:"Seasonal";}i:107;a:5:{s:2:"id";s:3:"107";s:6:"parent";s:1:"1";s:4:"sort";s:1:"0";s:4:"path";s:5:"1_107";s:4:"name";s:35:"Opoly Board Games for Animal Lovers";}i:116;a:5:{s:2:"id";s:3:"116";s:6:"parent";s:2:"76";s:4:"sort";s:1:"0";s:4:"path";s:6:"76_116";s:4:"name";s:5:"Kaloo";}i:103;a:5:{s:2:"id";s:3:"103";s:6:"parent";s:2:"77";s:4:"sort";s:1:"0";s:4:"path";s:6:"77_103";s:4:"name";s:35:"Professor Noggin's Card Game Series";}i:101;a:5:{s:2:"id";s:3:"101";s:6:"parent";s:2:"77";s:4:"sort";s:1:"0";s:4:"path";s:6:"77_101";s:4:"name";s:23:"Kids' Opoly Board Games";}i:102;a:5:{s:2:"id";s:3:"102";s:6:"parent";s:2:"77";s:4:"sort";s:1:"0";s:4:"path";s:6:"77_102";s:4:"name";s:26:"I Spy Picture Riddle Books";}i:113;a:5:{s:2:"id";s:3:"113";s:6:"parent";s:2:"77";s:4:"sort";s:1:"0";s:4:"path";s:6:"77_113";s:4:"name";s:10:"Dooodolls™";}i:85;a:5:{s:2:"id";s:2:"85";s:6:"parent";s:2:"82";s:4:"sort";s:1:"0";s:4:"path";s:3:"_85";s:4:"name";s:31:"L’Ottobratico Monocultivar EVOO";}i:82;a:5:{s:2:"id";s:2:"82";s:6:"parent";s:2:"97";s:4:"sort";s:1:"0";s:4:"path";s:5:"97_82";s:4:"name";s:10:"Olive Oils";}i:83;a:5:{s:2:"id";s:2:"83";s:6:"parent";s:2:"82";s:4:"sort";s:1:"2";s:4:"path";s:3:"_83";s:4:"name";s:31:"L’Aspromontano Virgin Olive Oil";}i:84;a:5:{s:2:"id";s:2:"84";s:6:"parent";s:2:"82";s:4:"sort";s:1:"3";s:4:"path";s:3:"_84";s:4:"name";s:32:"L’Aspromontano Extra Virgin (EV)";}i:89;a:5:{s:2:"id";s:2:"89";s:6:"parent";s:2:"86";s:4:"sort";s:1:"0";s:4:"path";s:3:"_89";s:4:"name";s:7:"Classic";}i:86;a:5:{s:2:"id";s:2:"86";s:6:"parent";s:2:"97";s:4:"sort";s:1:"0";s:4:"path";s:5:"97_86";s:4:"name";s:17:"Balsamic Vinegars";}i:90;a:5:{s:2:"id";s:2:"90";s:6:"parent";s:2:"86";s:4:"sort";s:1:"1";s:4:"path";s:3:"_90";s:4:"name";s:7:"Vintage";}i:91;a:5:{s:2:"id";s:2:"91";s:6:"parent";s:2:"86";s:4:"sort";s:1:"2";s:4:"path";s:3:"_91";s:4:"name";s:9:"Excellent";}i:93;a:5:{s:2:"id";s:2:"93";s:6:"parent";s:2:"86";s:4:"sort";s:1:"3";s:4:"path";s:3:"_93";s:4:"name";s:11:"Traditional";}i:92;a:5:{s:2:"id";s:2:"92";s:6:"parent";s:2:"86";s:4:"sort";s:1:"4";s:4:"path";s:3:"_92";s:4:"name";s:35:"Gift Boxes & Hand-Blown Bottles";}i:106;a:5:{s:2:"id";s:3:"106";s:6:"parent";s:2:"97";s:4:"sort";s:1:"0";s:4:"path";s:6:"97_106";s:4:"name";s:19:"VacuVin Bar Goodies";}i:115;a:5:{s:2:"id";s:3:"115";s:6:"parent";s:2:"97";s:4:"sort";s:1:"0";s:4:"path";s:6:"97_115";s:4:"name";s:8:"Truffles";}i:65;a:5:{s:2:"id";s:2:"65";s:6:"parent";s:2:"97";s:4:"sort";s:1:"0";s:4:"path";s:5:"97_65";s:4:"name";s:14:"The Garlic Box";}i:80;a:5:{s:2:"id";s:2:"80";s:6:"parent";s:2:"97";s:4:"sort";s:1:"0";s:4:"path";s:5:"97_80";s:4:"name";s:28:"Sylvain Tremblay's Table Art";}i:105;a:5:{s:2:"id";s:3:"105";s:6:"parent";s:2:"97";s:4:"sort";s:1:"0";s:4:"path";s:6:"97_105";s:4:"name";s:24:"Robert Lion Collectibles";}i:66;a:5:{s:2:"id";s:2:"66";s:6:"parent";s:2:"98";s:4:"sort";s:1:"0";s:4:"path";s:5:"98_66";s:4:"name";s:28:"Guillermo Forchino Comic Art";}i:114;a:5:{s:2:"id";s:3:"114";s:6:"parent";s:2:"98";s:4:"sort";s:1:"1";s:4:"path";s:6:"98_114";s:4:"name";s:39:"Lamp Paradise Catalytic, Effusion Lamps";}i:104;a:5:{s:2:"id";s:3:"104";s:6:"parent";s:2:"99";s:4:"sort";s:1:"0";s:4:"path";s:6:"99_104";s:4:"name";s:18:"Window Box Gardens";}i:100;a:5:{s:2:"id";s:3:"100";s:6:"parent";s:2:"99";s:4:"sort";s:1:"0";s:4:"path";s:6:"99_100";s:4:"name";s:17:"Opoly Board Games";}s:13:"menuid_string";s:98:""menu_74","menu_75","menu_77","menu_76","menu_99","menu_97","menu_98","menu_1","menu_95","menu_94"";s:9:"menuid_js";s:349:"<script language="javascript" type="text/javascript">

function get_menu_ids() {

var menuids=["menu_74","menu_75","menu_77","menu_76","menu_99","menu_97","menu_98","menu_1","menu_95","menu_94"] //Enter id(s) of SuckerTree UL menus, separated by commas

return menuids;

}

</script>

<script src="suckertree.js.php" type="text/javascript"></script>";}

Share this post


Link to post
Share on other sites
I upgraded to 1.1.1 first and then set to sort_order

 

here is the output

 

a:37:{i:74;a:5:{s:2:"id";s:2:"74";s:6:"parent";s:1:"0";s:4:"sort";s:1:"0";s:4:"path";s:2:"74";s:4:"name";s:7:"For Her";}i:75;a:5:{s:2:"id";s:2:"75";s:6:"parent";s:1:"0";s:4:"sort";s:1:"1";s:4:"path";s:2:"75";s:4:"name";s:7:"For Him";}i:77;a:6:{s:2:"id";s:2:"77";s:6:"parent";s:1:"0";s:4:"sort";s:1:"2";s:4:"path";s:2:"77";s:4:"name";s:8:"For Kids";s:8:"children";s:16:"103,101,102,113,";}i:76;a:6:{s:2:"id";s:2:"76";s:6:"parent";s:1:"0";s:4:"sort";s:1:"3";s:4:"path";s:2:"76";s:4:"name";s:18:"For Mom & Baby";s:8:"children";s:4:"116,";}i:99;a:6:{s:2:"id";s:2:"99";s:6:"parent";s:1:"0";s:4:"sort";s:1:"4";s:4:"path";s:2:"99";s:4:"name";s:12:"Leisure Time";s:8:"children";s:8:"104,100,";}i:97;a:6:{s:2:"id";s:2:"97";s:6:"parent";s:1:"0";s:4:"sort";s:1:"5";s:4:"path";s:2:"97";s:4:"name";s:24:"Kitchen, Table & Bar";s:8:"children";s:24:"106,115,65,80,105,82,86,";}i:98;a:6:{s:2:"id";s:2:"98";s:6:"parent";s:1:"0";s:4:"sort";s:1:"6";s:4:"path";s:2:"98";s:4:"name";s:14:"Home & Spa";s:8:"children";s:7:"66,114,";}i:1;a:6:{s:2:"id";s:1:"1";s:6:"parent";s:1:"0";s:4:"sort";s:1:"8";s:4:"path";s:1:"1";s:4:"name";s:8:"For Pets";s:8:"children";s:4:"107,";}i:95;a:5:{s:2:"id";s:2:"95";s:6:"parent";s:1:"0";s:4:"sort";s:2:"10";s:4:"path";s:2:"95";s:4:"name";s:16:"Last Chance Club";}i:94;a:5:{s:2:"id";s:2:"94";s:6:"parent";s:1:"0";s:4:"sort";s:2:"11";s:4:"path";s:2:"94";s:4:"name";s:8:"Seasonal";}i:107;a:5:{s:2:"id";s:3:"107";s:6:"parent";s:1:"1";s:4:"sort";s:1:"0";s:4:"path";s:5:"1_107";s:4:"name";s:35:"Opoly Board Games for Animal Lovers";}i:116;a:5:{s:2:"id";s:3:"116";s:6:"parent";s:2:"76";s:4:"sort";s:1:"0";s:4:"path";s:6:"76_116";s:4:"name";s:5:"Kaloo";}i:103;a:5:{s:2:"id";s:3:"103";s:6:"parent";s:2:"77";s:4:"sort";s:1:"0";s:4:"path";s:6:"77_103";s:4:"name";s:35:"Professor Noggin's Card Game Series";}i:101;a:5:{s:2:"id";s:3:"101";s:6:"parent";s:2:"77";s:4:"sort";s:1:"0";s:4:"path";s:6:"77_101";s:4:"name";s:23:"Kids' Opoly Board Games";}i:102;a:5:{s:2:"id";s:3:"102";s:6:"parent";s:2:"77";s:4:"sort";s:1:"0";s:4:"path";s:6:"77_102";s:4:"name";s:26:"I Spy Picture Riddle Books";}i:113;a:5:{s:2:"id";s:3:"113";s:6:"parent";s:2:"77";s:4:"sort";s:1:"0";s:4:"path";s:6:"77_113";s:4:"name";s:10:"Dooodolls™";}i:85;a:5:{s:2:"id";s:2:"85";s:6:"parent";s:2:"82";s:4:"sort";s:1:"0";s:4:"path";s:3:"_85";s:4:"name";s:31:"L’Ottobratico Monocultivar EVOO";}i:82;a:5:{s:2:"id";s:2:"82";s:6:"parent";s:2:"97";s:4:"sort";s:1:"0";s:4:"path";s:5:"97_82";s:4:"name";s:10:"Olive Oils";}i:83;a:5:{s:2:"id";s:2:"83";s:6:"parent";s:2:"82";s:4:"sort";s:1:"2";s:4:"path";s:3:"_83";s:4:"name";s:31:"L’Aspromontano Virgin Olive Oil";}i:84;a:5:{s:2:"id";s:2:"84";s:6:"parent";s:2:"82";s:4:"sort";s:1:"3";s:4:"path";s:3:"_84";s:4:"name";s:32:"L’Aspromontano Extra Virgin (EV)";}i:89;a:5:{s:2:"id";s:2:"89";s:6:"parent";s:2:"86";s:4:"sort";s:1:"0";s:4:"path";s:3:"_89";s:4:"name";s:7:"Classic";}i:86;a:5:{s:2:"id";s:2:"86";s:6:"parent";s:2:"97";s:4:"sort";s:1:"0";s:4:"path";s:5:"97_86";s:4:"name";s:17:"Balsamic Vinegars";}i:90;a:5:{s:2:"id";s:2:"90";s:6:"parent";s:2:"86";s:4:"sort";s:1:"1";s:4:"path";s:3:"_90";s:4:"name";s:7:"Vintage";}i:91;a:5:{s:2:"id";s:2:"91";s:6:"parent";s:2:"86";s:4:"sort";s:1:"2";s:4:"path";s:3:"_91";s:4:"name";s:9:"Excellent";}i:93;a:5:{s:2:"id";s:2:"93";s:6:"parent";s:2:"86";s:4:"sort";s:1:"3";s:4:"path";s:3:"_93";s:4:"name";s:11:"Traditional";}i:92;a:5:{s:2:"id";s:2:"92";s:6:"parent";s:2:"86";s:4:"sort";s:1:"4";s:4:"path";s:3:"_92";s:4:"name";s:35:"Gift Boxes & Hand-Blown Bottles";}i:106;a:5:{s:2:"id";s:3:"106";s:6:"parent";s:2:"97";s:4:"sort";s:1:"0";s:4:"path";s:6:"97_106";s:4:"name";s:19:"VacuVin Bar Goodies";}i:115;a:5:{s:2:"id";s:3:"115";s:6:"parent";s:2:"97";s:4:"sort";s:1:"0";s:4:"path";s:6:"97_115";s:4:"name";s:8:"Truffles";}i:65;a:5:{s:2:"id";s:2:"65";s:6:"parent";s:2:"97";s:4:"sort";s:1:"0";s:4:"path";s:5:"97_65";s:4:"name";s:14:"The Garlic Box";}i:80;a:5:{s:2:"id";s:2:"80";s:6:"parent";s:2:"97";s:4:"sort";s:1:"0";s:4:"path";s:5:"97_80";s:4:"name";s:28:"Sylvain Tremblay's Table Art";}i:105;a:5:{s:2:"id";s:3:"105";s:6:"parent";s:2:"97";s:4:"sort";s:1:"0";s:4:"path";s:6:"97_105";s:4:"name";s:24:"Robert Lion Collectibles";}i:66;a:5:{s:2:"id";s:2:"66";s:6:"parent";s:2:"98";s:4:"sort";s:1:"0";s:4:"path";s:5:"98_66";s:4:"name";s:28:"Guillermo Forchino Comic Art";}i:114;a:5:{s:2:"id";s:3:"114";s:6:"parent";s:2:"98";s:4:"sort";s:1:"1";s:4:"path";s:6:"98_114";s:4:"name";s:39:"Lamp Paradise Catalytic, Effusion Lamps";}i:104;a:5:{s:2:"id";s:3:"104";s:6:"parent";s:2:"99";s:4:"sort";s:1:"0";s:4:"path";s:6:"99_104";s:4:"name";s:18:"Window Box Gardens";}i:100;a:5:{s:2:"id";s:3:"100";s:6:"parent";s:2:"99";s:4:"sort";s:1:"0";s:4:"path";s:6:"99_100";s:4:"name";s:17:"Opoly Board Games";}s:13:"menuid_string";s:98:""menu_74","menu_75","menu_77","menu_76","menu_99","menu_97","menu_98","menu_1","menu_95","menu_94"";s:9:"menuid_js";s:349:"<script language="javascript" type="text/javascript">

function get_menu_ids() {

var menuids=["menu_74","menu_75","menu_77","menu_76","menu_99","menu_97","menu_98","menu_1","menu_95","menu_94"] //Enter id(s) of SuckerTree UL menus, separated by commas

return menuids;

}

</script>

<script src="suckertree.js.php" type="text/javascript"></script>";}

 

Ok I need some help from you badur to find the problem.

 

Could you do an SQL dump of just two tables ..

 

categories

categories_description

 

and email them to me admin(at)fwrmedia(dot)co(dot)uk

Share this post


Link to post
Share on other sites

@ badur

 

Please try replacing the function buildCategoriesCache in includes/functions/fwr_cat_functions.php

 

With ..

 

function buildCategoriesCache($filepath, $order_by, $languages_id) {
$result = categoriesFullScan($order_by, $languages_id);

$javamenustring = '';
while($row = tep_db_fetch_array($result)){
 $categories[$row['categories_id']] = array('id'	   => $row['categories_id'],
										 'parent'   => $row['parent_id'],
										 'sort'	 => $row['sort_order'],
										 'path'	 => '',
										 'name'	 => htmlentities($row['categories_name']));

}
tep_db_free_result($result);
foreach($categories as $cat_id => $key) {
if($key['parent'] != '0'){
( isset($categories[$key['parent']]['children']) && $categories[$key['parent']]['children'] !== NULL ? NULL : $categories[$key['parent']]['children'] = '' );
$categories[$key['parent']]['children'] .= $key['id'] . ',';
$categories[$key['id']]['path'] .= $categories[$key['parent']]['path'] . '_' . $key['id'];
} else {
$javamenustring .= '"menu_' . $key['id'] . '",';
$categories[$key['id']]['path'] .= $key['id'];
} 
}
$javamenustring = rtrim  ($javamenustring, ',');
$categories['menuid_string'] = $javamenustring;
$categories['menuid_js'] =
<<<JSSCRIPT
<script language="javascript" type="text/javascript">
function get_menu_ids() {
var menuids=[$javamenustring] //Enter id(s) of SuckerTree UL menus, separated by commas
return menuids;
}
</script>
<script src="suckertree.js.php" type="text/javascript"></script>
JSSCRIPT;

// Serialize and save the $categories array
$serialized = serialize($categories);
saveSerializedCategories($filepath, $serialized, $languages_id);

$sql = "
UPDATE " . TABLE_CONFIGURATION . "
SET `configuration_value` = 'false'
WHERE `configuration_key` = 'FWR_MENU_RESET'";
tep_db_query($sql) or die('Update failed ' . mysql_error());
return $categories;
}

 

Then reset the cache.

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
Sign in to follow this  

×