Zen Cart Logo
Forums / All Other Contributions/Addons / Ceon URI Mapping v4

Ceon URI Mapping v4

Locked

Views: 30,925

Results 1 to 20 of 111
This thread is locked. New replies are disabled.
14 Jul 2011, 3:08 AM
#1
conor avatar

conor

Passed

Join Date:
Aug 2004
Location:
Belfast, Northern Ireland
Posts:
2,480
Plugin Contributions:
4

Ceon URI Mapping v4

THIS MODULE IS NOW OBSOLETE.
See here instead: http://www.zen-cart.com/forum/showthread.php?t=184548

Hi,

Welcome to the new support thread for Ceon URI Mapping, v4.

It should be available in the downloads area soon.

About the module

Use Static URIs to make web addresses Easier to Remember and Easier to Enter.
Improve the store's Rankings in Search Engines!

The Ceon URI Mapping module is a very handy module that no Zen Cart site should be without!

Unlike other SEO modules, where the URIs are generated automatically when a customer visits a page, this module allows specific URIs to be entered within the admin, or even for auto-generation to be used to create a static URI for an individual category/product/manufacturer/EZ-Page/Zen Cart page.

We believe this to be a much better solution as **the store is in control of its URIs**. 

It lets the store specify static, human-readable, keyword-based URIs to be used instead of the dynamic, ID-based URIs which Zen Cart uses as standard.
For example, for a product, instead of dynamic URIs like this:

http://yourstore.com/index.php?main_page=product_info&cPath=3&products_id=5

A static address - easy to read, easy to type in and full of keywords - could be specified for the product:

http://yourstore.com/books/life-is-good

It's simple to promote sections of the site on advertising literature.

For example, the following static URI could be mapped to the specials page:

http://yourstore.com/EasterSpecials

Ceon URI Mapping is packed full of features, which include:

  • Full Multi-Language Support
  • Canonical URI Support
  • Historical URI Redirection (Never have a broken link again!)
  • URI Auto-Generation
  • Transliteration Support
  • 100% Compatibility with Zen Cart
  • As well as many more!
    Give potential customers easy to enter/remember URIs and improve the site's rankings in search engines!
14 Jul 2011, 3:13 AM
#2
conor avatar

conor

Passed

Join Date:
Aug 2004
Location:
Belfast, Northern Ireland
Posts:
2,480
Plugin Contributions:
4

Re: Ceon URI Mapping v4

Features

Historical URI Mapping - No More Broken Links!

  • Each Category/Product/Manufacturer/EZ-Page/Zen Cart Page (subject) with URI mapping(s) has a single “Current” URI.
  • Any number of URIs can map to the same subject. However, when a customer uses a URI which is not the “current” URI they are quickly and automatically redirected to the “current” URI. This occurs before the site begins to display, so is completely transparent.
  • “Deleted”/“Previous” URI mappings still point towards their original subject, by redirecting the user to the “Current” URI for the subject (unless they have become overridden by a current or newer URI mapping which uses the same URI of course!).

Canonical URIs

  • Any page with a static URI automatically has a canonical URI tag added to the page's header. This minimises “duplicate content” reports as it tells the search engines that multiple “pages” should be treated as one.
  • For example, instead of the search engine thinking that /all-products?disp_order=1 is a different page from /all-products?disp_order=3, Ceon URI Mapping lets it know that the page's “real” URI is just /all-products and that these other URIs are just variations for the same page.

Easy-to-use Admin Integration for Categories, Products, Manufacturers and EZ-Pages

  • Specifying custom URI mappings for Categories, Products, Manufacturers and EZ-Pages is quick and easy.. just browse to the appropriate Category/Product/Manufacturer/EZ-Page in the admin and enter the URI to be used in the text fields added by the module, or tick the “auto-generate” check box, if auto-generation is enabled!
  • Change existing Category/Product/Manufacturer/EZ-Page URI mappings in the same easy manner!

