Jump to content
  • Checkout
  • Login
  • Get in touch

osCommerce

The e-commerce.

[Contribution] Ultimate SEO URLs - by Chemo


Guest

Recommended Posts

I'm having the problem of the selected attributes being stripped from the end of the url when selecting a product in the shopping cart and going back to the product info page - the attributes selected don't carry over. I've seen some discussion on this in the thread, but if the solution is there, I've missed it...

Brian Neuman

Link to comment
Share on other sites

  • Replies 1.9k
  • Created
  • Last Reply

Top Posters In This Topic

I'm having the  problem of the selected attributes being stripped from the end of the url when selecting a product in the shopping cart and going back to the product info page - the attributes selected don't carry over.  I've seen some discussion on this in the thread, but if the solution is there, I've missed it...

Why do you need the selected attributes to carry back to the product page? The important part is getting the attributes to the shopping cart...which is done correctly.

 

To my knowledge that is not standard behavior of the cart to begin with...

 

Bobby

Link to comment
Share on other sites

Why do you need the selected attributes to carry back to the product page?  The important part is getting the attributes to the shopping cart...which is done correctly.

 

To my knowledge that is not standard behavior of the cart to begin with...

 

Bobby

 

With the Ultimate SEO Url's disabled, the product info page retains the options a customer selected for his product when linking back from the cart. (I use the Option Type attribute and this may be a function included in it). The code for select box is here where it checks the cart variable:

 

default:
           //clr 030714 default is select list
           //clr 030714 reset selected_attribute variable
           $selected_attribute = false;
         $products_options_array = array();
         $products_options_query = tep_db_query("select pov.products_options_values_id, pov.products_options_values_name, pa.options_values_price, pa.price_prefix from " . TABLE_PRODUCTS_ATTRIBUTES . " pa, " . TABLE_PRODUCTS_OPTIONS_VALUES . " pov where pa.products_id = '" . (int)$HTTP_GET_VARS['products_id'] . "' and pa.options_id = '" . (int)$products_options_name['products_options_id'] . "' and pa.options_values_id = pov.products_options_values_id and pov.language_id = '" . (int)$languages_id . "'" . "order by pov.products_options_values_name");
         while ($products_options = tep_db_fetch_array($products_options_query)) {
           $products_options_array[] = array('id' => $products_options['products_options_values_id'], 'text' => $products_options['products_options_values_name']);
           if ($products_options['options_values_price'] != '0') {
             $products_options_array[sizeof($products_options_array)-1]['text'] .= ' (' . $products_options['price_prefix'] . $currencies->display_price($products_options['options_values_price'], tep_get_tax_rate($product_info['products_tax_class_id'])) .') ';
           }
         }

         if (isset($cart->contents[$HTTP_GET_VARS['products_id']]['attributes'][$products_options_name['products_options_id']])) {
           $selected_attribute = $cart->contents[$HTTP_GET_VARS['products_id']]['attributes'][$products_options_name['products_options_id']];
         } else {
           $selected_attribute = false;
         }

 

You're right about first-things-first - get the customer's selected options to the cart. My thought is this: My site has products with several options, many of them text for entering names, birthdates, etc. I am a customer and have added an item to my cart but notice that I misspelled a name and want to correct this. The only way to do that is start over and add a new item to the cart and then delete the old - this doesn't seem very customer friendly.

 

