Jump to content
  • Checkout
  • Login
  • Get in touch

osCommerce

The e-commerce.

KissMT Dynamic SEO Meta & Canonical Header Tags


FWR Media

Recommended Posts

I'm sorry to bother you again but Robert if you could shed some light I'd be grateful:

 

Can KissMt deal with special characters?

When I write titles in foreign languages and use for example "é", on the site page the title reads "é" which is fine, but in the source it reads "é" .......this way I am worried search engines will index texts containing "é" rather than the correct letter.

 

Please can you help?

~ Don't mistake my kindness for weakness ~

Link to comment
Share on other sites

I'm sorry to bother you again but Robert if you could shed some light I'd be grateful:

 

Can KissMt deal with special characters?

When I write titles in foreign languages and use for example "é", on the site page the title reads "é" which is fine, but in the source it reads "é" .......this way I am worried search engines will index texts containing "é" rather than the correct letter.

 

Please can you help?

 

Yes KissMT deals correctly with special characters.

 

That is exactly why such characters are represented as html special characters in the source code.

Link to comment
Share on other sites

Hi Robert, KISS error handler says:

 

 

Date / Time: 18-02-2011 19:45:16

Error Type: [E_NOTICE] Undefined index: products_id

On line 29

File includes/modules/kiss_meta_tags/modules/product_info.php

-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

 

Date / Time: 18-02-2011 19:45:16

Error Type: [E_NOTICE] Undefined index: products_id

On line 30

File includes/modules/kiss_meta_tags/modules/product_info.php

 

I do not why though. Any fix?

 

Kindest

 

Sara

Link to comment
Share on other sites

Hi Robert, KISS error handler says:

 

 

Date / Time: 18-02-2011 19:45:16

Error Type: [E_NOTICE] Undefined index: products_id

On line 29

File includes/modules/kiss_meta_tags/modules/product_info.php

-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

 

Date / Time: 18-02-2011 19:45:16

Error Type: [E_NOTICE] Undefined index: products_id

On line 30

File includes/modules/kiss_meta_tags/modules/product_info.php

 

I do not why though. Any fix?

 

Kindest

 

Sara

 

When product_info.php is accessed products_id should always be present in the querystring ( or at least in _GET where _GET has been manipulated )

Link to comment
Share on other sites

Hello Robert, yes you are right as always.

Sorry for posting this but I would like to understand what's going on.

The query contains this: (int)$_GET['products_id'] So, I am confused and beleive its an error in application top...

 

Thanks for your answer Robert, now I do need a hot bath. It's cold outside... brrrr

 

Sara

Link to comment
Share on other sites

Godmorning Robert. I have solved the problem:

 

It's NOT an error, the product doesn't exist when the index is undefined. see the $product_check in the code.

(Its just a part of the logics).

So, the "solution" should be to avoid getting it reported as an E_NOTICE.

 

Thought you would like to know in case it can be useful.

 

Sara

Link to comment
Share on other sites

Hi Robert

im experiencing some problems in my error log, do you have any idea what could be the cause?:

 

PHP Warning: htmlentities() [<a href='function.htmlentities'>function.htmlentities</a>]: Invalid multibyte sequence in argument in /xxxxxxx.com/includes/modules/kiss_meta_tags/classes/kiss_meta_tags_class.php on line 255

 

 

thanks

regards

Michael

Dedicated OsCommerce user. 2011 will be the return of OsC

Link to comment
Share on other sites

Hi Robert

im experiencing some problems in my error log, do you have any idea what could be the cause?:

 

PHP Warning: htmlentities() [<a href='function.htmlentities'>function.htmlentities</a>]: Invalid multibyte sequence in argument in /xxxxxxx.com/includes/modules/kiss_meta_tags/classes/kiss_meta_tags_class.php on line 255

 

 

thanks

regards

Michael

 

Perhaps a UTF-8 string passed in where the CHARSET define ( includes/languages/<my language>.php ) is set as ISO-8859-1

 

Either way it looks like the string passed in does not match the character set.

 

I think this can also happen when you cut and paste text from Windows Word and save to the DB.

Link to comment
Share on other sites

Hi Robert

 

I have problems with single quotes, I can't make them show in the metas, for example what should be d'utilisation becomes dutilisation, I tried writing it like this: d\'utilisation or using the html code & # 39 ; but nothing works.

 