URI Mapping Auto-generation

  • The module comes with very powerful, flexible and easy-to-use URI mapping auto-generation functionality.
  • If auto-generation is used to create a URI mapping for a Category, Product, Manufacturer or EZ-Page it automatically capitalises the Category/Product/Manufacturer Name or EZ-Page Title according to the store's preferred settings, replaces any whitespace with a preferred character, removes selected words and replaces particular characters/strings as specified in the configuration utility.
  • Please Note: This module does not automatically add mappings for existing Categories/Products/Manufacturers/EZ-Pages - if the site has existing Categories/Products/Manufacturers/EZ-Pages, they'll continue to use the standard Zen Cart dynamic URIs, until a URI has been entered or auto-generated for them, by editing the respective Category/Product/Manufacturer/EZ-Page in the admin.
  • This means going in and editing every Category/Product/Manufacturer/EZ-Page for which a static URI mapping is desired.

Full Multi-language Support - including Transliteration and UTF-8!

  • The module is fully multilingual - every page can have a URI mapping for each language supported by the store!
  • The module automatically causes Zen Cart to use the language the URI uses, greatly enhancing Zen Cart's language functionality!
  • This multi-language functionality makes it likely that the site will feature much higher in search engine listings specific to the various languages the store supports.
  • The module also has full support for transliteration! When using the URI mapping auto-generation functionality it transliterates the names/titles from any language into plain ASCII, the format used by URIs.
  • Transliteration support means that characters outside of the standard character set allowed in URIs won't just be stripped from the URI, leaving words with letters missing. For example, “á” is replaced with “a”, “ß” is replaced with “ss” etc.
  • The transliteration support extends to supporting the UTF-8 character set, so Japanese, Chinese characters etc. are all handled easily!

Organise EZ-Pages into Site Sections

  • By putting a bit of thought into the format of URI mappings for EZ-Pages, it is possible to organise them into logical sections.
  • EZ-Pages no longer have to appear as being “root” pages of the site!
  • For example, a “Company” section could be created with 4 EZ-Pages using URI mappings such as the following:
    /company
    /company/about-us
    /company/about-us/endorsements
    /company/how-to-find-us

Ability to use Static URIs for any Zen Cart page

  • There are two methods for using static URIs for any Zen Cart page, both of which have full support for having a “current” URI, as many historical/“old” URIs as necessary and are fully multi-lingual:
  1. Static URIs can be used for any Zen Cart page by directly entering the static URI for the page and the type of the page in the database table for the module.
  • Using this method to specify static URIs for a Zen Cart page will cause every link to that page to use the static URI instead of the dynamic Zen Cart URI.
  • For example, to create a static URI for “index.php?main_page=specials”:
    uri: /latest-offers
    main_page: specials
  1. Static URIs being used for Zen Cart pages can also allow data to be supplied to Zen Cart.
  • This is achieved by initialising the GET variables for the Zen Cart page when it is loaded, which are set up by directly entering the static URI for the page, the type of the page and the GET variables to be loaded in the database table for the module.
  • For example:

uri: /surveys/shipping

  • Could map to a custom survey page, with the necessary ID for the survey to be shown:
    **
    main_page:** survey
    **
    query_string_parameters:** survey_id=2
  • Please Note: These URIs will only be used as the static URIs for links if the query string parameters being used to generate the link are exactly the same as the value of the “query_string_parameters” field (with the exception that the session parameter, if any, is ignored).
  • Please note: There is no admin interface for entering these URI mappings in this module, they have to be entered manually (using software such as PHPMyAdmin).

Automatic Usage of any URI mappings Defined for Categories, Products, Manufacturers, EZ-Pages or any other Zen Cart page!

  • The module modifies the main zen_href_link function slightly to make automatic use of any URI mappings defined for a category, product, manufacturer, EZ-Page or other Zen Cart page.
  • Having each page link to each other using their static URIs makes the site easier to navigate and increases the usage of keywords on the site, further helping SEO!

Ability to use Static URIs as an Alias for any other Static URI

  • The module can be used to redirect from one static URI to an alternative URI (even to an external URI).
  • The exact type of redirection (temporary/permanent etc.) can even be controlled, by specifying the HTTP Status Code to be used for the redirection to the alternative URI.
  • Creating aliases allows the store to handle visits to broken/old links.
  • It also allows the store to increase the number of keywords being used to link to a page on the site through the creation of an alternative link/alias.
  • Please note: There is no admin interface for entering these URI mappings in this module, they have to be entered manually (using software such as PHPMyAdmin).

