Jump to content
Jack_mcs

All Products SEO

Recommended Posts

Thanks Jack.

Line 69 says " define($configuration['cfgKey'], $configuration['cfgValue']);"

 

Is it the Ultimate SEO contrib that is causing the issue?

 

Thanks

Adam

Share this post


Link to post
Share on other sites

Line 69 says " define($configuration['cfgKey'], $configuration['cfgValue']);"

 

Is it the Ultimate SEO contrib that is causing the issue?

That code isn't part of this contribution. I don't know if it is part of the Ultimate SEO version you are using.

Share this post


Link to post
Share on other sites

Regarding the fix for disabled products in post #114 i just want to make a notice that the 2 last $exist_query is different.

First one is for letter and the last one for numbers.

(The first in jacks post is for letters, but the part you are supposed to replace it with is for numbers) Just to remember to change the $whereNumbers and $whereLetters in the right place.

Share this post


Link to post
Share on other sites

I am having a little issue where I have blank products showing up in the all products page eventhough they don't appear to exist at all in my catalog in admin. And when you click the buy now button it adds the product to the cart and shows what the blank item actually is but then when you click the item in the cart it takes you to that product with another product id number.

 

Blank Product is showing as product id 433

In Cart the product is linking to product id 452

 

Any thoughts?

Share this post


Link to post
Share on other sites

The code of this contribution can only load in what's in the database so it sounds like you've got a problem in your database. Probably some products that were not completely deleted for some reason. You will have to use a program like phpmyadmin and look at the products in the database to find the problem.

Share this post


Link to post
Share on other sites

I checked the logs from webmastercentral at google and i found some errors. It is about the different links for the letters

 

It says

Pages with duplicate meta descriptions

/all-products.php-by-F.html

..

..

..

/all-products.php-by-K.html

..

..

 

Is there a way to make custom description on theese pages. append text to the end of the descriptions.

(Default meta descriptions) + LANG(sort by letter X)

 

If not maybe a suggestion for next release.

 

I dont know if this error(duplicate) will affect my pages in google in any way.

Share this post


Link to post
Share on other sites

It says

Pages with duplicate meta descriptions

/all-products.php-by-F.html

 

Is there a way to make custom description on theese pages. append text to the end of the descriptions.

(Default meta descriptions) + LANG(sort by letter X)

 

If not maybe a suggestion for next release.

If you have Header Tags SEO installed, code is already in place to handle it but, on testing it just now, I see there is a problem with it. To make use of it, add the page as a pseudo page with all-products.php?fl=F, where F is the page letter. Then you will need to edit the includes/header_tags.php file (this is due to the problem I mentioned and only needs to be done once). Find all instances of FILENAME_ALL-PRODUCTS and change them to FILENAME_ALLPRODS_SEO. The problem is that the file name for All Products SEO doesn't follow the normal method. But I did that so it wouldn't conflict with the other All Product contributions. I'll have to change the code in Header Tags to account for such a situation but, for now, making the above change will work.

 

If you don't have Header Tags SEO installed, you're out of luck, short of coding it yourself.

Edited by Jack_mcs

Share this post


Link to post
Share on other sites

Thanks, i have HT SEO installed...

 

Well, that will mean that i have to make pseudo pages for all letters and numbers.

I will have a look at this when i have the time, as i have to add 28+10 pseudo pages, and i am not sure it would be easy with the norwegian spesial characters as well.

 

Will there be any release in near future who fix this issue on a more permanent automatic way. As for the all products you only need one set of SEO data with the letter appended as a predifined text in title, heading, and meta fields. "All products sort by (A-Z)(0-9)"

Share this post


Link to post
Share on other sites

Will there be any release in near future who fix this issue on a more permanent automatic way. As for the all products you only need one set of SEO data with the letter appended as a predifined text in title, heading, and meta fields. "All products sort by (A-Z)(0-9)"

Automatic adding of pseudo pages is planned but I don't know when that will be.

Share this post


Link to post
Share on other sites
Automatic adding of pseudo pages is planned but I don't know when that will be.

 

Is this the right way to go... As this for all products SEO only it will generate around 40 pseudo pages that have to be filled in with almost same data.

 

Maybe it is an option to append a string at the end on each field. "Products starting with %letter/%number"

Or a placeholder in the main fields for all_products withc is replaced.

 

I dont know the coding enough to say if it may be done this way or not..

 

Just my opinion...

Share this post


Link to post
Share on other sites

Is this the right way to go... As this for all products SEO only it will generate around 40 pseudo pages that have to be filled in with almost same data.

 

Maybe it is an option to append a string at the end on each field. "Products starting with %letter/%number"

Or a placeholder in the main fields for all_products withc is replaced.

 

I dont know the coding enough to say if it may be done this way or not..

 

Just my opinion...

It is not that important whether or not there are duplicate meta description tags. It is more important what is on the page and, in this case, that is not possible without adding code to the page and a field in the database to hold it, which is probably not worth the effort. What is important is that the canonical tag of Header Tags point to the base page, which it currently does not. The canonical code is being changed in the next version of Header Tags and is not complete but the following should be better than what is there now. So in includes/functions/header_tags.php, find

