Jump to content
  • Checkout
  • Login
  • Get in touch

osCommerce

The e-commerce.

KissMT Dynamic SEO Meta & Canonical Header Tags


FWR Media

Recommended Posts

I love how this support thread points to the documentation all the time but the answer is not that clear always.

I still don't understand how the cache really works and so forth. Another topic after I fix this problem.

I have a very large store Over 6000 items of basically catalog items and google is simply not seeing all of my items and it takes weeks to build the cache files but anyway....

Lets try to take care of this first.

 

Ok, I looked at that documentation you mentioned and noticed that in the last 2 parameters of the documentation it contains this:

.....

•KISSMT_CANONICAL_ON - string true/false - output canonical tags to remove duplicate search engine index entries and osCsid sessions

•KISSMT_DESCRIPTIONS_EXTENSION_ENABLE - string true/false - Enable Categories/Manufacturers descriptions extension.

 

However my code in includes/modules/kiss_meta_tags/includes/init.php does not have the definition KISSMT_DESCRIPTIONS_EXTENSION_ENABLE included.

Mine ends with this:

 

/**

* Show the canonical tag for relevant pages - string true / false

*/

defined( 'KISSMT_CANONICAL_ON' ) || define( 'KISSMT_CANONICAL_ON', 'true' );

?>

 

so I added this at the end:

 

/** KISSMT_DESCRIPTIONS_EXTENSION_ENABLE - string true/false - Enable Categories/Manufacturers descriptions extension.

*/

defined( 'KISSMT_DESCRIPTIONS_EXTENSION_ENABLE' ) || define( 'KISSMT_DESCRIPTIONS_EXTENSION_ENABLE', 'false' );

?>

 

Still my model and manufacturer description are included in my view source code.

 

I do not want model # (uneccessary info taking up space) or manufacturer description included (as I have used that field as a condition statement).

So what else is required to make the parameter stop model and manufacturer description?

Thank you for a great simple process so far.

 

Those definitions are optional extras and only available after the database admin install has been completed .. and yes it is in the documentation :) optional_extras.

 

If you want to change the standard operation of KissMT then you will need to modify the relevant module .. e.g. the module name matches the catalog filename so for products the module name is product_info.php.

Link to comment
Share on other sites

I love how this support thread points to the documentation all the time but the answer is not that clear always.

I still don't understand how the cache really works and so forth. Another topic after I fix this problem.

I have a very large store Over 6000 items of basically catalog items and google is simply not seeing all of my items and it takes weeks to build the cache files but anyway....

Lets try to take care of this first.

 

Ok, I looked at that documentation you mentioned and noticed that in the last 2 parameters of the documentation it contains this:

.....

•KISSMT_CANONICAL_ON - string true/false - output canonical tags to remove duplicate search engine index entries and osCsid sessions

•KISSMT_DESCRIPTIONS_EXTENSION_ENABLE - string true/false - Enable Categories/Manufacturers descriptions extension.

 

However my code in includes/modules/kiss_meta_tags/includes/init.php does not have the definition KISSMT_DESCRIPTIONS_EXTENSION_ENABLE included.

Mine ends with this:

 

/**

* Show the canonical tag for relevant pages - string true / false

*/

defined( 'KISSMT_CANONICAL_ON' ) || define( 'KISSMT_CANONICAL_ON', 'true' );

?>

 

so I added this at the end:

 

/** KISSMT_DESCRIPTIONS_EXTENSION_ENABLE - string true/false - Enable Categories/Manufacturers descriptions extension.

*/

defined( 'KISSMT_DESCRIPTIONS_EXTENSION_ENABLE' ) || define( 'KISSMT_DESCRIPTIONS_EXTENSION_ENABLE', 'false' );

?>

 

Still my model and manufacturer description are included in my view source code.

 

I do not want model # (uneccessary info taking up space) or manufacturer description included (as I have used that field as a condition statement).

So what else is required to make the parameter stop model and manufacturer description?

Thank you for a great simple process so far.

Link to comment
Share on other sites

Aha !!! Then I may have found the one thing that was stopping me from doing the database install. I thought I was ok without it until now. Perhaps this will heip my other problems as well. Thanks so much. Back to the grind.

 

No .. the admin install is "an optional extra" it is NOT required. The settings that you are speaking of are only valid if you have added those optional extras.

 

I would suggest you get the base install working as you wish before you think of the optional extras, the extras are also a more complicated install requiring file changes.

 

All this is in the instructions.