Automated support for standard Zen Cart pages related to a Product

  • The Reviews and Tell-A-Friend sections can automatically be made “subsections” of the product's main info page, by appending some specific URI parts to the product info page's static URI.
  • This saves effort setting up URIs for these pages specifically for each product, as it creates static URIs such as:
    /books/life-is-good/reviews
    /books/life-is-good/tell-a-friend
  • [New for 4.0.0] A section in the module's Config Utility allows the store to select which “Product Page URIs” are automatically managed by the software, and to set the text that should be used for the URIs.

100% Compatibility with Zen Cart and Most Modules, Minimal Tweaks Required for Some Other Modules

  • Installing the module won't break any of the functionality of Zen Cart.
  • The module works using Zen Cart's Initsystem so it doesn't interfere with any of its workings. Zen Cart pages have no idea the module is even running, the run-time environment appears exactly as if the module wasn't installed.
  • This means that the module should work perfectly with most (and most likely all) other Zen Cart modules - as long as they don't use relative links/paths. Those modules which do use relative links/paths simply need to have their relative links/paths changed to static links/paths, something which is easily done by adding a single define to the start of the links/paths.
  • [New for 4.0.0] The software does its best to work out if it is being called by a third party script instead of directly from Zen Cart and will prevent itself from interfering with the running of the third party script!

Transparently Handles URIs With or Without a Slash (/) at the End

  • The module sees URIs with a slash at the end as identical to those without one. For example, the following are equivalent:

                <http://yourstore.com/books/life-is-good>
      <http://yourstore.com/books/life-is-good/>
    

Respects Context of a Link to a Category/Product page

  • The module retains Zen Cart's category history when linking to a subcategory of another category or a linked product which is not within its “master” category, so the full path back through any parent categories is available. (Without this feature all categories being mapped to by a URI mapping would appear as if their only parent category was the root of the store and linked products would always show as belonging to their “master” category, which is not necessarily the category the customer has accessed the product from).

Avoids Possibility of Duplicate URIs

  • [New for 4.0.0] The software won't allow a duplicate URI mapping to be created. It can be configured to warn the user when an attempt is being made to create a URI mapping which would clash with one already being used elsewhere.
  • For product URIs, the software can even be configured to automatically append a number to a URI when a clash is detected, to make the URI unique without the user having to manually change anything themselves!

Support for all of Zen Cart's Standard Product Types (and more)!

  • The module has full support for the standard 5 product types in Zen Cart plus the product_book type (version 4 from the Zen Cart download area).

Easy to Install and Keep Up To Date!

  • [New for 4.0.0] The module has an “Installation Check” section in its config utility which analyses the store's configuration, identifies any problems and tells you what they are and how to fix them!
  • [New for 4.0.0] Once the module has been installed initially, upgrading to a new version takes aroud 10 seconds. The files for the new version simply have to be copied across, then the software will take over and carry out any necessary updates itself!

Compatible with the Most Popular Webservers

      A webserver that supports rewrite rules is required. Currently tested/supported webservers are:     
  • Apache with mod_rewrite.
  • IIS with ISAPI_Rewrite 3.
  • IIS with IIS URL Rewrite.
  • Zeus Webserver (ask for integration details).

Lightweight!

  • The module has a minimal impact on the server as it is very lightweight.
14 Jul 2011, 3:15 AM
#3
conor avatar

conor

Passed

Join Date:
Aug 2004
Location:
Belfast, Northern Ireland
Posts:
2,480
Plugin Contributions:
4

Re: Ceon URI Mapping v4

BEFORE YOU POST A SUPPORT QUESTION HERE READ THROUGH THE FAQs.

Enjoy the software!

All the best..

Conor
ceon

14 Jul 2011, 1:05 PM
#4
gertzy avatar

gertzy

New Zenner

Join Date:
Feb 2010
Posts:
40
Plugin Contributions:
0

Re: Ceon URI Mapping v4

Wonderful Conor - Big thumbs up - thanks

14 Jul 2011, 3:17 PM
#5
gertzy avatar

gertzy

New Zenner

Join Date:
Feb 2010
Posts:
40
Plugin Contributions:
0

Re: Ceon URI Mapping v4

