Re: Ceon URI Mapping v4.x
I think you're overthinking things. :)
Main_page is the content that follows the url parameter main_page=
So, for /index.php?main_page=page_2, main_page field is page_2. For the associated_db_id, there is no "unique" value that is associated so it should remain blank. This value is used to target a specific type of "item" for which the URI rewriter is to apply "conversion" a products_id, a category, an ez-page, or a manufacturer. These "items" all have a unique id and that is the associated_db_id.
So depending on your condition/desire, the above example could be entered as:
Uri=/page-2, language=1, current_uri=1, and main_page=page_2
1 Attachment(s)
Re: Ceon URI Mapping v4.x
Thank you so much. That worked a treat! The only problem I have now, is when I switch between the languages (Welsh and English in my case) as there isn't an associated_db_id it just goes back to the homepage. This isn't a problem with the product pages etc. Is there a way of rectifying this? Thanks so much for your help.
Attachment 16272
Re: Ceon URI Mapping v4.x
See that field for language? Need to look at either of two things (or more) in your admin where you can add/modify languages (localities I think it is?) the language id associated with your other language (more than likely 2) is to be used for the matching url for that language.
The other "source" would be to inspect the ceon_uri_mappings table for the number(s) related to working alternate language product.
Keep in mind in all of this that only one of the potential many uri's with a matching language and other matching fields can be the current_uri... All the others are well... not current. :)
You may also need to add parameters to the definition (force the entered uri to change the site to the other language.)
Re: Ceon URI Mapping v4.x
Change required for ZC155.
In ZC155 this section was added in /common/html_header.php.
Quote:
<?php
// BOF hreflang for multilingual sites
if (!isset($lng) || (isset($lng) && !is_object($lng))) {
$lng = new language;
}
reset($lng->catalog_languages);
while (list($key, $value) = each($lng->catalog_languages)) {
if ($value['id'] == $_SESSION['languages_id']) continue;
echo '<link rel="alternate" href="' . ($this_is_home_page ? zen_href_link(FILENAME_DEFAULT, 'language=' . $key, $request_type) : $canonicalLink . '&language=' . $key) . '" hreflang="' . $key . '" />' . "\n";
}
// EOF hreflang for multilingual sites
?>
Ceon URI Mapping produces canonical links with no ?parameters:
Quote:
<link rel="canonical" href="http://blah-blah.....aballetes/rg-padd-front-bk-caballete-delantero" />
so the additional &language needs to be ?language (or it becomes an invalid link that gives page not found).
I did this:
PHP Code:
<?php //steve bof CEON uri mapping
//CEON uri mapping produces a CANONICAL link with no ?parameters so '&language=' gets a page not found: need to change separator
$alternateSeparator = ( !isset($ceon_uri_mapping_canonical_uri) ? '&' : '?' );
?>
<?php
// BOF hreflang for multilingual sites
if (!isset($lng) || (isset($lng) && !is_object($lng))) {
$lng = new language;
}
reset($lng->catalog_languages);
while (list($key, $value) = each($lng->catalog_languages)) {
if ($value['id'] == $_SESSION['languages_id']) continue;
echo '<link rel="alternate" href="' . ($this_is_home_page ? zen_href_link(FILENAME_DEFAULT, 'language=' . $key, $request_type) : $canonicalLink . $alternateSeparator . 'language=' . $key) . '" hreflang="' . $key . '" />' . "\n";//steve changed & for a variable separator
}
// EOF hreflang for multilingual sites
//steve eof CEON uri mapping
?>
Re: Ceon URI Mapping v4.x
For people having problems with logins not working and going straight to "Your Shopping cart is Empty" page, especially on a LOCAL server, this thread should be looked at:
https://www.zen-cart.com/showthread....46#post1310146
Re: Ceon URI Mapping v4.x
Website www.onlinesurgicals.com/store/ stopped working after upgrade to VPS with Bluehost. I just get a blank page.
The debugging file in cache folder showed the following.
[10-May-2016 22:13:30 America/Denver] PHP Strict Standards: Declaration of CeonURIMappingHandler::_handleHistoricalURIWithNoCurrentMapping() should be compatible with CeonURIMappingHandlerBase::_handleHistoricalURIWithNoCurrentMapping() in /home/hlcindia/public_html/onlinesurgicals/store/includes/classes/class.CeonURIMappingHandler.php on line 41
[10-May-2016 22:13:30 America/Denver] PHP Strict Standards: Declaration of CeonURIMappingHandler::_handleUnmappedURI() should be compatible with CeonURIMappingHandlerBase::_handleUnmappedURI() in /home/hlcindia/public_html/onlinesurgicals/store/includes/classes/class.CeonURIMappingHandler.php on line 41
However the mobile version of site is working fine in mobiles.
.htaccess file has the rewrite rules as per the codes shown in Ceon URI mapping installation check page within Zencart admin.
I am using zencart version 1.3.9h and fortunately, ZC admin interface is working well in both desktop and mobile.
Please help and treat this very urgent as desktop site is getting significant traffic.
Re: Ceon URI Mapping v4.x
Quote:
Originally Posted by
gopinathgoswami
Website stopped working after upgrade to VPS with Bluehost. I just get a blank page.
The debugging file in cache folder showed the following.
[10-May-2016 22:13:30 America/Denver] PHP Strict Standards: Declaration of CeonURIMappingHandler::_handleHistoricalURIWithNoCurrentMapping() should be compatible with CeonURIMappingHandlerBase::_handleHistoricalURIWithNoCurrentMapping() in /home/hlcindia/public_html/onlinesurgicals/store/includes/classes/class.CeonURIMappingHandler.php on line 41
[10-May-2016 22:13:30 America/Denver] PHP Strict Standards: Declaration of CeonURIMappingHandler::_handleUnmappedURI() should be compatible with CeonURIMappingHandlerBase::_handleUnmappedURI() in /home/hlcindia/public_html/onlinesurgicals/store/includes/classes/class.CeonURIMappingHandler.php on line 41
Evidently you PHP is complaining about violation of Strict Standards. That's likely a result of using old PHP code on a newer version of PHP (newer PHP versions are increasingly more strict about clean code).
Your v1.3.9 site is using PHP code written and released in 2010. That's 6 years ago. And lots of PHP versions ago.
So, I guess you have two options:
a) downgrade PHP to an older version compatible with your old site
b) upgrade your site and plugins to be compatible with your newer PHP version
Or if you can find the new maintainers of the Ceon code online you might purchase a support contract from them to have them adjust the code to work for your site.
Re: Ceon URI Mapping v4.x
Quote:
So, I guess you have two options:
a) downgrade PHP to an older version compatible with your old site
b) upgrade your site and plugins to be compatible with your newer PHP version
I've just forced this issue and yes, with E_STRICT reporting, when CEON URI has to generate a new uri automatically when someone visits a product with no URI defined, a pile of errors are reported while it generates one (it still works ok).
Fortunately (for you) I am currently fixing stuff like this on my site for PHP7 so I'll look into it.
Your immediate stop-gap solution would be to remove E_STRICT error reporting or downgrade php.
I would guess this has just started since your host upgraded to php 5.4:
http://php.net/manual/en/function.error-reporting.php followed immediately by a site upgrade or you are just hiding the problems and putting off the inevitable.
It's "funny" that no-one ever has time to upgrade their site but somehow they find that time when it breaks. Be prepared.
Re: Ceon URI Mapping v4.x
I don't find the same error as you. I have fixed all my E_STRICT error messages related to this mod.
Look in the two files referenced in the first error message for the function declaration.
Quote:
function _handleHistoricalURIWithNoCurrentMapping($main_page, $associated_db_id, $query_string_parameters)
they should be using the same number of parameters. The error message implies they don't. Mine do.
Re: Ceon URI Mapping v4.x
This is no longer valid advice. README has no information.