Link to comment
Share on other sites

No .. the admin install is "an optional extra" it is NOT required. The settings that you are speaking of are only valid if you have added those optional extras.

 

I would suggest you get the base install working as you wish before you think of the optional extras, the extras are also a more complicated install requiring file changes.

 

All this is in the instructions.

Link to comment
Share on other sites

Ok then I am at square one again. I did everything I possibly can see to do with the base install except the h1 tags. That would not be practical for me as they got lost in the traslation of the files I had in another database that I copied from. I guess to get rid of the fields I want, model and manufacturer I will have to drastically make some changes to where they may be called in and try to understand what the code is doing if I want them gone. Hard to do for a non programmer or developer. I consider myself an ameteur there but I might figure it out thru trial and error. Yeah, I know it is in the documentation. Still this should not be causing a lack of google listings.

 

So why is the cache file so slow to fill up and why isn't google picking up everything? I have had this in place for about 6 months and tweeked things one time and deleted the cache so it could build up again (refresh?). It does a few records a day. Some still aren't done. Is this something that google checks and uses? Doesn't really say. All I know to do if I make major changes to my items or store is to delete the cache file and let it build up again. What makes it fill up? How does that work? What does it mean? To someone who doesn't understand cache or this program at all has no idea about its function. That is not in the documentation.

I have signed up for google, given them my link etc. Done everything I know to do. Is it possible for someone to check my site and see if I have the basics correct? I can give the name of the store. I am super frustrated because a competitor of mine has ALL of his stuff in google and keeps beating me out in the searches. I don't know what he is doing differently. I feel like I missed a boat somewhere. Can you help?

Link to comment
Share on other sites

Ok then I am at square one again. I did everything I possibly can see to do with the base install except the h1 tags. That would not be practical for me as they got lost in the traslation of the files I had in another database that I copied from. I guess to get rid of the fields I want, model and manufacturer I will have to drastically make some changes to where they may be called in and try to understand what the code is doing if I want them gone. Hard to do for a non programmer or developer. I consider myself an ameteur there but I might figure it out thru trial and error. Yeah, I know it is in the documentation. Still this should not be causing a lack of google listings.

 

So why is the cache file so slow to fill up and why isn't google picking up everything? I have had this in place for about 6 months and tweeked things one time and deleted the cache so it could build up again (refresh?). It does a few records a day. Some still aren't done. Is this something that google checks and uses? Doesn't really say. All I know to do if I make major changes to my items or store is to delete the cache file and let it build up again. What makes it fill up? How does that work? What does it mean? To someone who doesn't understand cache or this program at all has no idea about its function. That is not in the documentation.

I have signed up for google, given them my link etc. Done everything I know to do. Is it possible for someone to check my site and see if I have the basics correct? I can give the name of the store. I am super frustrated because a competitor of mine has ALL of his stuff in google and keeps beating me out in the searches. I don't know what he is doing differently. I feel like I missed a boat somewhere. Can you help?

 

The cache is built as pages are accessed, it doesn't matter whether the cache is built or not to the search engines as they will see the same information.

 

All the cache does is reduce load on the server and improve speed by caching / storing meta data as opposed to querying the database on every page load. Even with the cache off KissMT will display the same information, it just means that to do so it will be accessing the database and running through a load of code.

 

If the KissMT cache is very slow to build up this would suggest to me that the site is getting virtually no visitors and the bots are not crawling it .. if you haven't set up a Google webmaster tools account then now would be a good time to do so.

Edited by FWR Media
Link to comment
Share on other sites

Hi,

 

Correct me if i'm wrong, but now kissmt uses the same keywords for the title tag and the description tag on the product pages.

Is it possible to use different keywords for both meta tags?

My SEO advisor told me the title tag could be a possible problem. When using to much keywords, google may see this as title stuffing. And the keyword weight will possibly be to high too.

 

I changed the order of display for the title tag to manufacturer - model number - category

The problem is, that the length of the description tag becomes too short according to google webmaster tools.

 

Any ideas?

Kind regards

Wim

Link to comment
Share on other sites

Hi,

 

Correct me if i'm wrong, but now kissmt uses the same keywords for the title tag and the description tag on the product pages.

Is it possible to use different keywords for both meta tags?

My SEO advisor told me the title tag could be a possible problem. When using to much keywords, google may see this as title stuffing. And the keyword weight will possibly be to high too.

 

I changed the order of display for the title tag to manufacturer - model number - category