Hello Conor,
running 1.3.9h and upgrading from 3.8 to 4.0... I have followed upgrade instructions, been very careful about merging files etc, rechecked my install ws good....

I got to instruction number 7... to go into the Modules menu in the admin prog... And am getting an SQL error... Here is the error...


1064 You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ''1' at line 10
in:
[ UPDATE ceon_uri_mappings SET uri = '' WHERE uri = '/' AND language_id = '1' AND current_uri = '1;]
If you were entering information, press the BACK button in your browser and re-check the information you had entered to be sure you left no blank fields.


14 Jul 2011, 5:39 PM
#6
gertzy avatar

gertzy

New Zenner

Join Date:
Feb 2010
Posts:
40
Plugin Contributions:
0

Re: Ceon URI Mapping v4

OK, let me give you an update of my previous post. The SQL command appeared to have a single quote missing from the error (the last chr is a semi-colon, so one chr before that and after the number 1)... , so, I pasted that SQL command into PHPMyAdmin and it ran that command with the extra single quote, which updated 6 rows... And now.. I can actually get into the "Module" "Ceon URI Mapping (SEO) Config" and now see the new pages (4 tabs etc)...

14 Jul 2011, 5:49 PM
#7
gertzy avatar

gertzy

New Zenner

Join Date:
Feb 2010
Posts:
40
Plugin Contributions:
0

Re: Ceon URI Mapping v4

Just an added bit of info for the upgrade. Section 9 of the instructions, the Installation check, it would not work for me until I had gone into "Tools" "Admin Settings" and entered a tick next to the new module "ceon uri mapping installation check"...

14 Jul 2011, 6:18 PM
#8
conor avatar

conor

Passed

Join Date:
Aug 2004
Location:
Belfast, Northern Ireland
Posts:
2,480
Plugin Contributions:
4

Re: Ceon URI Mapping v4

Hi,

I replied to your e-mail.. did you get my e-mail ok?

Gertzy:

1064 You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ''1' at line 10
in:
[ UPDATE ceon_uri_mappings SET uri = '' WHERE uri = '/' AND language_id = '1' AND current_uri = '1;]

Argh, I've tracked this and can see that you've found a bug.. the SQL is missing its closing quote.

This should affect very few people though as it is part of the _stripTrailingSlashesFromMappings() upgrade method.

This method runs whenever your previous set of 3.x mappings have any mappings that end with a slash.

In your case, you'd actually added an incorrect mapping, by manually adding a mapping for '/'.. a mapping was never required for the root of the site in version 3.8.0.

Still, it appears that one test I missed was for sites that had URIs with ending slashes.

I've fixed this and am re-releasing 4.0.0 without any notification about this and without creating a version 4.0.1.

I should really create a 4.0.1 but because only a small number of people have so far downloaded 4.0.0, the time saved in not doing so can help me get some better work done! :)

I'll also make tweak the method so it ignores this "unnecessary" root page mapping you had added.. didn't expect anyone to have added such a mapping! :)

Gertzy:

Just an added bit of info for the upgrade. Section 9 of the instructions, the Installation check, it would not work for me until I had gone into "Tools" "Admin Settings" and entered a tick next to the new module "ceon uri mapping installation check"...

I understand why you needed to do that.. that's the "Admin Profiles" module. To be honest, that's really your responsibility to know how it works when you install it, but I guess it might be worth adding instructions for others who forget when they've got it installed to check its settings. :)

All the best...

Conor
ceon

14 Jul 2011, 6:33 PM
#9
conor avatar

conor

Passed

Join Date:
Aug 2004
Location:
Belfast, Northern Ireland
Posts:
2,480
Plugin Contributions:
4

Re: Ceon URI Mapping v4

Hi,

I've fixed that upgrade method and re-released v4.0.0.. the version on the Ceon website has this fix in it.

There's a problem with the Zen Cart downloads area's upload page at the minute so until that's fixed please just use the link at the top of this thread (well, here it is again too).

All the best..

Conor
ceon

14 Jul 2011, 8:21 PM
#10
kamelion0927 avatar

kamelion0927

Zen Follower

Join Date:
Dec 2009
Posts:
208
Plugin Contributions:
1

Re: Ceon URI Mapping v4

This new version should run with the old version's .htaccess settings right?

