Jump to content
  • Checkout
  • Login
  • Get in touch

osCommerce

The e-commerce.

[CONTRIBUTION] Ultimate SEO URLs v2.1 - by Chemo


Recommended Posts

I don't, it was an example and basically to test the functions out.... but going back to my earlier post - will all previous (for example) item URL's that lead back to the same product info page be cached by search engines? if so, what does this do to rankings?

 

The question may sound trivial and pointless but I would appreciate an answer as I need to know what it does to search engine rankings if all search engine cached pages lead back to the same page.

 

If my matrox graphic card is called matrox-g200-one-p-1.html and few days later it is called matrox-g200-two-p-1.html and every so often the name is changed - does this have a negative effect on search engines? if a search engine page opened would it list all or some the names that lead back to the same product page?

 

many thanks

 

se's will index what you give them so if today the url of product X is called matrox-g200-one-p-1.html and tomorrow matrox-g200-two-p-1.html then they both get indexed ofcourse as they are both different url's.

 

That they internally translate to the same content page is not the se's concern.

 

So if you keep changing product names then yes, you will have duplicate pages and they will remain duplicate forever as the se will revisit and both url's will result in a nice valid page.

The same as urls

/index.php?cPath=12 and

/index.php?cPath=12&page=1 and

/index.php?cPath=12&language=en and

/index.php?cPath=12&page=1&language=en

etc.

 

what the exact consequences are wrt ranking is anybodies guess but the se's themselves.

So to be on the safe side, reduce duplicate content by removing any unnecessary parameters in url's, when using seo url's don't change your product/category names all the time and ofcourse, add a lot of random content to your pages so that basically NO page content is exactly the same, ever.

Treasurer MFC

Link to comment
Share on other sites

I don't, it was an example and basically to test the functions out.... but going back to my earlier post - will all previous (for example) item URL's that lead back to the same product info page be cached by search engines? if so, what does this do to rankings?

 

The question may sound trivial and pointless but I would appreciate an answer as I need to know what it does to search engine rankings if all search engine cached pages lead back to the same page.

 

If my matrox graphic card is called matrox-g200-one-p-1.html and few days later it is called matrox-g200-two-p-1.html and every so often the name is changed - does this have a negative effect on search engines? if a search engine page opened would it list all or some the names that lead back to the same product page?

 

many thanks

 

To answer your question yes, this would be bad. The main reason is that if you had any search engine rankings on matrox-g200-one-p-1.html and you changed the name the next time your site is scanned you would lose your rankings to that URL as it would not exist and you basically have to start over with matrox-g200-two-p-1.html. Remember rankings are a function of time, so the longer you have a valid URL the better, if you keep changing them then you lose.

 

- Roger

Link to comment
Share on other sites

To answer your question yes, this would be bad. The main reason is that if you had any search engine rankings on matrox-g200-one-p-1.html and you changed the name the next time your site is scanned you would lose your rankings to that URL as it would not exist and you basically have to start over with matrox-g200-two-p-1.html. Remember rankings are a function of time, so the longer you have a valid URL the better, if you keep changing them then you lose.

 

- Roger

 

you are missing the point.

 

matrox-g200-one-p-1.html exists and will continue to exist alongside matrox-g200-two-p-1.html and se's will continue to find both pages and index both pages. The point was that you now have 2 different url's which point to the very same page.

Treasurer MFC

Link to comment
Share on other sites

se's will index what you give them so if today the url of product X is called matrox-g200-one-p-1.html and tomorrow matrox-g200-two-p-1.html then they both get indexed ofcourse as they are both different url's.

 

That they internally translate to the same content page is not the se's concern.

 

So if you keep changing product names then yes, you will have duplicate pages and they will remain duplicate forever as the se will revisit and both url's will result in a nice valid page.

The same as urls

/index.php?cPath=12 and

/index.php?cPath=12&page=1 and

/index.php?cPath=12&language=en and

/index.php?cPath=12&page=1&language=en

etc.

 

what the exact consequences are wrt ranking is anybodies guess but the se's themselves.

So to be on the safe side, reduce duplicate content by removing any unnecessary parameters in url's, when using seo url's don't change your product/category names all the time and ofcourse, add a lot of random content to your pages so that basically NO page content is exactly the same, ever.

 

this is also the reason as to why you should add a 404 header in the paging class for when pages are requested which are no longer valid.

 

say you used to have 3 pages of a product listing.