Can you help please?

Edited by Biancoblu

~ Don't mistake my kindness for weakness ~

Link to comment
Share on other sites

When product_info.php is accessed products_id should always be present in the querystring ( or at least in _GET where _GET has been manipulated )

thanks -that seems like the case - i am at least having some language issues with charset and scandinavian characters.

i'll look into that.

 

thanks again for a GREAT contribution and support.

Dedicated OsCommerce user. 2011 will be the return of OsC

Link to comment
Share on other sites

Hi Robert

 

I have problems with single quotes, I can't make them show in the metas, for example what should be d'utilisation becomes dutilisation, I tried writing it like this: d\'utilisation or using the html code & # 39 ; but nothing works.

 

Can you help please?

 

Thinking that this may be related to a problem described in an earlier post I applied the changes described in this post, namely edit line 134 of catalog/includes/kiss_meta_tags/abstracts/kiss_modules.php, change it to

array_walk( $words_as_array, array( $this, 'stripStopWords' ) );

 

or change line 280 to

 private static function stripStopWords( &$word ) {

 

 

but none of these fixes solve my single quote problem. :(

~ Don't mistake my kindness for weakness ~

Link to comment
Share on other sites

Hi Robert

 

I'm still having the problem where single quotes (apostrophes) get stripped from the meta data. For now I have circumvented the problem by using an acute accent as an apostrophe, ie: what´s, but was wondering if there was a way not to strip single quotes?

Your help on this one would be greatly appreciated.

 

Thanks for your great work and terrific contributions.

 

Isabella

~ Don't mistake my kindness for weakness ~

Link to comment
Share on other sites

  • 2 weeks later...

I have a strange problem (at least strange to me)...

 

I uploaded the files to our website, and wanted to try it - since it is a live website - I use index-test.php for testing purposes. I tried adding the required include on that file

 

<?php include_once DIR_WS_MODULES . 'kiss_meta_tags/kiss_meta_tags.php'; ?>

 

and it kept giving the error: Fatal error: Class 'KissMT_Module' not found in ...

 

I checked all the comments/discussions about this error and none of them applies to me, the directory settings are correct - and i dont have any payment systems etc... Then i figured out to put the line in other php files, then they worked. Then I tried on the original index.php file - it works there as well. Why wouldn't it work on index-test.php?

 

Thanks.

Link to comment
Share on other sites

A couple of further questions on the usage:

 

I use the page_title but it stops producing the Category name as title, at 3 level-deep category. It puts proper titles for upper levels of categories. Is this normal?

 

Would there be a way to set different title lengths ( the meta titles) for different pages?

 

About meta title and pageHeading title - are they always the same text? for home page, and categories page?

 

And finally - when there is a short title as title - it pads with the same text again, taking as many words needed... Is it also a normal behavior?

Link to comment
Share on other sites

I have a strange problem (at least strange to me)...

 

I uploaded the files to our website, and wanted to try it - since it is a live website - I use index-test.php for testing purposes. I tried adding the required include on that file

 

<?php include_once DIR_WS_MODULES . 'kiss_meta_tags/kiss_meta_tags.php'; ?>

 

and it kept giving the error: Fatal error: Class 'KissMT_Module' not found in ...

 

I checked all the comments/discussions about this error and none of them applies to me, the directory settings are correct - and i dont have any payment systems etc... Then i figured out to put the line in other php files, then they worked. Then I tried on the original index.php file - it works there as well. Why wouldn't it work on index-test.php?

 

Thanks.

 

It doesn't work on file index-test.php because index-test.php has no KissMT module nor standard osCommerce language defines as it is not a standard page.

Edited by FWR Media
Link to comment
Share on other sites

A couple of further questions on the usage:

 

I use the page_title but it stops producing the Category name as title, at 3 level-deep category. It puts proper titles for upper levels of categories. Is this normal?

 

Would there be a way to set different title lengths ( the meta titles) for different pages?

 

About meta title and pageHeading title - are they always the same text? for home page, and categories page?

 

And finally - when there is a short title as title - it pads with the same text again, taking as many words needed... Is it also a normal behavior?

 

You'll have to be more specific, I haven't a clue what you are referring to.

Link to comment
Share on other sites

It doesn't work on file index-test.php because index-test.php has no KissMT module nor standard osCommerce language defines as it is not a standard page.

 

Yeah - I thought that might the problem as well... Anyway it is working on normal pages - just need to fine tune it.

 

 

You'll have to be more specific, I haven't a clue what you are referring to.

 

let me try...

 

1) Category-Manufacturers Descriptions-H1 page title optional extra: I put the

echo KissMT::init()->page_title . PHP_EOL; 

at appropriate locations. In home page this displays the Store title, in categories pages this displays the category name - as page <H1> title. However this does not put the category name there for the category page a 3-level-deep category, ie when cpath=XX_XXX_XXXXX.

 

2) KissMT configuration values: Was wondering if it is possible to set "Limit the meta title length." value differently for different pages - but what I had in mind was to be able to have longer titles for the category pages but they all work through the index.php - it is kinda hard I guess.

 