The problem is, that the length of the description tag becomes too short according to google webmaster tools.

 

Any ideas?

Kind regards

Wim

For what its worth, in my experience the description tag has very little effect on your search engine ranking

Link to comment
Share on other sites

I have read though most of the post looking for an answer and unless I have missed it I don't know if this has been asked.

 

Is it possible to have multi-word keywords? As it is done now the keywords are like:

car, red, hot, wheels, cheap

 

Would it be possible for it to be like:

car, red, hot wheels, hot, wheels, cheap

 

Thanks!

 

Mike

Link to comment
Share on other sites

I have read though most of the post looking for an answer and unless I have missed it I don't know if this has been asked.

 

Is it possible to have multi-word keywords? As it is done now the keywords are like:

car, red, hot, wheels, cheap

 

Would it be possible for it to be like:

car, red, hot wheels, hot, wheels, cheap

 

Thanks!

 

Mike

 

I just realised yesterday that it doesn't seem support multi-word keywords, there doesn't appear to be anything in the documentation that covers this so any guidance much appreciated!

Link to comment
Share on other sites

  • 3 weeks later...

Hi Robert,

 

Great job again.

Thank you for your great work.

 

Although I have questions :

 

The meta description ends up like this in the source code : <title>KISSMT_HOMEPAGE_TITLE</title>

<meta name="description" content="KISSMT_HOMEPAGE_TITLE, KISSMT_HOMEPAGE_DESCRIPTION">

 

And I would like to know if there is a way to just end up with <meta name="description" content="KISSMT_HOMEPAGE_DESCRIPTION"> since this how my websites have been indexed for the moment with good results.

What's your point of view on this ? Which one is better and why ?

 

Also I cannot get the shortwords or smallwords extensions working in french is there anything to enable to get it working other than creating and uploading the files ?

 

Thanks for any clue

Vincent

 

 

Anyone has a solution for this? no repeated KISSMT_HOMEPAGE_TITLE in Meta Description

I think here is the code:

 /**
       * Root index page
       */
       default:
         KissMT::init()->setCanonical( $this->checkCanonical() );
         $this->parse( KissMT::init()->entities( sprintf( KISSMT_HOMEPAGE_TITLE, STORE_NAME ), $decode = true ), KissMT::init()->entities( sprintf( KISSMT_HOMEPAGE_DESCRIPTION, STORE_NAME ), $decode = false ) );
         break;
     }
   } // end method

 

 

Thanks

Sean

Edited by minglou
Link to comment
Share on other sites

  • 2 weeks later...

Quick question...I have a site loaded here mysite.com/catalog/ and the meta tags seem not to work when I view the page source...thanks in advance for the help!

If it's installed correctly you should see the keywords in the source

Link to comment
Share on other sites

I have read though most of the post looking for an answer and unless I have missed it I don't know if this has been asked.

 

Is it possible to have multi-word keywords? As it is done now the keywords are like:

car, red, hot, wheels, cheap

 

Would it be possible for it to be like:

car, red, hot wheels, hot, wheels, cheap

 

Thanks!

 

Mike

For what it's worth, I am going to try putting dashes in between the words, so for example hot-wheels, hopefully, Google/Bing will ignore the dash and keep the phrase.

Link to comment
Share on other sites

Hi Robert/forum readers