Note, I do realize that even if the attributes selected were carried back to the product info page, there is no way (that I'm aware of) for the customer to "Update" the product without doing the add to cart - this still gives them duplicate products in the cart that they will have to deal with...

Brian Neuman

Link to comment
Share on other sites

You know, I told myself not to come back here out of fear that Chemo may say something to me as he did.. But I got anxious.

 

How does 15 hours a day make me a bad programmer or bad at what I do? You think its 15 hours on 1-2 projects? No its not.

 

I'm sorry I'm not a complete mastermind with OSC and how its setup seeing as I haven't had to work with it all that often, so I come here to get some help and get shit on by the guy who made the contribution, thats very sweet of you, so yes, you were being a douche bag. Had you stopped after saying you yourself didn't have time to help look around then everything would have been fine, but you had to go further knowing absolutely NOTHING about me or what I do and act like I was bullshitting to get someone else to do work for me.. I don't work like that sorry. And no you take it a step further and say I have an inferiority complex because I responded to you by telling you what I thought of you based on your reply to my post.

 

Oh well, I guess you know me very well, and I am glad people like me push you to do this. Obviously someone has to do it, so more power to you.

Link to comment
Share on other sites

You know, I told myself not to come back here out of fear that Chemo may say something to me as he did..  But I got anxious.

 

How does 15 hours a day make me a bad programmer or bad at what I do?  You think its 15 hours on 1-2 projects?  No its not. 

 

I'm sorry I'm not a complete mastermind with OSC and how its setup seeing as I haven't had to work with it all that often, so I come here to get some help and get shit on by the guy who made the contribution, thats very sweet of you, so yes, you were being a douche bag.  Had you stopped after saying you yourself didn't have time to help look around then everything would have been fine, but you had to go further knowing absolutely NOTHING about me or what I do and act like I was bullshitting to get someone else to do work for me..  I don't work like that sorry.  And no you take it a step further and say I have an inferiority complex because I responded to you by telling you what I thought of you based on your reply to my post.

 

Oh well, I guess you know me very well, and I am glad people like me push you to do this.  Obviously someone has to do it, so more power to you.

Do you think you're going to make me feel bad? Listen, I come here day after day spending insane amounts of time supporting store owners and giving them free code. Why? Because I'm passionate about helping others. However, I have absolutely no time to entertain those that don't want to invest their time into researching their problems. The one thing that absolutely chaps my ass is someone that wants everything for free and on top of that for someone to do their work for them. So, I'll say it again: get off your ass and search this thread.

 

You contend that you are a professional programmer. The code is thoroughly commented and leaves nothing to imagination. The code reads like a damn manual. I tell you what is being done and why it is being done. What don't you understand? Why can't you understand it? I commented the code to read like a 1st grade tutorial. Where are you having issues understanding the code??? There is no way on Earth that a professional programmer would not be able to understand the code. I've had less than technical people add to the contribution just by reading it and some simple cut-n-paste. If they can do it with no more than 2 months of PHP experience why can't a professional PHP freelancer comprehend the most thoroughly commented code ever released???

 

You keep calling me a douche bag...and each time it reinforces my resolve to not offer you support. Getting help is a privilidge and NOT a God given right. I reserve that privilidge for those that don't tell me I have a tampon in my oversized vagina and those that don't call me a douche bag.

 

Have a nice day and I hope you work out the issues with your installation.

 

Bobby

Link to comment
Share on other sites

Hi bob,

 

on my site i get these warning sign bottom of page can you tell me how i can fix this problem, i have another site that have exactly samething which i don't have any problem but only this site shows these error messages

 

visit my site at pawzypet.com

 

TIA

 

Warning: fopen(/home/pawzypet/public_html//cache/_product_info.php_english_USD.cache): failed to open stream: Permission denied in /home/pawzypet/public_html/includes/classes/page_cache.php on line 258

Warning: fwrite(): supplied argument is not a valid stream resource in /home/pawzypet/public_html/includes/classes/page_cache.php on line 259

Warning: fclose(): supplied argument is not a valid stream resource in /home/pawzypet/public_html/includes/classes/page_cache.php on line 260

Edited by obiclock
Link to comment
Share on other sites

I'm having the  problem of the selected attributes being stripped from the end of the url when selecting a product in the shopping cart and going back to the product info page - the attributes selected don't carry over.  I've seen some discussion on this in the thread, but if the solution is there, I've missed it...

 

 

Do you have the redirect script installed?

 

If so try this ( I have only briefly tested and am tired so might be a muich better way of doing it)

 

Edit seo_redirect.php

 

Find:

function need_redirect(){
           $this->uri != $this->real_uri // it's already in SEO form
               ?    $this->need_redirect = false
               :    eregi("(cName|pName|mName|iName)", $this->uri) // is this a cName URL?
                       ?    SEO_URLS_TYPE != 'cName' // is cName enabled?
                           ?    $this->need_redirect = true // using Rewrite, redirect
                           :    $this->need_redirect = false // using cName, no redirect
                       :    eregi("(products_id|cPath|manufacturers_id|info_id)", $this->uri) // old style URL?
                           ?    $this->need_redirect = $this->is_validparameter()
                           :    $this->need_redirect = false;
       } # end function set_seopage

 

and replace with:

 

function need_redirect(){
 
 if (eregi("({|})", $this->uri)) { // no redirect if URL contains { } like from cart w/ attributes
 
    $this->need_redirect = false;
  
  }else{
 
  $this->uri != $this->real_uri // it's already in SEO form or from cart
               ?    $this->need_redirect = false
               :    eregi("(cName|pName|mName|iName)", $this->uri) // is this a cName URL?
                       ?    SEO_URLS_TYPE != 'cName' // is cName enabled?
                           ?    $this->need_redirect = true // using Rewrite, redirect
                           :    $this->need_redirect = false // using cName, no redirect
                       :    eregi("(products_id|cPath|manufacturers_id|info_id)", $this->uri) // old style URL?
                           ?    $this->need_redirect = $this->is_validparameter()
                           :    $this->need_redirect = false;
  } # end of back from cart
       } # end function set_seopage

 

Chris

osC Contributions I have published.

 

Note: Some I only provided minor changes, updates or additions!

Link to comment
Share on other sites

Do you have the redirect script installed?

 

If so try this ( I have only briefly tested and am tired so might be a muich better way of doing it)

 

Edit seo_redirect.php

 

Find:

function need_redirect(){
? ? ? ? ? ?$this->uri != $this->real_uri // it's already in SEO form
? ? ? ? ? ? ? ?? ? ?$this->need_redirect = false
? ? ? ? ? ? ? ?: ? ?eregi("(cName|pName|mName|iName)", $this->uri) // is this a cName URL?
? ? ? ? ? ? ? ? ? ? ? ?? ? ?SEO_URLS_TYPE != 'cName' // is cName enabled?
? ? ? ? ? ? ? ? ? ? ? ? ? ?? ? ?$this->need_redirect = true // using Rewrite, redirect
? ? ? ? ? ? ? ? ? ? ? ? ? ?: ? ?$this->need_redirect = false // using cName, no redirect
? ? ? ? ? ? ? ? ? ? ? ?: ? ?eregi("(products_id|cPath|manufacturers_id|info_id)", $this->uri) // old style URL?
? ? ? ? ? ? ? ? ? ? ? ? ? ?? ? ?$this->need_redirect = $this->is_validparameter()
? ? ? ? ? ? ? ? ? ? ? ? ? ?: ? ?$this->need_redirect = false;
? ? ? ?} # end function set_seopage

 

and replace with:

 

function need_redirect(){
?
?if (eregi("({|})", $this->uri)) { // no redirect if URL contains { } like from cart w/ attributes
?
? ? $this->need_redirect = false;
? 
? }else{
?
? $this->uri != $this->real_uri // it's already in SEO form or from cart
? ? ? ? ? ? ? ?? ? ?$this->need_redirect = false
? ? ? ? ? ? ? ?: ? ?eregi("(cName|pName|mName|iName)", $this->uri) // is this a cName URL?
? ? ? ? ? ? ? ? ? ? ? ?? ? ?SEO_URLS_TYPE != 'cName' // is cName enabled?
? ? ? ? ? ? ? ? ? ? ? ? ? ?? ? ?$this->need_redirect = true // using Rewrite, redirect
? ? ? ? ? ? ? ? ? ? ? ? ? ?: ? ?$this->need_redirect = false // using cName, no redirect
? ? ? ? ? ? ? ? ? ? ? ?: ? ?eregi("(products_id|cPath|manufacturers_id|info_id)", $this->uri) // old style URL?
? ? ? ? ? ? ? ? ? ? ? ? ? ?? ? ?$this->need_redirect = $this->is_validparameter()
? ? ? ? ? ? ? ? ? ? ? ? ? ?: ? ?$this->need_redirect = false;
? } # end of back from cart
? ? ? ?} # end function set_seopage

 

Chris

 

Well, the attribute information remains appended to the url, but for some reason, the product info still has all default options. Worse than that, the session is lost and the cart is emptied (and, if logged on, it logs you out). I'll leave the updated code in place on the test site if you want to see it in action, so to speak. It's located here:

 

www.honeybeadjewelry.com/catalogtest

 

I'll fiddle with it some more tonight...

Edited by bdneuman

Brian Neuman

Link to comment
Share on other sites

When I tried it, it is still redirecting.

 

If I were you I would turn of all SEO URL's and try with them off just to verify they work without.

 

Chris

 

I did and they do...with SEO disabled, the attributes get carried over from cart to product_info...

 

It's actually not rewriting the url. When I click the produc from the cart, the link looks like this:

 

http://www.honeybeadjewelry.com/catalogtest/product_info.php?products_id=4{1}37{txt_2}9%20inches{3}117{4}41?osCsid=900ebc416edf6572fc0abe01c3c401d4

 

But, the attributes selected are still default and the session is reset (I get a new osCsid on the next click from product_info).

Brian Neuman

Link to comment
Share on other sites

Well I can see a couple things wrong wit hthe URL:

 

%20 indicates a space

?osCsid should be &osCsid

 

Okay - Where is the ? defined - I'll change it to &... The space will be a problem as this is customer entered text options...

 

I just realized that the issue of the session being lost when clicking a link from the cart happens in my live site, too, when browsing with cookies disabled...maybe fixing the ? to & will take care of this? (i don't have your modified code to seo_redirect on the live site).

Brian Neuman

Link to comment
Share on other sites

Okay - Where is the ? defined - I'll change it to &...  The space will be a problem as this is customer entered text options...

 

I just realized that the issue of the session being lost when clicking a link from the cart happens in my live site, too, when browsing with cookies disabled...maybe fixing the ? to & will take care of this?  (i don't have your modified code to seo_redirect on the live site).

 

 

Well %20 for TA should be ok... but I would bet your cookie configurtion is wrong and that might be causing the ? / & issue......

 

 

Might want to look in to that first... there are several posts in this thread for fixing those issues.

 

Chris

osC Contributions I have published.

 

Note: Some I only provided minor changes, updates or additions!

Link to comment
Share on other sites

Ok, I dont really want to get involved, but.......

 

What exactly is a douche bag?????

 

I think it may be best if I point out a couple of things here,

 

Posts on this forum by Chemo (Bobby) :- 2000+

 

Posts by Tehbizness (Jacob) :- 7 (At leasts three of which are purely relating to something called a douche bag and variously sized vaginas!) :D

 

Time for a little respect to the more experienced dont you think??

 

Take a look at this contribution..... First made available in January and already up to 46 pages long tells you that it is important. AND, no, it is not because it is difficult to implement, on the contrary, it is one of the quickest and easiest to install. Its just that novices, like myself, have had to ask a few questions to which we have recieved very quick replies, and that it has evolved greatly over a short period of time, thanks again to Bobby, due to other users input.

 

As is mentioned everywhere on this forum, osC is community driven, its free for f*cks sake and we owe all the contributors a great deal.

 

With this in mind, I appreciate how hard you may be working... I am a shopkeeper trying to set myself up online in my spare time, generally with a couple of hours after 10pm when my lad has gone to bed.... Read some more threads, there are plenty of others doing the same, BUT..... If you have not got the time to read the 46 pages of this thread in full, spare a thought for Bobby before you get into a slanging match..... He has posted around half of this thread. This means he has not only read all of it, he has debugged many peoples sites (bugs not related to this contrib) and modified this contribution 3 or 4 times already!

 

Sure, you are entitled to post "please help" threads on the off chance, I have done it myself but if you get an answer count yourself lucky! You know that with thousands of people using osC your question has more than likely been answered before - you just got to spend a few minutes finding that answer.

 

Right,

 

Deep Breaths, Im calming down,

 

Finally, if you have made it this far, who here has not already found that this contribution is increasing their search engine statistics? AFAICS it is the single most (quickly implented) contribution to higher search engine placings and therefore more traffic.

 

With this in mind, how many have scrolled down the instructions to Bobbys Paypal donation box? I know this may sound like a plug, but think about your incoming orders.... Whos responsible? Please send him a small percentage. Not only does he work tirelessly answering your problems, but he also passes some of his donations onto the osC development team. Surely this will benefit us all in the end.

 

Ok, I am off to get my coat now, :thumbsup:

 

Cheers,

Rich

Only Dead Fish Go With The Flow......

Link to comment
Share on other sites

Well %20 for TA should be ok... but I would bet your cookie configurtion is wrong and that might be causing the ? / & issue......

Might want to look in to that first... there are several posts in this thread for fixing those issues.

 

Chris

 

I think the issue is definitely with the Option Type Feature contrib. If i add a product that has no attributes, the session does NOT get dumped when clicking the product from the cart - it only happens when you click a product that has attributes assigned. This only happens with cookies disabled, btw. I'm wondering about this function in general.php:

 

// Return a product ID with attributes
 function tep_get_uprid($prid, $params) {
   $uprid = $prid;
   if ( (is_array($params)) && (!strstr($prid, '{')) ) {
     while (list($option, $value) = each($params)) {
       //CLR 030714 Add processing around $value. This is needed for text attributes.
       $uprid = $uprid . '{' . $option . '}' . htmlspecialchars(stripslashes(trim($value)), ENT_QUOTES);
     }
   //CLR 030228 Add else stmt to process product ids passed in by other routines.
   } else {
     $uprid = htmlspecialchars(stripslashes($uprid), ENT_QUOTES);
   }

   return $uprid;
 }

////
// Return a product ID from a product ID with attributes
 function tep_get_prid($uprid) {
   $pieces = explode('{', $uprid);

   return $pieces[0];
 }

 

Would this have something to do with it?

 

Here is my configure.php and i store session id's in mysql:

 

// Define the webserver and path parameters
// * DIR_FS_* = Filesystem directories (local/physical)
// * DIR_WS_* = Webserver directories (virtual/URL)
 define('HTTP_SERVER', 'http://www.honeybeadjewelry.com'); // eg, http://localhost - should not be empty for productive servers
 define('HTTPS_SERVER', ''); // eg, https://localhost - should not be empty for productive servers
 define('ENABLE_SSL', false); // secure webserver for checkout procedure?
 define('HTTP_COOKIE_DOMAIN', '..honeybeadjewelry.com');
 define('HTTPS_COOKIE_DOMAIN', '');
 define('HTTP_COOKIE_PATH', '/catalogtest/');
 define('HTTPS_COOKIE_PATH', '');

 

BTW, I can't figure out your comment about the & versus the ? in the url as a separator for the osCid. I noticed on Chemo's test site (www.mesoimpact.com) that the separator is a '?' as well...

 

Thanks again for the help!

Brian Neuman

Link to comment
Share on other sites

richard, I think Chemo may have misread my reply to his post, I wasn't calling him a douche bag again, simply revisiting the previous post of mine. I know how hard it is to make contributions, as I have done that as well for zen-cart in the past.

 

I even told him more power to him for being able to make all of the contributions he has made, someone has too, so he provides a good service :).. I had tried to PM him to explain what I did in my first "paragraph" but I'm not sure if it sent.

 

I was trying to keep the rest of this off of the forums so others didn't have to read it, but when you posted I felt obliged to respond and say it anyway.

Link to comment
Share on other sites

I think the issue is definitely with the Option Type Feature contrib.  If i add a product that has no attributes, the session does NOT get dumped when clicking the product from the cart - it only happens when you click a product that has attributes assigned.  This only happens with cookies disabled, btw.  I'm wondering about this function in general.php:

 

// Return a product ID with attributes
 function tep_get_uprid($prid, $params) {
   $uprid = $prid;
   if ( (is_array($params)) && (!strstr($prid, '{')) ) {
     while (list($option, $value) = each($params)) {
       //CLR 030714 Add processing around $value. This is needed for text attributes.
       $uprid = $uprid . '{' . $option . '}' . htmlspecialchars(stripslashes(trim($value)), ENT_QUOTES);
     }
   //CLR 030228 Add else stmt to process product ids passed in by other routines.
   } else {
     $uprid = htmlspecialchars(stripslashes($uprid), ENT_QUOTES);
   }

   return $uprid;
 }

////
// Return a product ID from a product ID with attributes
 function tep_get_prid($uprid) {
   $pieces = explode('{', $uprid);

   return $pieces[0];
 }

 

Would this have something to do with it?

 

Here is my configure.php and i store session id's in mysql:

 

// Define the webserver and path parameters
// * DIR_FS_* = Filesystem directories (local/physical)
// * DIR_WS_* = Webserver directories (virtual/URL)
 define('HTTP_SERVER', 'http://www.honeybeadjewelry.com'); // eg, http://localhost - should not be empty for productive servers
 define('HTTPS_SERVER', ''); // eg, https://localhost - should not be empty for productive servers
 define('ENABLE_SSL', false); // secure webserver for checkout procedure?
 define('HTTP_COOKIE_DOMAIN', '..honeybeadjewelry.com');
 define('HTTPS_COOKIE_DOMAIN', '');
 define('HTTP_COOKIE_PATH', '/catalogtest/');
 define('HTTPS_COOKIE_PATH', '');

 

BTW, I can't figure out your comment about the & versus the ? in the url as a separator for the osCid.  I noticed on Chemo's test site (www.mesoimpact.com) that the separator is a '?' as well...

 

Thanks again for the help!

 

Remove a period:

 

define('HTTP_COOKIE_DOMAIN', '..honeybeadjewelry.com');

 

 

-----

 

As far as ? v & ?... There should only be one ? in a URL not two....

 

As far as examples...

 

After you add items to the cart you should see the attribute values in te URL. If you have the resdirect script in with our the recent fix I did you will not be able to back out out of it.

 

The URL: http://mesoimpact.com/product_info.php?products_id=1{4}1{3}5 wil be redirected to: http://mesoimpact.com/matrox-g200-mms-p-1.html.

 

But if you have added text area and/or other attributes optiosn you might have to tweak them to get them to operate properly.

osC Contributions I have published.

 

Note: Some I only provided minor changes, updates or additions!

Link to comment
Share on other sites

Remove a period:

 

define('HTTP_COOKIE_DOMAIN', '..honeybeadjewelry.com');

-----

 

As far as ? v & ?...? There should only be one ? in a URL not two....

 

As far as examples...

 

After you add items to the cart you should see the attribute values in te URL.? If you have the resdirect script in with our the recent fix I did you will not be able to back out out of it.

 

The URL: http://mesoimpact.com/product_info.php?products_id=1{4}1{3}5 wil be redirected to: http://mesoimpact.com/matrox-g200-mms-p-1.html.

 

But if you have added text area and/or other attributes optiosn you might have to tweak them to get them to operate properly.

 

I think you've nailed it - when I browse Chemo's site with cookies DISABLED in IE, his URL's do NOT have the osCid appended. On my site they do - that's why I get the extra '?'. This is why products with no attributes redirect without dumping the session and cart.

 

I thought the normal behavior was for the osCsid to remain if cookies were disabled?

Edited by bdneuman

Brian Neuman

Link to comment
Share on other sites

I think you've nailed it - when I browse Chemo's site with cookies DISABLED in IE, his URL's do NOT have the osCid appended.  On my site they do - that's why I get the extra '?'.  This is why products with no attributes redirect without dumping the session and cart.

 

I thought the normal behavior was for the osCsid to remain if cookies were disabled?

 

Wait - I forgot to restart the browser after disabling cookies - mesoimpact.com functions exactly like my site - cart/session get dumped when linking back to a product. The link from the cart looks like this, same as mine:

 

http://mesoimpact.com/product_info.php?products_id=2{4}3{3}6?osCsid=58772af7735dca73151256d765b45b3f

 

But hey, everybody likes cookies now days, right?

Brian Neuman

Link to comment
Share on other sites

If yo have cookies disabled in your browser you will have a SID in the URL all the time.? There is no where for it to store it....

 

 

I got that - this is where the problem lies - when cookies are disabled, any product in the cart that has attributes will have two ?'s in the URL.

 

I think I may have it - I just don't know how to fix it.

 

With SEO URL's ENABLED, Cookies DISABLED, link from cart looks like:

 

http://www.honeybeadjewelry.com/catalogtest/product_info.php?
products_id=62{3}158{txt_22}355?osCsid=e068c7c0d02f0c843fd44e26b056edf5

 

With SEO URL's DISABLED, Cookies DISABLED, link from cart looks like:

 

http://www.honeybeadjewelry.com/catalogtest/product_info.php?
products_id=62{3}158{txt_22}355&osCsid=34955cc0c5e3fe5d156b95c10a8a294f

 

Do you see it? The separator between the attrib's and the osCsid changes from & to ? How do I correct this?

Edited by bdneuman

Brian Neuman

Link to comment
Share on other sites

http://www.honeybeadjewelry.com/catalogtest/product_info.php?
products_id=62{3}158{txt_22}355&osCsid=34955cc0c5e3fe5d156b95c10a8a294f

 

Do you see it?  The separator between the attrib's and the osCsid changes from & to ?  How do I correct this?

Chris knows the answer and we've tested it on at least 2 sites and is verified to correct the issue described with both cookies enabled and disabled.

 

I'll leave it to Chris to post the fix since it was him that found it and merely wanted my input as to his suggested correction. I agree with the method he chose and should maintain the coding standard of the contribution.

 

Kudos to Chris...your coding skills are getting to be some of the best I've come across on these forums in a long time.

 

Bobby

Link to comment
Share on other sites

OK this should fix your problem, if not then you have another issue :) but this is the fix to SEO URL's for this issue....

 

 

Edit /includes/function/html_output.php....

 

Find:

 

 

$separator = ( tep_not_null($params_stripped) ? '&' : '?' );

 

and replace it with:

 

$separator = ( tep_not_null($params_stripped) || $seo === false ? '&' : '?' );

 

I cant take the credit for this I just pointed out the line to Bobby and what I thought needed to be done but I left it to him think about how he wanted to cancel the switch...

 

C-

Edited by clarocque

osC Contributions I have published.

 

Note: Some I only provided minor changes, updates or additions!

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Unfortunately, your content contains terms that we do not allow. Please edit your content to remove the highlighted words below.
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...