3) Category-Manufacturers Descriptions-H1 page title optional extra: the H1 page title uses the same text as the "Meta Title" uses?

 

4) And for the "meta title": when KISS_MT_META_TITLE_LENGTH=60 and I have KISSMT_HOMEPAGE_TITLE as 40 characters, it will pad it with repeating some words from KISSMT_HOMEPAGE_TITLE. is this normal? something like this: This is my store Title - This is my store when KISSMT_HOMEPAGE_TITLE="This is my store title."

Edited by psychoder
Link to comment
Share on other sites

hi FWR Media,

Great contribution!

 

i have a question / problem i have noticed after i have installed this KissMT contribution (r76)...it is producing duplicate data in the Title, Meta Description and Meta Keywords, aswell as not displaying the catalog number correctly in 1 part of each of the Title, Description and Keywords.

 

Example of what i mean showing the display output from the "product_info.php" aswell:

 

i have a chair on my website called "Axel", the catalog number is "CH A20" and it is manufactured by Dane.

 

 

 

i also have Breadcrumb with the following details (including the product name and catalog number in it), that is also displayed on this page for this product:

 

Home / Furniture / Chairs / Axel [CH A20]

 

 

 

It is generating this Title, Meta Name Description and Meta Name Keywords for the source on the product page:

 

<title>Axel - CH A20 - Axel Cha20 - Chairs - Furniture - by Dane - Buy from House</title>

<meta name="description" content="Axel, CH A20, Axel Cha20, Chairs, Furniture, by Dane.">

<meta name="keywords" content="axel,a20,cha20,chairs,furniture,dane">

 

 

i guess it is the "kiss_meta_tags/modules/product_info.php" file code that needs to be modified to correctly display this without duplicating or error.

i am using the original "kiss_meta_tags/modules/product_info.php" file that comes with you contribution.

 

Any help explaining and showing what code to replace/delete to make the Title, Meta Description and Meta Keywords generate correctly for me would be really great.

 

thanks!

Link to comment
Share on other sites

I have been fidgeting with the kissmt.php language file but I am not sure if it works properly yet... Or it is not behaving as I would expect it to be - any insight would be largely appreciated... (My previous questions were mainly result of these problems)

 

 

The main problem I am having is with:

 /**
 * General
 * Default text to add to meta titles that are too short. Leave blank if not needed. you can inlude %s to place your shop name in there.
 */
 define( 'KISSMT_TITLE_PADDING', 'buy from %s' );

 /**
 * Homepage
 * Note: The %s is where your shop name will go in the text
 */
 define( 'KISSMT_HOMEPAGE_TITLE', 'My Great Product Range' );
 define( 'KISSMT_HOMEPAGE_DESCRIPTION', 'Full Range of Wiggets' );

 

First problem is the title padding does not seem to work - it never adds it after the title. I put a 12 character shortened store name there. It does not add it there even if "max meta title length" is not reached. It instead takes first few words from the KISSMT_HOMEPAGE_DESCRIPTION and adds it there. It does the same thing for products pages, categories pages, etc... Is there a way to change this behavior? is it normal?

 

On another note - is it possible to add a feature to add a number of keywords to the dynamically created list of key words?

Link to comment
Share on other sites

