Jump to content
FWR Media

ULTIMATE Seo Urls 5 - by FWR Media

Recommended Posts

A hard coded link not passing via tep_href_link() ?

 

Post the code that is producing the link.

 

Is this the one you mean?

 

<?php echo tep_draw_hidden_field('products_id', $product_info['products_id']) . tep_image_submit('button_in_cart1.gif', IMAGE_BUTTON_IN_CART); ?>

Share this post


Link to post
Share on other sites

Hello,

today I came across this tip here: http://forums.oscommerce.com/topic/155079-remove-index-php-when-browsing-back-to-main-page/ and I wanted to add this to my shop. The way they solved the "//" problem doesnt work for me, because I use USU5. Any Ideas how to solve it while using USU5?

 

That will never work with USU5 as tep_href_link() should be passed a filename not a path.

 

Also the idea in general isn't very good as all other links the site generates will still point to mysite.com/index.php

 

The correct way to do this is for tep_href_link not to generate index.php at all if there is no additional querystring. USU5 PRO does this but not the current version.

Share this post


Link to post
Share on other sites

Is this the one you mean?

 

<?php echo tep_draw_hidden_field('products_id', $product_info['products_id']) . tep_image_submit('button_in_cart1.gif', IMAGE_BUTTON_IN_CART); ?>

 

Nope .. as I mentioned .. tep_href_link(). In this case the uri will be the action of the form.

Share this post


Link to post
Share on other sites

Hi all, i am Italian and i love the FWR media contributions.

 

I use the ULTIMATE Seo Urls 5 r141 stable. As today i didn't have no problem. But today i saw this when i click on English language :

 

Fatal error: Call to undefined method stdClass::merge() in /web/htdocs/www.*********.**/home/shop/includes/modules/ultimate_seo_urls5/modules/Usu_Categories.php on line 38

 

I haven't change anything. Now I am getting a HTTP 500 Internal Server Error... and Site in English language is down.. while in Deustch and Italian Language the site is UP and works fine.

 

I have been red that this error is already happened to user "Oggster".

 

I can login into admin. I have 18 categories and about 3890 products. I go to admin Tools > Server Info and i search for memory_limit : is set to 64MB.

 

After i change to the database cache method. The problem with the english language and the Fatal error was resolved but i get this error on bottom of every page :

 

Warning: mysql_real_escape_string(): 7 is not a valid MySQL-Link resource in /web/htdocs/www.russogioielli.com/home/shop/includes/functions/database.php on line 132

Warning: mysql_real_escape_string(): 7 is not a valid MySQL-Link resource in /web/htdocs/www.russogioielli.com/home/shop/includes/functions/database.php on line 132

Warning: mysql_query(): 7 is not a valid MySQL-Link resource in /web/htdocs/www.russogioielli.com/home/shop/includes/functions/database.php on line 44
-

UPDATE `usu_cache` SET cache_data = '', cache_date = '2010-08-06 16:32:41' WHERE cache_name = ''

[TEP STOP]

 

How i can resolve it?! Please help me. If you want i can tell you my website address.

 

THANKS IN ADVANCE FROM ITALY. YOU ARE AWESOME.

Share this post


Link to post
Share on other sites

I resolve by delete the 3 file in cache. I deleted also the Usu_PopUpImage.php but after about one days the problem of Fatal error: Call to undefined method disappears. I have a huge shop... i need that you send me a pm via email with files that don't cache the products. Thank you so much.

Share this post


Link to post
Share on other sites

I still waiting an answer via email by FWR Media... i have send you a pm with my email so i can receive the file for no caching USU. That is a seriously problem because google bot downgrade the website... I think that is better to implement the "no cache" as "Select caching system" by default in USU5.

 

We should have :

 

No Cache:

No cache.

Filesystem:

Zero queries after cache load.

Database:

One query after cache load

Memcached:

Requires memcached in apache and php.ini.

 

I am having serious problems with the sales on my website for this problem ...

 

Please reply as soon as possible.

 

I have 3900 products in store that are moltiplate for 3 languages are about 12000 products...

 

Many Thanks.

Share this post


Link to post
Share on other sites

Dear FWR MEDIA,

 