the se's will have indexed

/index.php?cPath=1

/index.php?cPath=1&page=1

/index.php?cPath=1&page=2

/index.php?cPath=1&page=3

 

but now you only have 2 pages left

If the se comes back to get /index.php?cPath=1&page=3 he should get a 404, but not with osc, osc simply gives the content of page 2. So now the se has /index.php?cPath=1&page=2 and /index.php?cPath=1&page=3 and they both contain the same content, the content of /index.php?cPath=1&page=2

 

Mind you,

 

/index.php?cPath=1

/index.php?cPath=1&page=1

 

have the same content by definition.

Treasurer MFC

Link to comment
Share on other sites

Hi all.

 

Before I installed the Ult SEO URLs on my site, I created a subfolder and installed a second (test) version of oscommerce on the same domain to make sure I get the (if any) bugs out before I install it on my live shop. I installed it then only on the test version. (I installed version: Ultimate SEO URLs - 2.1d with optional Admin settable Product and Category URLs posted by yesudo on 29 Nov 2006)

I can't seem to get outta the gate though because (it seems like) I am stuck trying figure out how to config the htaccess file. The directory is /TEST/catalog/ I have put it in the file like that as well as any and all of the following ways:

/test//catalog/

/my domain name/test//catalog/

/my domain name/test/catalog/

/catalog/

 

No matter what I get the page (in mozilla)

 

Bad Request

Your browser sent a request that this server could not understand.

 

WHAT am I doing wrong here? I looked at the url when this error page shows and the url looks great! No ? marks....nice. This error page shows when I click on a product.

 

THANK YOU SO MUCH in advance!!!!

 

 

Um....help? Feeling like a redheaded step child o'er here :-"

Link to comment
Share on other sites

Um....help? Feeling like a redheaded step child o'er here :-"

 

 

RewriteBase /TEST/catalog/

Edited by thunderace
Link to comment
Share on other sites

I did that. See my original post. No matter which way I did it, it still gave me that error. :huh:

 

I figured it out! What had happened that was different for me was that I had a higher directory, TEST.

 

So it went mydomain/TEST//catalog/

 

I had put the htaccess file in the catalog folder as per instructions, but it NEEDED to be in the TEST folder since TEST was inadvertantly the highest directory now.

 

Now, that that is working I see I have a prob with the code for the top.php...but I will reinstall and see if human error is mine here. Thanks for the effort! LOVE this site! :D

Link to comment
Share on other sites

Warning: main(includes/classes/seo.class.php): failed to open stream: No such file or directory in /mnt/w0508/d08/s36/b026c191/www/12stepcds.com/catalog/includes/application_top.php on line 289

 

Warning: main(): Failed opening 'includes/classes/seo.class.php' for inclusion (include_path='.:/usr/local/nf/lib/php') in /mnt/w0508/d08/s36/b026c191/www/12stepcds.com/catalog/includes/application_top.php on line 289

 

Fatal error: Cannot instantiate non-existent class: seo_url in /mnt/w0508/d08/s36/b026c191/www/12stepcds.com/catalog/includes/application_top.php on line 292

 

 

Help! This is what I get now when I click on a product link! I am using the latest version installed.

I also just ran through this contribution support string and I cannot find an answer. Seems many folks had similar probs without reply. I also REINSTALLED, so I am CLUELESS. Please help. Greatly appreciated! :'(

Link to comment
Share on other sites

you are missing the point.

 

matrox-g200-one-p-1.html exists and will continue to exist alongside matrox-g200-two-p-1.html and se's will continue to find both pages and index both pages. The point was that you now have 2 different url's which point to the very same page.

 

potentially you could fix this ofcourse.

I am not sure if the latest versions already do this, I don't have the latest versions, but when a page request comes in you could generate a new seo url based on the requests parameters and then compare if the incoming seo url is the same. If it is not, you give a 301 redirect to the current seo url.

Treasurer MFC

Link to comment
Share on other sites

Warning: main(includes/classes/seo.class.php): failed to open stream: No such file or directory in /mnt/w0508/d08/s36/b026c191/www/12stepcds.com/catalog/includes/application_top.php on line 289

 

Warning: main(): Failed opening 'includes/classes/seo.class.php' for inclusion (include_path='.:/usr/local/nf/lib/php') in /mnt/w0508/d08/s36/b026c191/www/12stepcds.com/catalog/includes/application_top.php on line 289

 