im trying to combine the effects of KissMT addon and the Custom_META_Tags_per_Item addon (http://www.oscommerce.com/community/contributions,3726). What i'm trying to achieve is to have a default of meta tags output via KissMT but where in the admin area catalog (database) I have specifically set the meta tags for a given product or category using the custom meta tags per item addon then this overrides the KissMT meta tags and those are output instead. How can this be achieved or if anyone has already down this then i would be grateful for some advice.

 

Thanks in advance!

regards

Dukes

 

 

 

Important Notice:

 

As standard KissMT currently sets the canonical link of the root page as www.mysite.com/index.php.

 

The reason for this is that there is internal linking to this ( breadcrumb etc. ) whereas there is no internal linking to the version without index.php.

 

It has been brought to my attention that users may wish their root page to be www.mysite.com/ ( without the index.php ) and further investigation following helpful information by squid ( a forum member ) suggests that the version without the index.php could be a better standard option.

 

This will be addressed in the new revision but for current users wishing to have this now .. the code change is below: -

 

open catalog/includes/modules/kiss_meta_tags/abstracts/kiss_modules.php

 

Find ..

 

 

    private function forceHttp( $the_current_canonical_link ) {

 

 

change to ..

 

 

    private function forceHttp( $the_current_canonical_link ) {
     // mod suggested by squid - thanks
     if ( substr( $the_current_canonical_link, -strlen( FILENAME_DEFAULT ), strlen( $the_current_canonical_link ) ) == FILENAME_DEFAULT ) {
       $the_current_canonical_link = substr( $the_current_canonical_link, 0, strlen( $the_current_canonical_link )-strlen( FILENAME_DEFAULT ) );
     }

 

Another point correctly brought to my attention by squid is that if you currently have code in place in .htaccess to redirect www.mysite.com/index.php to www.mysite.com/ this should now be removed as the canonical element will do the same job.

Link to comment
Share on other sites

Hi Robert/forum readers

im trying to combine the effects of KissMT addon and the Custom_META_Tags_per_Item addon (http://www.oscommerce.com/community/contributions,3726). What i'm trying to achieve is to have a default of meta tags output via KissMT but where in the admin area catalog (database) I have specifically set the meta tags for a given product or category using the custom meta tags per item addon then this overrides the KissMT meta tags and those are output instead. How can this be achieved or if anyone has already down this then i would be grateful for some advice.

 

Thanks in advance!

regards

Dukes

 

 

 

 

 

Although it is outside of the scope of support to deal with individual requirements: -

 

You would need to look at the method ..

 

 

KissMT_Modules::store()

 

If you store your data to the cache then KissMT will not use it's own functionality it will use the cached data.

Link to comment
Share on other sites

Just installed this add-on and found that my product_info.php file does not have a

 

<title><?php echo TITLE; ?></title>

 

line but has the following

 

?>

<!doctype html public "-//W3C//DTD HTML 4.01 Transitional//EN">

<html <?php echo HTML_PARAMS; ?>>

<head>

<meta http-equiv="Content-Type" content="text/html; charset=<?php echo CHARSET; ?>">

<!-- begin Extra Product Fields //-->

<meta name="DCTERMS.modified" content ="<?php echo $datemod;?>">

<title><?php echo TITLE . ': ' . tep_output_string_protected($pname['products_name']); ?></title>

<meta name="Description" content="<?php echo tep_output_string($pname['products_name']); ?>">

<?php

$keywords = array();

foreach ($epf as $e) {

$mt = ($e['uses_list'] && !$e['multi_select'] ? ($pname[$e['field']] == 0) : !tep_not_null($pname[$e['field']]));

if ($e['keyword'] && !$mt) {

if ($e['uses_list']) {

if ($e['multi_select']) {

$values = explode('|', trim($pname[$e['field']], '|'));

foreach ($values as $val) {

$keywords[] = tep_output_string(tep_get_extra_field_list_value($val));

}

} else {

$keywords[] = tep_output_string(str_replace(' | ', ', ', tep_get_extra_field_list_value($pname[$e['field']], $e['show_chain'])));

}

} else {

$keywords[] = tep_output_string($pname[$e['field']]);

}

}

}

if (!empty($keywords))

echo '<meta name ="Keywords" content="' . implode(', ', $keywords) . '">' . "\n";

?>

<!-- end Extra Product Fields //-->

 

<base href="<?php echo (($request_type == 'SSL') ? HTTPS_SERVER : HTTP_SERVER) . DIR_WS_CATALOG; ?>">

<link rel="stylesheet" type="text/css" href="stylesheet.css">

<script language="javascript"><!--

function popupWindow(url) {

window.open(url,'popupWindow','toolbar=no,location=no,directories=no,status=no,menubar=no,scrollbars=no,resizable=yes,copyhistory=no,width=100,height=100,screenX=150,screenY=150,top=150,left=150')

}

 

My question is can I add the replacement line for KissMT and if so where?

 

Julie

Link to comment
Share on other sites

Just installed this add-on and found that my product_info.php file does not have a

 

<title><?php echo TITLE; ?></title>

 

line but has the following

 

...

 

My question is can I add the replacement line for KissMT and if so where?

 

Julie

 

Replacing all of the following rubbish looks good ..

 

<!-- begin Extra Product Fields //-->
<meta name="DCTERMS.modified" content ="<?php echo $datemod;?>">
<title><?php echo TITLE . ': ' . tep_output_string_protected($pname['products_name']); ?></title>
<meta name="Description" content="<?php echo tep_output_string($pname['products_name']); ?>">
<?php
$keywords = array();
foreach ($epf as $e) {
$mt = ($e['uses_list'] && !$e['multi_select'] ? ($pname[$e['field']] == 0) : !tep_not_null($pname[$e['field']]));
if ($e['keyword'] && !$mt) {
if ($e['uses_list']) {
if ($e['multi_select']) {
$values = explode('|', trim($pname[$e['field']], '|'));
foreach ($values as $val) {
$keywords[] = tep_output_string(tep_get_extra_field_list_value($val));
}
} else {
$keywords[] = tep_output_string(str_replace(' | ', ', ', tep_get_extra_field_list_value($pname[$e['field']], $e['show_chain'])));
}
} else {
$keywords[] = tep_output_string($pname[$e['field']]);
}
}
}
if (!empty($keywords))
echo '<meta name ="Keywords" content="' . implode(', ', $keywords) . '">' . "\n";
?>
<!-- end Extra Product Fields //-->

Edited by FWR Media
Link to comment
Share on other sites

Thank you for your quick response on my last question. The first part of KissMT is working very nicely.

 

Now i am trying to add the optional extras. did something very wrong the first time and had to do a restore. Now I am trying again. And received the following error message when attempting to run installer.php

 

Installer Messages: Stage - 1

Below you will see some checks - if none are red then we are ready to install.

 

 

* At least one of the configuration values already exists! XXX

* No tables to insert it seems.

* No tables to alter it seems.

* At least one of the fields to insert already exists! XXX

* No fields to alter it seems.

 

 

There was at least one error, we therefore cannot install.

 

Database fabrih5_osc1 has not been touched.

 

Please check database fabrih5_osc1 against the contribution for conflicts.

 

Where can I get more information to check my database and the configuration values?

 

Julie

Link to comment
Share on other sites

Rob,

 

I just wanted to add 'another' big thumbs up to you and your KissMT Dynamic SEO Meta & Canonical Header Tags contribution. Since installing, I have seen an increase in sales by nearly 300%! That's without spending any time in making further use of your extended options. So, 300% increase 'out-of-the-box'. Not bad going! I highly recommend anyone using the other header tag contributions giving FWR Media's module a go instead!

 

Thanks again,

James

Link to comment
Share on other sites

O.K. I've gone back one more backup. This should have removed everything. Yet files from this add-on still seem to remain on the system and the KissMt Meta Tags screen is still on the Configuration Menu. I removed the files I could find, they were all cache files and one language file.

 

What else do I need to do to clear this up for a clean reinstall.

 

Julie

Link to comment
Share on other sites

O.K. I've gone back one more backup. This should have removed everything. Yet files from this add-on still seem to remain on the system and the KissMt Meta Tags screen is still on the Configuration Menu. I removed the files I could find, they were all cache files and one language file.

 

What else do I need to do to clear this up for a clean reinstall.

 

Julie

You resorted to a back up of the sql databse as well?

Link to comment
Share on other sites

O.K. I've gone back one more backup. This should have removed everything. Yet files from this add-on still seem to remain on the system and the KissMt Meta Tags screen is still on the Configuration Menu. I removed the files I could find, they were all cache files and one language file.

 

What else do I need to do to clear this up for a clean reinstall.

 

Julie

 

It is nothing to do with files they are database settings.

Link to comment
Share on other sites

Hello Robert!

 

great contribution - I just tried the base install and had a look the products

and index (also changed kissmt.php in language files) and the metatags work

real perfect.

 

but I have much troubles with the productinformation in GERMAN which can be seen by the

customer - the additional characters are put out totaly wrong :(

also in index

 

 

 

Greecom wrote on first page:

 

 

Hi Robert

All on web and source is displaing the same like should be in my language "ě č ř z" but only in metatags source view displaing with "í"

 

<title>Přísně tajné Akční Sibiř Tunguzka</title>

<meta name="description" content="Přísně tajné Akční Sibiř Tunguzka obrovská exploze neznámého původu ohnivé sobě zkázu. později už...">

<meta name="keywords" content="Přísně,tajné,Akční,Sibiř,">

 

 

 

BUT I have the troubles that also in the browser the wrong caracters are put out – I also use utf-8

 

when I restore my original index.php and product_info.php - all characters are OK but when I use your code it is not possible...

 

 

you wrote: "the characters should be converted to html entities"

how to do that?!?

 

hope you can help - the contrib looks realy good for use :)

 

 

I tried to explain as good as possible – sorry, I am from Austria ;)

 

greetings :)

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