Many thanks, you are awesome. I've just upload your files that you send me via email and it seems works fine.

 

Best Regards from Italy :D

Share this post


Link to post
Share on other sites

That will never work with USU5 as tep_href_link() should be passed a filename not a path.

 

Also the idea in general isn't very good as all other links the site generates will still point to mysite.com/index.php

 

The correct way to do this is for tep_href_link not to generate index.php at all if there is no additional querystring. USU5 PRO does this but not the current version.

 

Hi Robert,

 

I was referred to this forum by another post I'd made, though it seems that this question about double slashes has been asked before.

 

http://forums.oscommerce.com/topic/362588-indexphp-vs/page__gopid__1525200entry1525200

 

I think that like many people, I'm using your USU5 and Jack's Header Tags SEO (I'm too far in to completely change either one I think). Just to clarify things, you're saying that changing tep_href_link(FILENAME_DEFAULT)to tep_href_link('/') will not remove both index.php and //, so the suggested course of action is to upgrade to USU5 PRO? Is there any canonical code/add-on that may work, though Sam's prevent duplicate content add-on which you contributed to is apparently non-compatible with Header Tags according to Jack. I don't have any extra slashes in my configure files, as is the cause of most // problems.

 

Thanks for your time and sorry if this is outside of the scope of this forum.

Share this post


Link to post
Share on other sites

Hi Robert,

 

I was referred to this forum by another post I'd made, though it seems that this question about double slashes has been asked before.

 

http://forums.oscommerce.com/topic/362588-indexphp-vs/page__gopid__1525200entry1525200

 

I think that like many people, I'm using your USU5 and Jack's Header Tags SEO (I'm too far in to completely change either one I think). Just to clarify things, you're saying that changing tep_href_link(FILENAME_DEFAULT)to tep_href_link('/') will not remove both index.php and //, so the suggested course of action is to upgrade to USU5 PRO? Is there any canonical code/add-on that may work, though Sam's prevent duplicate content add-on which you contributed to is apparently non-compatible with Header Tags according to Jack. I don't have any extra slashes in my configure files, as is the cause of most // problems.

 

Thanks for your time and sorry if this is outside of the scope of this forum.

 

Changing the code to tep_href_link( '/' ) is just wrong.

 

a] It is not a valid filename.

b] It affects only the breadcrumb and not all the other instances where tep_href_link() will supply a url using just filename_default.

 

Try this ..

 

includes/functions/html_output.php

 

Find ..

////
// ULTIMATE Seo Urls 5 by FWR Media
// The HTML href link wrapper function
 function tep_href_link($page = '', $parameters = '', $connection = 'NONSSL', $add_session_id = true, $search_engine_safe = true) {
   global $seo_urls, $languages_id, $request_type, $session_started, $sid;                
   if ( !is_object($seo_urls) ){
     include_once DIR_WS_MODULES . 'ultimate_seo_urls5' . DIRECTORY_SEPARATOR . 'classes' . DIRECTORY_SEPARATOR . 'usu.php';
     $seo_urls = new usu($languages_id, $request_type, $session_started, $sid);
   }
   return $seo_urls->href_link($page, $parameters, $connection, $add_session_id);
 }

 

Replace with ...

 

////
// ULTIMATE Seo Urls 5 by FWR Media
// The HTML href link wrapper function
 function tep_href_link($page = '', $parameters = '', $connection = 'NONSSL', $add_session_id = true, $search_engine_safe = true) {
   global $seo_urls, $languages_id, $request_type, $session_started, $sid;                
   if ( !is_object($seo_urls) ){
     include_once DIR_WS_MODULES . 'ultimate_seo_urls5' . DIRECTORY_SEPARATOR . 'classes' . DIRECTORY_SEPARATOR . 'usu.php';
     $seo_urls = new usu($languages_id, $request_type, $session_started, $sid);
   }
   $url = $seo_urls->href_link($page, $parameters, $connection, $add_session_id);
   if ( substr( $url, -( strlen( FILENAME_DEFAULT )+1 ), strlen( $url ) ) == '/' . FILENAME_DEFAULT ) {
     $url = str_replace( FILENAME_DEFAULT, '', $url );
   }
   return $url;
 }

 

This should remove index.php from the url so long as there is no additional querystring.