Fatal error: Cannot instantiate non-existent class: seo_url in /mnt/w0508/d08/s36/b026c191/www/12stepcds.com/catalog/includes/application_top.php on line 292

Help! This is what I get now when I click on a product link! I am using the latest version installed.

I also just ran through this contribution support string and I cannot find an answer. Seems many folks had similar probs without reply. I also REINSTALLED, so I am CLUELESS. Please help. Greatly appreciated! :'(

 

 

Ok...the ONLY thing I can think of is that again, it is calling for the wrong folder.....because it is supposed to call for test/catalog not just catalog. Hmmmm. Maybe this function cannot be tested this way. I am going to try ANOTHER install but with ANOTHER domain so it can be at the catalog folder directory level. (Feel like I am talking to myself now....well, eh, it IS late. :blush:

Link to comment
Share on other sites

potentially you could fix this ofcourse.

I am not sure if the latest versions already do this, I don't have the latest versions, but when a page request comes in you could generate a new seo url based on the requests parameters and then compare if the incoming seo url is the same. If it is not, you give a 301 redirect to the current seo url.

 

like (could without doubt be coded more clean):

 

if (basename($_SERVER['SCRIPT_NAME']) == 'product_info.php') {

$incoming_url = substr($_SERVER['REQUEST_URI'],1,strpos($_SERVER['REQUEST_URI'],'.html')-1);

$valid_url = substr(str_replace(HTTP_SERVER,'',tep_href_link(basename($_SERVER['SCRIPT_NAME']), 'products_id='.$_GET['products_id'])),1,strpos(str_replace(HTTP_SERVER,'',tep_href_link(basename($_SERVER['SCRIPT_NAME']), 'cPath='.$_GET['cPath'])),'.html')-1);

if ($incoming_url != $valid_url) {

$location = tep_href_link(basename($_SERVER['SCRIPT_NAME']),'products_id='.$_GET['products_id'].tep_get_all_get_params(array('products_id')), $request_type);

header("HTTP/1.0 301 Moved Permanently");

header("Location: $location");

}

}

if (basename($_SERVER['SCRIPT_NAME']) == 'index.php') {

if (isset($_GET['cPath'])) {

$incoming_url = substr($_SERVER['REQUEST_URI'],1,strpos($_SERVER['REQUEST_URI'],'.html')-1);

$valid_url = substr(str_replace(HTTP_SERVER,'',tep_href_link(basename($_SERVER['SCRIPT_NAME']), 'cPath='.$_GET['cPath'])),1,strpos(str_replace(HTTP_SERVER,'',tep_href_link(basename($_SERVER['SCRIPT_NAME']), 'cPath='.$_GET['cPath'])),'.html')-1);

if ($incoming_url != $valid_url) {

$location = tep_href_link(basename($_SERVER['SCRIPT_NAME']),'cPath='.$_GET['cPath']. tep_get_all_get_params(array('cPath')), $request_type);

header("HTTP/1.0 301 Moved Permanently");

header("Location: $location");

}

}

}

Treasurer MFC

Link to comment
Share on other sites

like (could without doubt be coded more clean):

 

if (basename($_SERVER['SCRIPT_NAME']) == 'product_info.php') {

$incoming_url = substr($_SERVER['REQUEST_URI'],1,strpos($_SERVER['REQUEST_URI'],'.html')-1);

$valid_url = substr(str_replace(HTTP_SERVER,'',tep_href_link(basename($_SERVER['SCRIPT_NAME']), 'products_id='.$_GET['products_id'])),1,strpos(str_replace(HTTP_SERVER,'',tep_href_link(basename($_SERVER['SCRIPT_NAME']), 'cPath='.$_GET['cPath'])),'.html')-1);

if ($incoming_url != $valid_url) {

$location = tep_href_link(basename($_SERVER['SCRIPT_NAME']),'products_id='.$_GET['products_id'].tep_get_all_get_params(array('products_id')), $request_type);

header("HTTP/1.0 301 Moved Permanently");

header("Location: $location");

}

}

if (basename($_SERVER['SCRIPT_NAME']) == 'index.php') {

if (isset($_GET['cPath'])) {

$incoming_url = substr($_SERVER['REQUEST_URI'],1,strpos($_SERVER['REQUEST_URI'],'.html')-1);

$valid_url = substr(str_replace(HTTP_SERVER,'',tep_href_link(basename($_SERVER['SCRIPT_NAME']), 'cPath='.$_GET['cPath'])),1,strpos(str_replace(HTTP_SERVER,'',tep_href_link(basename($_SERVER['SCRIPT_NAME']), 'cPath='.$_GET['cPath'])),'.html')-1);

if ($incoming_url != $valid_url) {

$location = tep_href_link(basename($_SERVER['SCRIPT_NAME']),'cPath='.$_GET['cPath']. tep_get_all_get_params(array('cPath')), $request_type);

header("HTTP/1.0 301 Moved Permanently");

header("Location: $location");

}

}

}

 

 

Correction here:

 

if (basename($_SERVER['SCRIPT_NAME']) == 'product_info.php') {

$incoming_url = $_SERVER['REQUEST_URI'];

$compare1 = substr($incoming_url,1,strpos($incoming_url,'.html')-1);

$compare2 = substr(str_replace(HTTP_SERVER,'',tep_href_link(basename($_SERVER['SCRIPT_NAME']), 'products_id='.$_GET['products_id'])),1,strpos(str_replace(HTTP_SERVER,'',tep_href_link(basename($_SERVER['SCRIPT_NAME']), 'products_id='.$_GET['products_id'])),'.html')-1);

if ($compare1 != $compare2) {

$location = tep_href_link(basename($_SERVER['SCRIPT_NAME']),'products_id='.$_GET['products_id'].tep_get_all_get_params(array('products_id')), $request_type);

header("HTTP/1.0 301 Moved Permanently");

header("Location: $location");

}

}

if (basename($_SERVER['SCRIPT_NAME']) == 'index.php') {

if (isset($_GET['cPath'])) {

$incoming_url = $_SERVER['REQUEST_URI'];

$compare1 = substr($incoming_url,1,strpos($incoming_url,'.html')-1);

$compare2 = substr(str_replace(HTTP_SERVER,'',tep_href_link(basename($_SERVER['SCRIPT_NAME']), 'cPath='.$_GET['cPath'])),1,strpos(str_replace(HTTP_SERVER,'',tep_href_link(basename($_SERVER['SCRIPT_NAME']), 'cPath='.$_GET['cPath'])),'.html')-1);

if ($compare1 != $compare2) {

$location = tep_href_link(basename($_SERVER['SCRIPT_NAME']),'cPath='.$_GET['cPath']. tep_get_all_get_params(array('cPath')), $request_type);

header("HTTP/1.0 301 Moved Permanently");

header("Location: $location");

}

}

}

 

you can see (on my site) if you put this in application top after the seo class is included that you can edit the url in the address bar before the rewrite key all you like, it will always revert back to the valid one with a 301 redirect.

Treasurer MFC

Link to comment
Share on other sites

I nstall Ultimate SEO URLs it work perfect in English but I have problem in Bulgarian

 

Warning: Cannot modify header information - headers already sent by (output started at ....../catalog/includes/languages/bulgarian.php:2) in ...../catalog/includes/classes/seo.class.php on line 1951

Warning: Cannot modify header information - headers already sent by (output started at ....../catalog/includes/languages/bulgarian.php:2) in ......../catalog/includes/classes/seo.class.php on line 1952

and address in Bulgarian is:

.....catalog/e%C3%A4%C3%AD%C3%AE%C.....D-e%C3%AB%C3%B5%C3%AE%C3%A2%C3%AE-p-222.html

may I make translation from Cyrillic alphabet to Roman alphabet on .htaccess and how?

 

Please help me

Link to comment
Share on other sites

I nstall Ultimate SEO URLs it work perfect in English but I have problem in Bulgarian

 

Warning: Cannot modify header information - headers already sent by (output started at ....../catalog/includes/languages/bulgarian.php:2) in ...../catalog/includes/classes/seo.class.php on line 1951

Warning: Cannot modify header information - headers already sent by (output started at ....../catalog/includes/languages/bulgarian.php:2) in ......../catalog/includes/classes/seo.class.php on line 1952

and address in Bulgarian is:

.....catalog/e%C3%A4%C3%AD%C3%AE%C.....D-e%C3%AB%C3%B5%C3%AE%C3%A2%C3%AE-p-222.html

may I make translation from Cyrillic alphabet to Roman alphabet on .htaccess and how?

 

Please help me

 

I think this has more to do with your language file than your htaccess file.

Treasurer MFC

Link to comment
Share on other sites

Does anyone know how to add additional SEO.HTML pages to the stardard configuration apart from the ones already supported?

1) Product Pages