I've uninstalled and reinstalled this mod three times in the last couple of days and my admin runs great but I can't access my site - it keeps giving me a 500 error with a file does not exist error in my cPanel.

I've tried modifying the

RewriteRule .* shop/index.php?%{QUERY_STRING} [QSA,L]

line in several different ways (including the way I had it before I upgraded) and it isn't working. I have also tried deleting the rest of the rewrites that I have set up in my .htaccess file to no avail.

And one other thing (though it's not a huge issue unless you're a total noob) when I ran the installation check, I was told that the line above needed to be

RewriteRule .* shindex.php [QSA,L]

which made me laugh because it just doesn't look right (and yes, I tried that line as well just to make sure). It also added a non-included line next to a rewrite rule

RewriteCond %{REQUEST_URI} ^/shop/ [NC]# Don't rewrite any URIs ending with a file extension (ending with .[xxxxx])

which also gave me an error (but google was kind enough to help me figure out what the problem was).

Any help would be extremely appreciated. Thanks in advance!

14 Jul 2011, 8:25 PM
#11
gertzy avatar

gertzy

New Zenner

Join Date:
Feb 2010
Posts:
40
Plugin Contributions:
0

Re: Ceon URI Mapping v4

conor:

Hi,
I replied to your e-mail.. did you get my e-mail ok?

Yes thanks, got your email. Will respond to it shortly, probably tomorrow actually.

conor:

Argh, I've tracked this and can see that you've found a bug.. the SQL is missing its closing quote.

I was a database programmer years ago so know a bit about databases. :)

conor:

In your case, you'd actually added an incorrect mapping, by manually adding a mapping for '/'.. a mapping was never required for the root of the site in version 3.8.0.

Actually, I have not added any manual database entries into the 3.8.0 table. I have looked at it and see this... I have created 6 x categories in Zen that act as spacers.... ie... I have 20+ categories and on the left menu, I dont want them all together, so after 5 categories, I wanted a space and the way I did it was to create a category with a blank name... Having a cateory with a name with just a since space did nto work, it never made that space I wanted, so, I created the category with <ALT>255 - which is a blank character... There are 6 of these categories just the same... and if you remember my reply earier, the manual entry of the update command updated 6 rows... I manually looked into the tabe and see that is exactly the case... ^ records in the table now have the 'uri' field as blank. Not particularly bothered as there are no products in there, and I will manually do something to fix it..

One thing I will say about that is, I dont know how those 6 blank categories got into your mappings table because I KNOW, that I have never edited those 6 categories to manually get them into the URI database like I did with the 400 or so other categories... So a little confused with that..!!

conor:

I understand why you needed to do that.. that's the "Admin Profiles" module. To be honest, that's really your responsibility to know how it works when you install it, but I guess it might be worth adding instructions for others who forget when they've got it installed to check its settings. :)

I agree that it is a good idea to put a line in the instructions for those that forget they have admin tools..

Cheers
Gertzy

14 Jul 2011, 8:32 PM
#12
kamelion0927 avatar

kamelion0927

Zen Follower

Join Date:
Dec 2009
Posts:
208
Plugin Contributions:
1

Re: Ceon URI Mapping v4

kamelion0927:

...It also added a non-included line next to a rewrite rule

RewriteCond %{REQUEST_URI} ^/shop/ [NC]# Don't rewrite any URIs ending with a file extension (ending with .[xxxxx])

which also gave me an error (but google was kind enough to help me figure out what the problem was).

Any help would be extremely appreciated. Thanks in advance!

Sorry - I didn't add the fix to one of the issues in my last post and wanted to document it in case someone else needs it.

If you're getting a bad rewrite request error, make sure all not-included rewrite rules are on their own line. So to fix the problem above, make it look like this:

RewriteCond %{REQUEST_URI} ^/shop/ [NC]

Don't rewrite any URIs ending with a file extension (ending with .[xxxxx])

14 Jul 2011, 9:17 PM
#13
robl avatar

robl

New Zenner

Join Date:
Jul 2011
Posts:
2
Plugin Contributions:
0

Re: Ceon URI Mapping v4