Edited by FWR Media

Share this post


Link to post
Share on other sites

Changing the code to tep_href_link( '/' ) is just wrong.

 

a] It is not a valid filename.

b] It affects only the breadcrumb and not all the other instances where tep_href_link() will supply a url using just filename_default.

 

Try this ..

 

includes/functions/html_output.php

 

Find ..

////
// ULTIMATE Seo Urls 5 by FWR Media
// The HTML href link wrapper function
 function tep_href_link($page = '', $parameters = '', $connection = 'NONSSL', $add_session_id = true, $search_engine_safe = true) {
   global $seo_urls, $languages_id, $request_type, $session_started, $sid;                
   if ( !is_object($seo_urls) ){
     include_once DIR_WS_MODULES . 'ultimate_seo_urls5' . DIRECTORY_SEPARATOR . 'classes' . DIRECTORY_SEPARATOR . 'usu.php';
     $seo_urls = new usu($languages_id, $request_type, $session_started, $sid);
   }
   return $seo_urls->href_link($page, $parameters, $connection, $add_session_id);
 }

 

Replace with ...

 

////
// ULTIMATE Seo Urls 5 by FWR Media
// The HTML href link wrapper function
 function tep_href_link($page = '', $parameters = '', $connection = 'NONSSL', $add_session_id = true, $search_engine_safe = true) {
   global $seo_urls, $languages_id, $request_type, $session_started, $sid;                
   if ( !is_object($seo_urls) ){
     include_once DIR_WS_MODULES . 'ultimate_seo_urls5' . DIRECTORY_SEPARATOR . 'classes' . DIRECTORY_SEPARATOR . 'usu.php';
     $seo_urls = new usu($languages_id, $request_type, $session_started, $sid);
   }
   $url = $seo_urls->href_link($page, $parameters, $connection, $add_session_id);
   if ( substr( $url, -( strlen( FILENAME_DEFAULT )+1 ), strlen( $url ) ) == '/' . FILENAME_DEFAULT ) {
     $url = str_replace( FILENAME_DEFAULT, '', $url );
   }
   return $url;
 }

 

This should remove index.php from the url so long as there is no additional querystring.

 

Thanks Robert! That works perfectly for me.

Share this post


Link to post
Share on other sites

Nope .. as I mentioned .. tep_href_link(). In this case the uri will be the action of the form.

I this the one you mean?

 

<?php echo tep_draw_form('cart_quantity', tep_href_link(FILENAME_PRODUCT_INFO, tep_get_all_get_params(array('action')) . 'action=add_product'))

Share this post


Link to post
Share on other sites

Hi Robert,

 

how is it possible in your contri:

 

  1. To add category names to product URLs?
     
    E.g. to get as result:
     
    www.example-domain.com/category-subCategory-product-name-p-123.html


    At the moment what we get is:
     

    www.example-domain.com/product-name-p-123.html


     

  2. Get category link containing all parent categories.
     
    At the moment category links contain only category name and a name of its parent.
    How is it possible to place parent of a parent category aso as well? (e.g. in my shop there
    are up to two levels of subcategories)
     

 

Thanks a lot for your answer, cheers,

Andre

Share this post


Link to post
Share on other sites

Hi again Robert,

 