hi i have a simular problem whit the second part of kissmt.php

 

 // Brand text ( manufacturer )
 define( 'KISSMT_BRAND_TEXT', 'by %s' );
 // Manufacturers page (index.php)
 define( 'KISSMT_MANUFACTURERS_TEXT', 'Products by %s at ' . STORE_NAME );

 // specials.php
 define( 'KISSMT_SPECIALS_TEXT', '%s at ' . STORE_NAME );
 // products_new.php
 define( 'KISSMT_PRODUCTS_NEW_TEXT', '%s at ' . STORE_NAME );
 // reviews.php
 define( 'KISSMT_REVIEWS_TEXT', '%s from customers at ' . STORE_NAME );
 // product_reviews.php  
 define( 'KISSMT_PRODUCT_REVIEWS_TEXT', 'Customer reviews on %s' );
 // product_reviews_info.php
 define( 'KISSMT_PRODUCT_REVIEWS_INFO_TEXT', 'Product review by %s' );

 /**
 * Generic pages
 * Here you can build meta tags for any of the peripheral pages simply by creating two defines
 * KISSMT_XXXXX_TITLE_TEXT and KISSMT_XXXXX_DESCRIPTION_TEXT
 * the XXXXX must be the name of the file ( less the .php ) in capitals
 * If there is a %s in the KISSMT_XXXXX_TITLE_TEXT this is replaced with the page HEADING_TITLE
 */
 // privacy.php
 define( 'KISSMT_PRIVACY_TITLE_TEXT', '%s privacy statement from ' . STORE_NAME );
 define( 'KISSMT_PRIVACY_DESCRIPTION_TEXT', 'We take all possible measures to ensure the safety of your privacy and information' );
 // conditions.php
 define( 'KISSMT_CONDITIONS_TITLE_TEXT', '%s conditions statement from ' . STORE_NAME );
 define( 'KISSMT_CONDITIONS_DESCRIPTION_TEXT', 'information about conditions of usage.' );
 // shipping.php
 define( 'KISSMT_SHIPPING_TITLE_TEXT', '%s information at ' . STORE_NAME );
 define( 'KISSMT_SHIPPING_DESCRIPTION_TEXT', 'Shipping, packaging and handling.' );
 // contact_us.php
 define( 'KISSMT_CONTACT_US_TITLE_TEXT', '%s if you need assistance from ' . STORE_NAME );
 define( 'KISSMT_CONTACT_US_DESCRIPTION_TEXT', 'Should you have any questions or queries, please don\'t hesitate.' );
?>

 

any words i write isn't condsidered

 

for example if i change:

 

// reviews.php

define( 'KISSMT_REVIEWS_TEXT', '%s from customers at ' . STORE_NAME );

 

to:

 

// reviews.php

define( 'KISSMT_REVIEWS_TEXT', '%s aaaaaaaa ' . STORE_NAME );

 

nothing change in the page title...

Link to comment
Share on other sites

hi i have a simular problem whit the second part of kissmt.php

 

 // Brand text ( manufacturer )
 define( 'KISSMT_BRAND_TEXT', 'by %s' );
 // Manufacturers page (index.php)
 define( 'KISSMT_MANUFACTURERS_TEXT', 'Products by %s at ' . STORE_NAME );

 // specials.php
 define( 'KISSMT_SPECIALS_TEXT', '%s at ' . STORE_NAME );
 // products_new.php
 define( 'KISSMT_PRODUCTS_NEW_TEXT', '%s at ' . STORE_NAME );
 // reviews.php
 define( 'KISSMT_REVIEWS_TEXT', '%s from customers at ' . STORE_NAME );
 // product_reviews.php  
 define( 'KISSMT_PRODUCT_REVIEWS_TEXT', 'Customer reviews on %s' );
 // product_reviews_info.php
 define( 'KISSMT_PRODUCT_REVIEWS_INFO_TEXT', 'Product review by %s' );

 /**
 * Generic pages
 * Here you can build meta tags for any of the peripheral pages simply by creating two defines
 * KISSMT_XXXXX_TITLE_TEXT and KISSMT_XXXXX_DESCRIPTION_TEXT
 * the XXXXX must be the name of the file ( less the .php ) in capitals
 * If there is a %s in the KISSMT_XXXXX_TITLE_TEXT this is replaced with the page HEADING_TITLE
 */
 // privacy.php
 define( 'KISSMT_PRIVACY_TITLE_TEXT', '%s privacy statement from ' . STORE_NAME );
 define( 'KISSMT_PRIVACY_DESCRIPTION_TEXT', 'We take all possible measures to ensure the safety of your privacy and information' );
 // conditions.php
 define( 'KISSMT_CONDITIONS_TITLE_TEXT', '%s conditions statement from ' . STORE_NAME );
 define( 'KISSMT_CONDITIONS_DESCRIPTION_TEXT', 'information about conditions of usage.' );
 // shipping.php
 define( 'KISSMT_SHIPPING_TITLE_TEXT', '%s information at ' . STORE_NAME );
 define( 'KISSMT_SHIPPING_DESCRIPTION_TEXT', 'Shipping, packaging and handling.' );
 // contact_us.php
 define( 'KISSMT_CONTACT_US_TITLE_TEXT', '%s if you need assistance from ' . STORE_NAME );
 define( 'KISSMT_CONTACT_US_DESCRIPTION_TEXT', 'Should you have any questions or queries, please don\'t hesitate.' );