function GetCanonicalURL()
{
 $parts = explode("&", $_SERVER['QUERY_STRING']);
 $remove = array();
 $cnt = count($parts);

 if ($cnt == 1 && basename($_SERVER['PHP_SELF']) === FILENAME_DEFAULT) //home page
 {
   return StripSID(tep_href_link('/'));
 }

 for ($i = 0; $i < $cnt; ++$i)
 {
   if (strpos($parts[$i], "action=") !== FALSE)
     $remove[] = $i;
   else if (strpos($parts[$i], "currency=") !== FALSE)
     $remove[] = $i;
   else if (strpos($parts[$i], "language=") !== FALSE)
     $remove[] = $i;
   else if (strpos($parts[$i], "osCsid=") !== FALSE)
     $remove[] = $i;
   else if (strpos($parts[$i], "sort=") !== FALSE)
     $remove[] = $i;
 }
 for ($i = 0; $i < count($remove); ++$i)
 {
   unset($parts[$remove[$i]]);
 }
 $args = '';
 for ($i = 0; $i < count($parts); ++$i)
   $args .= $parts[$i] . '&';
 $args = (tep_not_null($args) ? substr($args, 0, -1) : '');

 return StripSID(tep_href_link(basename($_SERVER['PHP_SELF']), $args));
}

and replace it with

function GetCanonicalURL()
{
 $parts = explode("&", $_SERVER['QUERY_STRING']);
 $remove = array();
 $cnt = count($parts);

 if ($cnt == 1 && basename($_SERVER['PHP_SELF']) === FILENAME_DEFAULT) //home page
 {
   return StripSID(tep_href_link('/'));
 }

 $args = '';
 if (in_array("language", $parts))
   $args = 'language='.$_GET['language'];
 return tep_href_link(basename($_SERVER['PHP_SELF']), $args, 'NONSSL', false) ;
}

Then check the canonical tag in the source after refreshing the page and it should just be all-products.php, without the fl=.

Edited by Jack_mcs

Share this post


Link to post
Share on other sites

Thanks,

 

That sorted it out. It only show the correct canonical link now.

 

:thumbsup:

Share this post


Link to post
Share on other sites

Hi again :-)

 

Im pulling my hair out here, any ideas on how i can fix the following

 

Warning: include(includes/boxes/all-products.php) [function.include]: failed to open stream: No such file or directory in C:\wamp\www\admin\includes\column_left.php on line 14

 

Warning: include() [function.include]: Failed opening 'includes/boxes/all-products.php' for inclusion (include_path='.;C:\php5\pear') in C:\wamp\www\admin\includes\column_left.php on line 14

 

this is in the admin side above the menu, im pretty sure i followed instructions right as i tested it on a test copy and it didnt work so i tried an old test copy and it did. although if can be helpd id rather not go back to an older backup

 

TIA

Share this post


Link to post
Share on other sites

The error is saying the includes/boxes/all-products.php file can't be found. Maybe you forgot to upload it?

Share this post


Link to post
Share on other sites

nevermind sussed it :-) for anyone having the same problem dont update the admin includes column_left.php :-) or leave remnants of it there when correcting mistakes although weired how it worked on another copy as i make changes to the files then copy them to the right structure to overlay onto the main

Share this post


Link to post
Share on other sites

Sorry for my poor english...

 

I'm using All Products SEO v1.1 and I'm going to update to v1.2

 

After apply the fix comment in previous pages I have a issue, products that are in several categories are show duplicate. In previus version (v1.1) only are show those products one time.

 

Thanks for all :)

Gustavo

Share this post


Link to post
Share on other sites

Sorry for my poor english...

 

I'm using All Products SEO v1.1 and I'm going to update to v1.2

 

After apply the fix comment in previous pages I have a issue, products that are in several categories are show duplicate. In previus version (v1.1) only are show those products one time.

 

Thanks for all :)

Gustavo

Please try changing this line in all-products.php

 TABLE_PRODUCTS_TO_CATEGORIES . " p2c on p.products_id = p2c.products_id left join " . 

to

 TABLE_PRODUCTS_TO_CATEGORIES . " p2c on p.products_id = p2c.products_id inner join " .

Share this post


Link to post
Share on other sites

Try changing the line that starts with

$listing_sql = "select p.products_id,

to

$listing_sql = "select distinct p.products_id,

Share this post


Link to post
Share on other sites

Perfect!!!

 

I apply 2 changes that you give me, and it works :)

 

Thanks for your time :)

 

Regards!!

Share this post


Link to post
Share on other sites

Sorry for being such a PITA Jack, but....

 

I installed All Products, and it worked fine. I than began installing Header Tags SEO, realised how much could go wrong and started doing it on an offline copy instead. I thought I put all the files back as they were, but obviously not. On allprod.php I get the following:

1146 - Table 'fullscal_fullscale.TABLE_HEADERTAGS_DEFAULT' doesn't exist

select * from TABLE_HEADERTAGS_DEFAULT where language_id = '1'

[TEP STOP]

 

I guess that means I'm missing an SQL table? How do I fix that?

 

Again, thank you so much for all you do!

Share this post


Link to post
Share on other sites

select * from TABLE_HEADERTAGS_DEFAULT where language_id = '1'

 

I guess that means I'm missing an SQL table? How do I fix that?

 

Again, thank you so much for all you do!

You're welcome. :) The error means Header Tags isn't installed correctly. Capital letters in an error mean a definition is missing. That one would be in the includes/database_tables.php file and you can check the Header Tags instructions to find it.

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

×