I just noticed in my error log file (which I should've been checking more carefully) that I've been getting an error over and over again for months.

 

PHP Warning:  Usu_Manufacturers Incorrect manufacturers_id presented: php in /home/XXXX/public_html/includes/modules/ultimate_seo_urls5/modules/Usu_Manufacturers.php on line 126

 

This relates to a check starting at line 124 of that file:

     // Sanity check - if the $base_path is not numeric then we dump it
    if ( false === is_numeric( $base_path ) ) {
      trigger_error( __CLASS__ . ' Incorrect ' . self::DEPENDENCY . ' presented: ' . $valuepair[1], E_USER_WARNING );
      return false;
    }

 

Based on some posts in this forum from January, is it likely that I'm having this error because I have some logo files for manufacturers which are using bad form, i.e., they have hyphens or spaces in the filenames?

 

Thanks,

 

Nick

Edited by longhorn1999

Share this post


Link to post
Share on other sites

Hi again Robert,

 

I just noticed in my error log file (which I should've been checking more carefully) that I've been getting an error over and over again for months.

 

PHP Warning:  Usu_Manufacturers Incorrect manufacturers_id presented: php in /home/XXXX/public_html/includes/modules/ultimate_seo_urls5/modules/Usu_Manufacturers.php on line 126

 

This relates to a check starting at line 124 of that file:

     // Sanity check - if the $base_path is not numeric then we dump it
    if ( false === is_numeric( $base_path ) ) {
      trigger_error( __CLASS__ . ' Incorrect ' . self::DEPENDENCY . ' presented: ' . $valuepair[1], E_USER_WARNING );
      return false;
    }

 

Based on some posts in this forum from January, is it likely that I'm having this error because I have some logo files for manufacturers which are using bad form, i.e., they have hyphens or spaces in the filenames?

 

Thanks,

 

Nick

 

Well all I can say to this is that manufacturer ids in osCommerce are numeric, obviously some part of your script .. somewhere .. is passing in a manufacturers id that is NOT numeric.

Share this post


Link to post
Share on other sites

Well all I can say to this is that manufacturer ids in osCommerce are numeric, obviously some part of your script .. somewhere .. is passing in a manufacturers id that is NOT numeric.

 

Actually I just figured this out. Sorry, I suppose this should've been posted in your FWR Security Pro thread. That security add-on is zealous about preventing/logging certain issues, and apparently these entries are made into my error log only when I run any McAfee PCI scans. It simulates a hack, and this is what's being recorded, not some real error in these or any other files.

Share this post


Link to post
Share on other sites

Actually I just figured this out. Sorry, I suppose this should've been posted in your FWR Security Pro thread. That security add-on is zealous about preventing/logging certain issues, and apparently these entries are made into my error log only when I run any McAfee PCI scans. It simulates a hack, and this is what's being recorded, not some real error in these or any other files.

 

I can imagine McAfee getting some nasty rejections from USU5 :) .. I do take security seriously.

 

As for Security Pro .. it will have logged nothing .. it sits there quietly .. destroying anything in the querystring that is not nice :)

Share this post


Link to post
Share on other sites

I can imagine McAfee getting some nasty rejections from USU5 :) .. I do take security seriously.

 

Good deal...great to know that security is built into USU5!

Share this post


Link to post
Share on other sites

Hello Robert,

 

First of all, I'd like to thank for such a great contribution. My OSC version is RC2a hosting on PHP 5.2.13 and MYSQL 5 via Hostgator. After I had installed the Seo URLS 5, I encountered 3 problems as follow:

 

Problem 1: It always appear in the Admin end.

 

Internal Server Error

The server encountered an internal error or misconfiguration and was unable to complete your request.

 

Please contact the server administrator, webmaster@jbikes.net and inform them of the time the error occurred, and anything you might have done that may have caused the error.

 

More information about this error may be available in the server error log.

 

Additionally, a 404 Not Found error was encountered while trying to use an ErrorDocument to handle the request.

 

Problem 2: I received the below errors in my email directly from my website.

 

Query Error reported on page /options_images_popup.php

MySQL error: 1054 - Unknown column 'pov.products_options_values_thumbnail' in 'field list'

 

select pov.products_options_values_name, pov.products_options_values_thumbnail from products_options_values as pov where pov.products_options_values_id = '0' and pov.language_id = '1'

 

Problem 3: "Fatal Errors" appears randomly in my catalog end.

 

Can you please help me look into this and see what can be done? Thank you for your great help!

 

Johnny.

Share this post


Link to post
Share on other sites

Hello Robert,

 

First of all, I'd like to thank for such a great contribution. My OSC version is RC2a hosting on PHP 5.2.13 and MYSQL 5 via Hostgator. After I had installed the Seo URLS 5, I encountered 3 problems as follow:

 

Problem 1: It always appear in the Admin end.

 

Internal Server Error

The server encountered an internal error or misconfiguration and was unable to complete your request.

 

Please contact the server administrator, webmaster@jbikes.net and inform them of the time the error occurred, and anything you might have done that may have caused the error.

 

More information about this error may be available in the server error log.

 