2) Category Pages

3) Article Topics

4) Article Info

5) Information Pages

6) Product Reviews

7) Product Review Info

8) Popup Images

 

 

I have for example:

extra_info_pages.php

faq.php

specials.php

all_products.php

 

etc that I would also like to include.

 

Thanks

Link to comment
Share on other sites

Does anyone know how to add additional SEO.HTML pages to the stardard configuration apart from the ones already supported?

1) Product Pages

2) Category Pages

3) Article Topics

4) Article Info

5) Information Pages

6) Product Reviews

7) Product Review Info

8) Popup Images

I have for example:

extra_info_pages.php

faq.php

specials.php

all_products.php

 

etc that I would also like to include.

 

Thanks

 

those are already semi-static pages in that they do not take parameters so there is no need for that.

just rename all_products.php to All-of-my-products-are-to-be-seen-here.html

Treasurer MFC

Link to comment
Share on other sites

The page isn't redirecting properly

 

Firefox has detected that the server is redirecting the request for this address in a way that will never complete.

 

 

* This problem can sometimes be caused by disabling or refusing to accept

cookies.

 

 

********************************************************************************

**********

Note: Testing this contribution in a subfolder DOES NOT work (at least it didn't on numerous tries on my part). Instead, I used another domain that is not live for a test.

 

Problem: The load is taking forever and then I get the above error message.

 

PLEASE assist! Amanda? Anyone? :sweating:

Link to comment
Share on other sites

The page isn't redirecting properly

 

Firefox has detected that the server is redirecting the request for this address in a way that will never complete.

 

 

* This problem can sometimes be caused by disabling or refusing to accept

cookies.

********************************************************************************

**********

Note: Testing this contribution in a subfolder DOES NOT work (at least it didn't on numerous tries on my part). Instead, I used another domain that is not live for a test.

 

Problem: The load is taking forever and then I get the above error message.

 

PLEASE assist! Amanda? Anyone? :sweating:

that error generally happens if you redirect to the same page, i.e. in an endless loop.

Treasurer MFC

Link to comment
Share on other sites

I installed the latest upload (Nov 30, 2006 contribution I think) and it's working fine. I did, however, have some initial problems (i.e. buy now feature not working properly), but I've since got it all sorted. You can read my posts about the prob and the solution here:

 

http://www.oscommerce.com/forums/index.php?sho...166&st=1220

 

Peace.

 

Hi Justin,

 

Would you please let me know what did you do exactly to fix the "empty cart" problem? I installed the latest upload as well and I'm having problems with the shopping cart. I cannot add products to the cart. When I try adding products by clicking "Buy Now", I get an empty shopping cart.

When I try adding products from the product_info page, it just reloads the same product's page again. When I click "View Cart", I still get an empty cart.

 

I installed both fixes submitted by edgecrush3r and bchecketts but the "empty cart" problem has not yet been fixed.

 

Please help me!

 

Thanks.

Link to comment
Share on other sites

that error generally happens if you redirect to the same page, i.e. in an endless loop.

 

I looked at the htaccess file for clues to what you might have in mind. I did change the folder it related to and that cleaned up the link (before, hovering over the product revealed where it wanted to go and it was not the fixed url - now is (THANK YOU, Amanda) However, STILL not working.

 

Amanda, what do you mean by an endless loop then, what do you think could be wrong and what suggestion do you have for fixing?

 

Anyone have this problem and have ideas?

Link to comment
Share on other sites

Hi Justin,

 

Would you please let me know what did you do exactly to fix the "empty cart" problem? I installed the latest upload as well and I'm having problems with the shopping cart. I cannot add products to the cart. When I try adding products by clicking "Buy Now", I get an empty shopping cart.

When I try adding products from the product_info page, it just reloads the same product's page again. When I click "View Cart", I still get an empty cart.

 

I installed both fixes submitted by edgecrush3r and bchecketts but the "empty cart" problem has not yet been fixed.

 

Please help me!

 

Thanks.

 

It's me again. Just thought it would make things easier if I provided more details. The product URL looks like:

http://www.MYSTORE.com/courage-under-fire-p-16.html

 

when I click "Add to Cart", I get the same product page with the following URL:

http://www.MYSTORE.com/courage-under-fire-...ion=add_product

 

Also, from the list of products listed under a given category, when I clicked "Buy Now", I was taken to the cart contents page where it reads "Your shopping cart is empty" and the URL looks:

http://www.MYSTORE.com/shopping_cart.php?a...ucts_id=20&

 

As you see the "amp;" is still shown up in the URLs despite the fact that I installed fixes submitted by edgecrush3r and bchecketts. Although the seo.cache.php file they uploaded to the contrib looks different from the one I installed from Emmett's latest version, But I did the best I can to add their fixes.

 

So, according to bchecketts' fix, the function do_redirect() is as follows:

function do_redirect(){
$p = @explode('&', $this->uri_parsed['query']);
foreach( $p as $index => $value ){							
$tmp = @explode('=', $value);
switch($tmp[0]){
	 case 'products_id':
	if ( $this->is_attribute_string($tmp[1]) ){
		$pieces = @explode('{', $tmp[1]);							
		$params[] = $tmp[0] . '=' . $pieces[0];
	} else {
		$params[] = $tmp[0] . '=' . $tmp[1];
		  }
	break;
	default:
		$params[] = $tmp[0].'='.$tmp[1];
	break;						
	  }
	} # end foreach( $params as $var => $value )
	$params = ( sizeof($params) > 1 ? implode('&', $params) : $params[0] );		
	$url = $this->href_link($this->uri_parsed['path'], $params, 'NONSSL', false);


	  # BC Redirects shouldn't have '&'s in them
$url = preg_replace('/&/','&',$url);

	switch(true){
		case (defined('USE_SEO_REDIRECT_DEBUG') && USE_SEO_REDIRECT_DEBUG == 'true'):
			$this->attributes['SEO_REDIRECT']['REDIRECT_URL'] = $url;
			break;
		case ($this->attributes['USE_SEO_REDIRECT'] == 'true'):
			header("HTTP/1.0 301 Moved Permanently"); 
			header("Location: $url"); // redirect...bye bye		
			break;
		default:
			$this->attributes['SEO_REDIRECT']['REDIRECT_URL'] = $url;
			break;
	} # end switch
} # end function do_redirect

 

 

 

Also, according to edgecrush3r's fix, the function href_link() is as follows:

function href_link($page = '', $parameters = '', $connection = 'NONSSL', $add_session_id = true){
	$this->start($this->timestamp);
	$this->performance['NUMBER_URLS_GENERATED']++;
	if ( !in_array($page, $this->attributes['SEO_PAGES']) || $this->attributes['SEO_ENABLED'] == 'false' ) {
		return $this->stock_href_link($page, $parameters, $connection, $add_session_id);
	}
	$link = $connection == 'NONSSL' ? $this->base_url : $this->base_url_ssl;
	$separator = '?';
	if ($this->not_null($parameters)) { 
		$link .= $this->parse_parameters($page, $parameters, $separator);	
	} else {
	  $link .= $page;
	}
	$link = $this->add_sid($link, $add_session_id, $connection, $separator); 
	$this->stop($this->timestamp, $time);
	$this->performance['TOTAL_TIME'] += $time;
	switch($this->attributes['SEO_URLS_USE_W3C_VALID']){
		case ('true'):
			if (!isset($_SESSION['customer_id']) && defined('ENABLE_PAGE_CACHE') && ENABLE_PAGE_CACHE == 'true' && class_exists('page_cache')){
				return $link;
		} else {
 		//return htmlspecialchars(utf8_encode($link));
											  return utf8_encode($link);
			}
			break;
		case ('false'):
			return $link;
			break;
	}
} # end function

 

 

And the function stock_href_link() has become:

function stock_href_link($page = '', $parameters = '', $connection = 'NONSSL', $add_session_id = true, $search_engine_safe = true) {
global $request_type, $session_started, $SID;
if (!$this->not_null($page)) {
  die('</td></tr></table></td></tr></table><br><br><font color="#ff0000"><b>Error!</b></font><br><br><b>Unable to determine the page link!<br><br>');
}
if ($page == '/') $page = '';
if ($connection == 'NONSSL') {
  $link = HTTP_SERVER . DIR_WS_HTTP_CATALOG;
} elseif ($connection == 'SSL') {
  if (ENABLE_SSL == true) {
	$link = HTTPS_SERVER . DIR_WS_HTTPS_CATALOG;
  } else {
	$link = HTTP_SERVER . DIR_WS_HTTP_CATALOG;
  }
} else {
  die('</td></tr></table></td></tr></table><br><br><font color="#ff0000"><b>Error!</b></font><br><br><b>Unable to determine connection method on a link!<br><br>Known methods: NONSSL SSL</b><br><br>');
}
if ($this->not_null($parameters)) {
  $link .= $page . '?' . $this->output_string($parameters);
  $separator = '&';
} else {
  $link .= $page;
  $separator = '?';
}
while ( (substr($link, -1) == '&') || (substr($link, -1) == '?') ) $link = substr($link, 0, -1);
if ( ($add_session_id == true) && ($session_started == true) && (SESSION_FORCE_COOKIE_USE == 'False') ) {
  if ($this->not_null($SID)) {
	$_sid = $SID;
  } elseif ( ( ($request_type == 'NONSSL') && ($connection == 'SSL') && (ENABLE_SSL == true) ) || ( ($request_type == 'SSL') && ($connection == 'NONSSL') ) ) {
	if (HTTP_COOKIE_DOMAIN != HTTPS_COOKIE_DOMAIN) {
	  $_sid = $this->SessionName() . '=' . $this->SessionID();
	}
  }
}
if ( (SEARCH_ENGINE_FRIENDLY_URLS == 'true') && ($search_engine_safe == true) ) {
  while (strstr($link, '&&')) $link = str_replace('&&', '&', $link);
  $link = str_replace('?', '/', $link);
  $link = str_replace('&', '/', $link);
  $link = str_replace('=', '/', $link);
  $separator = '?';
}
switch(true){
	case (!isset($_SESSION['customer_id']) && defined('ENABLE_PAGE_CACHE') && ENABLE_PAGE_CACHE == 'true' && class_exists('page_cache')):
		$page_cache = true;
		$return = $link . $separator . '<osCsid>';
		break;
	case (isset($_sid)):
		$page_cache = false;
		$return = $link . $separator . $_sid;
		break;
	default:
		$page_cache = false;
		$return = $link;
		break;
} # end switch
$this->performance['NUMBER_STANDARD_URLS_GENERATED']++;
$this->cache['STANDARD_URLS'][] = $link;
$time = 0;
$this->stop($this->timestamp, $time);
$this->performance['TOTAL_TIME'] += $time;
switch(true){
	case ($this->attributes['SEO_URLS_USE_W3C_VALID'] == 'true' && !$page_cache):

	//return htmlspecialchars(utf8_encode($return));
							  return utf8_encode($return);
		break;
	default:
		return $return;
		break;
}# end swtich
 } # end default tep_href function

 

Does anyone have any idea how to fix my cart problem?

 

By the way, I have both "valid XHTML Catalog Side 2.3" and "HTC" contribs installed.

 

Please help me!

 

Thanks

Link to comment
Share on other sites

you are missing the point.

 

matrox-g200-one-p-1.html exists and will continue to exist alongside matrox-g200-two-p-1.html and se's will continue to find both pages and index both pages. The point was that you now have 2 different url's which point to the very same page.

 

 

Sorry, if these two pages have the same content, then yes, it is seen as a form of spamming and you get a negative credit. You need to have something different between the two in order to make it work. You can probably do it with a couple of items. Afterall, every site makes mistakes and the SE know that. Just do not take it to an extreme and have 5 urls for every product as the SE will surely see it and your site will be listed as spam.

 

- Roger

Link to comment
Share on other sites

Can you tell me why I should not install sid killer, and what do you propose me instead of sid killer to get rid of osCsid.

 

 

I am not sure if anyone answered you on this forum. I saw this posted by boxtel who frequents this forum.

 

http://www.oscommerce.com/community/contri...ry/search,37332

 

- Roger

Link to comment
Share on other sites

you can see (on my site) if you put this in application top after the seo class is included that you can edit the url in the address bar before the rewrite key all you like, it will always revert back to the valid one with a 301 redirect.

 

boxtel,

 

I took a look at your site. Very nice BTW. I went to a product page and edited the url:

 

http://www.crystallight.com.tw/rose-somete...e-3-A-1272.html

 

When I put that in my browser, the text stays the same and is not redirected to:

 

http://www.crystallight.com.tw/rose-quartz...d-3-A-1272.html

 

I am sorry, it this what it was suppose to do? I may have misread what your post is suppose to do.

 

- Roger

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...