Hi,
Getting the same error as kamelion0927.
I can access a product page via a direct link ok but cannot use the home button to get to the normal landing page
"/localhost/catalogue/" it just gives a blank page.
If i put in "/localhost/catalogue/index.php?main_page=index." note the "." it loads.
Don't know much about this sort of stuff but maybe it will help.

15 Jul 2011, 1:32 AM
#14
conor avatar

conor

Passed

Join Date:
Aug 2004
Location:
Belfast, Northern Ireland
Posts:
2,480
Plugin Contributions:
4

Re: Ceon URI Mapping v4

HI,

kamelion0927:

when I ran the installation check, I was told that the line above needed to be

RewriteRule .* shindex.php [QSA,L]

which made me laugh because it just doesn't look right (and yes, I tried that line as well just to make sure). It also added a non-included line next to a rewrite rule

RewriteCond %{REQUEST_URI} ^/shop/ [NC]# Don't rewrite any URIs ending with a file extension (ending with .[xxxxx])

I was able to replicate this problem. A "\n" was missing when the store used a subdirectory.

I've fixed this now.. the download archive's files include this fix. Again, not making this an official 4.0.1 update as so few people have this version.

Simply download the archive again and overwrite the files on your site with the files from the "files" folder and the example Rewrite Rule produced in the Installation Check will be the one you should use. I've tested this properly this time, sorry about earlier.

All the best..

Conor
ceon

15 Jul 2011, 1:35 AM
#15
conor avatar

conor

Passed

Join Date:
Aug 2004
Location:
Belfast, Northern Ireland
Posts:
2,480
Plugin Contributions:
4

Re: Ceon URI Mapping v4

Hi,

RobL:

I can access a product page via a direct link ok but cannot use the home button to get to the normal landing page
"/localhost/catalogue/" it just gives a blank page.
If i put in "/localhost/catalogue/index.php?main_page=index." note the "." it loads.

I have never seen anything like that before. Maybe it's the same issue with the missing newline in the example rule.

Please re-download 4.0.0 and overwrite the files on your test site with the files from the "files" folder and that will let you produce the correct rewrite rule to put in your .htaccess file.

All the best...

Conor
ceon

15 Jul 2011, 2:14 AM
#16
kamelion0927 avatar

kamelion0927

Zen Follower

Join Date:
Dec 2009
Posts:
208
Plugin Contributions:
1

Re: Ceon URI Mapping v4

conor:

HI,

I was able to replicate this problem. A "\n" was missing when the store used a subdirectory.

I've fixed this now.. the download archive's files include this fix. Again, not making this an official 4.0.1 update as so few people have this version.

Simply download the archive again and overwrite the files on your site with the files from the "files" folder and the example Rewrite Rule produced in the Installation Check will be the one you should use. I've tested this properly this time, sorry about earlier.

All the best..

Conor
ceon

Thank you very much! I really appreciate your prompt response and help.

15 Jul 2011, 2:26 AM
#17
conor avatar

conor

Passed

Join Date:
Aug 2004
Location:
Belfast, Northern Ireland
Posts:
2,480
Plugin Contributions:
4

Re: Ceon URI Mapping v4

Hi,

kamelion0927:

Thank you very much! I really appreciate your prompt response and help.

No problem! I've uploaded the updated archive now.

Good night!

All the best...

Conor
ceon

15 Jul 2011, 3:32 AM
#18
kamelion0927 avatar

kamelion0927

Zen Follower

Join Date:
Dec 2009
Posts:
208
Plugin Contributions:
1

Re: Ceon URI Mapping v4

conor:

Hi,

No problem! I've uploaded the updated archive now.

Good night!

All the best...

Conor
ceon

Night - you too.

15 Jul 2011, 8:07 AM
#19
robl avatar

robl

New Zenner

Join Date:
Jul 2011
Posts:
2
Plugin Contributions:
0

Re: Ceon URI Mapping v4

Putting the new files on worked great

Thanks for the help.

15 Jul 2011, 8:53 AM
#20
conor avatar

conor

Passed

Join Date:
Aug 2004
Location:
Belfast, Northern Ireland
Posts:
2,480
Plugin Contributions:
4

Re: Ceon URI Mapping v4

Hi,

RobL:

Putting the new files on worked great

Thanks for the help.

Glad to hear that. Enjoy the new URIs! :)

All the best...

Conor
ceon