Additionally, a 404 Not Found error was encountered while trying to use an ErrorDocument to handle the request.

 

Problem 2: I received the below errors in my email directly from my website.

 

Query Error reported on page /options_images_popup.php

MySQL error: 1054 - Unknown column 'pov.products_options_values_thumbnail' in 'field list'

 

select pov.products_options_values_name, pov.products_options_values_thumbnail from products_options_values as pov where pov.products_options_values_id = '0' and pov.language_id = '1'

 

Problem 3: "Fatal Errors" appears randomly in my catalog end.

 

Can you please help me look into this and see what can be done? Thank you for your great help!

 

Johnny.

 

There are currently no known issues with USU5 ( other than caching of huge shops ).

 

Problem 1:

 

There is very little code added to admin certainly nothing that may cause an internal server error. Also the error is non descript which tells me nothing.

 

Problem 2:

There is no such code in USU5 looks like some sort of images pop up contribution, there is no such file options_images_popup.php in a standard osCommerce.

 

Problem 3:

Telling me there are "fatal errors" tells me nothing, it also doesn't suggest to me that USU5 is the problem. How many products has this shop got?

Share this post


Link to post
Share on other sites

There are currently no known issues with USU5 ( other than caching of huge shops ).

 

Problem 1:

 

There is very little code added to admin certainly nothing that may cause an internal server error. Also the error is non descript which tells me nothing.

 

Problem 2:

There is no such code in USU5 looks like some sort of images pop up contribution, there is no such file options_images_popup.php in a standard osCommerce.

 

Problem 3:

Telling me there are "fatal errors" tells me nothing, it also doesn't suggest to me that USU5 is the problem. How many products has this shop got?

 

Hello Robert,

 

Thank you for your prompt response! This is a live shop, and it has about 460 products. Any ideas why am I getting those errors? My live shop is www.JBikes.net. Thank you again.

Edited by j-variety

Share this post


Link to post
Share on other sites

Hi Robert,

 

first: thanks for this grat contribution!

 

is it possible to modify usu5 so that a redirect (301) is created if an incoming url has parameters in it?

 

e.g.

 

.../my-great-product-p-123.html?language=en

 

to be redirected to

 

.../my-great-product-p-123.html

 

this would be nice to prevent multiple indexing of one site due to all the parameter options.

 

regards

piou

Share this post


Link to post
Share on other sites

Hi Robert,

 

first: thanks for this grat contribution!

 

is it possible to modify usu5 so that a redirect (301) is created if an incoming url has parameters in it?

 

e.g.

 

.../my-great-product-p-123.html?language=en

 

to be redirected to

 

.../my-great-product-p-123.html

 

this would be nice to prevent multiple indexing of one site due to all the parameter options.

 

regards

piou

 

Hi

 

Redirects are not the correct way to deal with this .. the correct way is using canonical elements .. see KissMT or if you don't want to use that there is a dedicated canonical element contribution available .. the name escapes me.

Share this post


Link to post
Share on other sites

Hi and thanks for fast replying!

 

Redirects are not the correct way to deal with this .. the correct way is using canonical elements .. see KissMT or if you don't want to use that there is a dedicated canonical element contribution available .. the name escapes me.

 

The canonical is working fine and removes the parameters from the url. anyhow i find indexed parameter-urls at big G. thats why i thought of redirect.

 

could it be that it takes some time for this urls to vanish?

Share this post


Link to post
Share on other sites

Hi Robert,

Thanks for another great contriubtion. Your instructions are excellent. I've installed it and set it up to use traditional seo URLS. These seem to be working fine when products are accessed from the home page or category pages. I see URLs such as:

http://mysite/great-product.html

 

However, When I access products via the manufacturers list, extra information is being added to the end of the URL:

 

http://mysite/great-product.html?manufacturers_id=1

 

I believe this is not desirable as it would lead to duplicate content issues when the site is crawled by search engines.

 

Is this meant to be happening, or have I got a bug to track down?

 

Cheers

Peter

 

I was searching through the support thread to see if anybody else was asking for this, and only found the one post. Is there an option to not display the manu_id like there is for cPath in Admin? Using the canonical tag does prevent duplicate content issues, but in my opinion it also prevents pagerank from passing to the URL you want.

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

×