?>

 

any words i write isn't condsidered

 

for example if i change:

 

// reviews.php

define( 'KISSMT_REVIEWS_TEXT', '%s from customers at ' . STORE_NAME );

 

to:

 

// reviews.php

define( 'KISSMT_REVIEWS_TEXT', '%s aaaaaaaa ' . STORE_NAME );

 

nothing change in the page title...

 

EDIT: Only the reviews part don't work!

Edited by piros93
Link to comment
Share on other sites

I'm sorry to bother you again FWRmedia, but i would really appreciate if you could help with this please:

 

hi FWR Media,
Great contribution!

i have a question / problem i have noticed after i have installed this KissMT contribution (r76)...it is producing duplicate data in the Title, Meta Description and Meta Keywords, aswell as not displaying the catalog number correctly in 1 part of each of the Title, Description and Keywords.

Example of what i mean showing the display output from the "product_info.php" aswell:

i have a chair on my website called "Axel", the catalog number is "CH A20" and it is manufactured by Dane.



i also have Breadcrumb with the following details (including the product name and catalog number in it), that is also displayed on this page for this product:

Home / Furniture / Chairs / Axel [CH A20]



It is generating this Title, Meta Name Description and Meta Name Keywords for the source on the product page:

<title>Axel - CH A20 - Axel Cha20 - Chairs - Furniture - by Dane - Buy from House</title>
<meta name="description" content="Axel, CH A20, Axel Cha20, Chairs, Furniture, by Dane.">
<meta name="keywords" content="axel,a20,cha20,chairs,furniture,dane">


i guess it is the "kiss_meta_tags/modules/product_info.php" file code that needs to be modified to correctly display this without duplicating or error.
i am using the original "kiss_meta_tags/modules/product_info.php" file that comes with you contribution.

Any help explaining and showing what code to replace/delete to make the Title, Meta Description and Meta Keywords generate correctly for me would be really great.

thanks! 

Link to comment
Share on other sites

I'm sorry to bother you again FWRmedia, but i would really appreciate if you could help with this please:

 

KissMT is dynamic .. it generally does a good job in the majority of cases but in other cases the output may not be what you deem to be ideal.

 

This is simply because the code has no way of knowing exactly how you want it to be output, it does remove duplicates but yours aren't exact duplicates.

 

Could you post the EXACT contents of ..

 

products_name

 

products_model

 

First 100 characters of the description.

Link to comment
Share on other sites

Thanks for this great mod! I have installed the main portion, as well as the optional extras without any errors or issues. KISS ROCKS!

 

Everything seems to be working ok with one exception. Since installing this, one product (that I've discovered so far) takes exceptionally long to load (20 secs). It is consistent in that load time while every other product loads almost immediately. The only difference between this product and several other almost identical items is that it has 20 reviews and has been a number one selling product for me. Obviously, as a best seller in a live store, I don't need it to be dogging!

 

I have reset the KissMT cache - didn't help. I repaired, analyzed, optimized the database from phpMyAdmin, without error and that didn't help. I edited a small part of the item description and the updated version didn't load any faster. I'm not certain how it would be this contrib, but other than your Security Pro, nothing else has changed on this store. The product is here: Slow Item

 

Thanks for your help!

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