Jump to content
Jack_mcs

Header Tags SEO

Recommended Posts

When I go to fill tags however I get the following error message for each item:

 

 Failed to load page from shop: http://www.url.co.uk/product_info.php?products_id=18&language=en

 

When actually following the url manually it works fine

 

I apologise if this has already been addressed but a search did not show any results.

 

Any ideas?

Fill Tags doesn't use urls unless some of the overrides are used. Is that what you are doing? What are the results from the test routine?

 

Jack

Share this post


Link to post
Share on other sites
with Information page unlimited you only can define a same tilte for all the pages?

Each page can have its own title and tags.

 

Jack

Share this post


Link to post
Share on other sites

The test was fine, I have tried running it again and this time the error did not occur.

 

all pages seem to have the correct header tags so all seems well.

 

Thanks a lot and keep up the fantastic work!

Share this post


Link to post
Share on other sites

Jack,

 

I believe I am running ver 3.1.0. Is there an easy way to find out what ver I am running without comparing files with the newer ver? At top of the files I see this:

 

$Id: header_tags_fill_tags.php,v 1.0 2005/08/25

Originally Created by: Jack York - http://www.oscommerce-solution.com

osCommerce, Open Source E-Commerce Solutions

http://www.oscommerce.com

 

Keep up the good work.

 

Bennett

Share this post


Link to post
Share on other sites
Jack,

 

I believe I am running ver 3.1.0. Is there an easy way to find out what ver I am running without comparing files with the newer ver? At top of the files I see this:

 

 

 

Keep up the good work.

 

Bennett

In version 3.14, a version string was added to Page Control. If you have a version earlier than that, there's no easy way to tell. You can look at the history and/or update docs and compare some change mentioned with your installation.

 

Jack

Share this post


Link to post
Share on other sites

Hi Jack

 

I've just updated to 3.1.6 from 3.1.5 and when I go to 'Page Control' and select and page I get the following error:

 

1054 - Unknown column 'page_logo_1' in 'field list'

select page_title, page_description, page_keywords, page_logo, page_logo_1 as alt_1, append_default_title as opt_0, append_default_description as opt_1, append_default_keywords as opt_2, append_default_logo as opt_3, append_category as opt_4, append_manufacturer as opt_5, append_product as opt_6, append_root as opt_7, sortorder_title as opt_8, sortorder_description as opt_9, sortorder_keywords as opt_10, sortorder_logo as opt_11, sortorder_category as opt_12, sortorder_manufacturer as opt_13, sortorder_product as opt_14, sortorder_root as opt_15 from headertags where page_name like 'index.php' and language_id = '1' LIMIT 1

[TEP STOP]

 

 

Do you know what the problem is here? Do I need to run any of the .sql files included in the contribution to update?

Share this post


Link to post
Share on other sites

I just installed the latest version of the contribution, and there are two things that I would consider bugs. The first (and more serious) is that in admin/includes/functions/general.php, a tep_hide_session_id() function is added, but in a clean RC2a (just downloaded today), that function is already defined in admin/includes/functions/html_output.php. This causes an error about duplicate function definitions that breaks admin. Perhaps this function should only be added to MS2? Possibly in html_output.php rather than general.php (in case someone wants to upgrade MS2 to RC2a later).

 

The second, less serious, perhaps purely pedantic, is that the following code (in the instructions, product_info.php, and index.php; for the RC2 files -- I didn't look at the MS2 files) should be

<?php
/*** Begin Header Tags SEO ***/
if ( file_exists(DIR_WS_INCLUDES . 'header_tags.php') ) {
 require(DIR_WS_INCLUDES . 'header_tags.php');
} else {
?>
<meta http-equiv="Content-Type" content="text/html; charset=<?php echo CHARSET; ?>">
<title><?php echo TITLE; ?></title>
<?php
}
/*** End Header Tags SEO ***/
?>

rather than

<?php
/*** Begin Header Tags SEO ***/
if ( file_exists(DIR_WS_INCLUDES . 'header_tags.php') ) {
 require(DIR_WS_INCLUDES . 'header_tags.php');
} else {
?>
<title><?php echo TITLE; ?></title>
<?php
}
/*** End Header Tags SEO ***/
?>

This will obviously not cause an issue for anyone who has header_tags.php installed correctly. However, if we're only worrying about the correct install case, why not make it simpler and just use (as a replacement for the above code)

<?php require(DIR_WS_INCLUDES . 'header_tags.php'); ?>

which is just as good in the correct install case and will throw an error for certain incorrect installs (rather than producing incorrect output).


Always backup before making changes.

Share this post


Link to post
Share on other sites
Hi Jack

 

I've just updated to 3.1.6 from 3.1.5 and when I go to 'Page Control' and select and page I get the following error:

 

1054 - Unknown column 'page_logo_1' in 'field list'

select page_title, page_description, page_keywords, page_logo, page_logo_1 as alt_1, append_default_title as opt_0, append_default_description as opt_1, append_default_keywords as opt_2, append_default_logo as opt_3, append_category as opt_4, append_manufacturer as opt_5, append_product as opt_6, append_root as opt_7, sortorder_title as opt_8, sortorder_description as opt_9, sortorder_keywords as opt_10, sortorder_logo as opt_11, sortorder_category as opt_12, sortorder_manufacturer as opt_13, sortorder_product as opt_14, sortorder_root as opt_15 from headertags where page_name like 'index.php' and language_id = '1' LIMIT 1

[TEP STOP]

 

 

Do you know what the problem is here? Do I need to run any of the .sql files included in the contribution to update?

That field was added in 3.14 and not changed in this last release so I can't see how the problem is popping up now. But you can run these mysql commands and it should fix it.
ALTER TABLE `headertags` ADD `page_logo_1` VARCHAR( 255 ) NOT NULL AFTER `page_logo`;
ALTER TABLE `headertags` ADD `page_logo_2` VARCHAR( 255 ) NOT NULL AFTER `page_logo_1`;
ALTER TABLE `headertags` ADD `page_logo_3` VARCHAR( 255 ) NOT NULL AFTER `page_logo_2`;
ALTER TABLE `headertags` ADD `page_logo_4` VARCHAR( 255 ) NOT NULL AFTER `page_logo_3`;

 

Jack

Share this post


Link to post
Share on other sites
I just installed the latest version of the contribution, and there are two things that I would consider bugs. The first (and more serious) is that in admin/includes/functions/general.php, a tep_hide_session_id() function is added, but in a clean RC2a (just downloaded today), that function is already defined in admin/includes/functions/html_output.php. This causes an error about duplicate function definitions that breaks admin. Perhaps this function should only be added to MS2? Possibly in html_output.php rather than general.php (in case someone wants to upgrade MS2 to RC2a later).

Thus the reason for this statement in the installation instructions

Add the following to admin/includes/function/general.php before the last ?>

IF it does not already exist in that file.

The second, less serious, perhaps purely pedantic, is that the following code (in the instructions, product_info.php, and index.php; for the RC2 files -- I didn't look at the MS2 files) should be
<?php
/*** Begin Header Tags SEO ***/
if ( file_exists(DIR_WS_INCLUDES . 'header_tags.php') ) {
 require(DIR_WS_INCLUDES . 'header_tags.php');
} else {
?>
<meta http-equiv="Content-Type" content="text/html; charset=<?php echo CHARSET; ?>">
<title><?php echo TITLE; ?></title>
<?php
}
/*** End Header Tags SEO ***/
?>

rather than

<?php
/*** Begin Header Tags SEO ***/
if ( file_exists(DIR_WS_INCLUDES . 'header_tags.php') ) {
 require(DIR_WS_INCLUDES . 'header_tags.php');
} else {
?>
<title><?php echo TITLE; ?></title>
<?php
}
/*** End Header Tags SEO ***/
?>

This will obviously not cause an issue for anyone who has header_tags.php installed correctly. However, if we're only worrying about the correct install case, why not make it simpler and just use (as a replacement for the above code)

<?php require(DIR_WS_INCLUDES . 'header_tags.php'); ?>

which is just as good in the correct install case and will throw an error for certain incorrect installs (rather than producing incorrect output).

You're correct. The first error has been there since the beginning of Header Tags so I don't even think about it anymore. The second, while simpler, will cause a live shop to fail if the installer forgets to upload the files, which happens quite often. While some people would realize the mistake right away, others may not have a clue on how to fix it so that could cause their site to be down for hours, easily. And that's not worth saving a few lines of code.

 

Jack

Share this post


Link to post
Share on other sites
Thus the reason for this statement in the installation instructions
Add the following to admin/includes/function/general.php before the last ?>

IF it does not already exist in that file.

However, the function does not exist in the file general.php. In a normal install, it would be in html_output.php. I didn't add the function to the file manually. I had a fresh install. I copied the new files over the existing files.

 

As things stand, copying files with RC2a is broken and won't work. Further, even if someone did follow the instructions, they would still break things, because they would look in general.php, find that the function is not there, add it to general.php, and then the copy in html_output.php would break things. The instructions should say,

===================================================================
Add the following to admin/includes/function/html_output.php before the last ?>
IF it does not already exist in that file.

////
// Hide form elements
 function tep_hide_session_id() {
$string = '';

if (defined('SID') && tep_not_null(SID)) {
  $string = tep_draw_hidden_field(tep_session_name(), tep_session_id());
}

return $string;
 }

rather than general.php


Always backup before making changes.

Share this post


Link to post
Share on other sites
However, the function does not exist in the file general.php. In a normal install, it would be in html_output.php. I didn't add the function to the file manually. I had a fresh install. I copied the new files over the existing files.
You're correct. I placed it in the wrong file. I'll correct that in the next version.

 

Jack

Share this post


Link to post
Share on other sites

I see this TEST

STS Error: explain

STS is running and the head code in the allprods.php file has Header Tags code installed, which is a mistake.

 

This code in the stock allprods.php I already deleted.

// BOF: WebMakers.com Changed: Header Tag Controller v2.55 
// Replaced by header_tags.php 
if ( file_exists(DIR_WS_INCLUDES . 'header_tags.php') ) { 
 require(DIR_WS_INCLUDES . 'header_tags.php'); 
} else { 
?> 
 <title><?php echo TITLE ?></title> 
<?php 
} 
// EOF: WebMakers.com Changed: Header Tag Controller v1.0
?>

I replaced it with

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

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

 

Head tag seo is now in working order for allprods.php, Why the error message still appear?

Share this post


Link to post
Share on other sites
I see this TEST

STS Error: explain

STS is running and the head code in the allprods.php file has Header Tags code installed, which is a mistake.

 

Head tag seo is now in working order for allprods.php, Why the error message still appear?

Are you sure the error is still for that file? If it is, double check the file. Maybe the change didn't take. If the change did take, then rename the allprods file to something else and run the test again. Does it still fail? Be sure to rename the file back to the original name.

 

Jack

Share this post


Link to post
Share on other sites

I deleted catalog/allprods.php, No more error.

then put a file called allprodsaaa.php

again: allprodsaaa.php file has Header Tags code installed, which is a mistake.

this is strange.

Share this post


Link to post
Share on other sites
I deleted catalog/allprods.php, No more error.

then put a file called allprodsaaa.php

again: allprodsaaa.php file has Header Tags code installed, which is a mistake.

this is strange.

Hmm, I don't have any ideas on how to help. The code is reading the actual file so I can't see how if is saying the code exists unless it really does.

 

Jack

Share this post


Link to post
Share on other sites
Hi...

for ($i=0, $n=sizeof($languages); $i<$n; $i++) {

$language_id = $languages[$i]['id'];

$sql_data_array = array('manufacturers_url' => tep_db_prepare_input($_POST['manufacturers_url'][$language_id]),

'manufacturers_description' => tep_db_prepare_input($_POST['manufacturers_description'][$language_id]));

 

and there is no mention of $manufacturers_url_array anywhere

 

Help - what should I do! All help much appreciated

You're manufacturer's file has been altered by some other contribution. I don't use that contribution so I can't answer youir question. You can ask in the support thread of that contribution or try to figure it out yourself.

 

Jack

Edited by Jack_mcs

Share this post


Link to post
Share on other sites

I seem to have survived the monstrous install!

Took me some time to realize I had ignore existing files set on my ftp client

"...hmm..... why does nothing seem changed?"

 

A few problems :

1)

I see no mention of in the docs file how the H E double toothpicks you turn the home (index) page title on?

All I have is "new home page title".

 

 

2)

The new logo text does not work on the index page either.

Ideas?

 

The edits are in place in header.php, and in index.php.

The titles seem to be mostly working elsewhere.

 

 

3)

One Products pages, all titles have - products new home - within them

What should be in that place?

 

 

4)

On Categories pages, all titles have - New Home page title -

What should be in that place?

 

 

(I presume these are no brainers, but as I have demonstrated to you before Jack, I have no brain):

 

Any reason why the Store name is not on every page title?

 

My old install of IPUV contrib does not appear in the lists as editable.

I will update that installation and pass on any quirks IF there are any afterwards.

 

Also, this was merged with prior edits from Quantity Price Breaks Per Product contrib with no issues.

If someone happens to use that , I will be happy to offer a little guidance.

 

As usual Jack, you rock.

Thanks

 

 

Corey

Share this post


Link to post
Share on other sites
I seem to have survived the monstrous install!

Took me some time to realize I had ignore existing files set on my ftp client

"...hmm..... why does nothing seem changed?"

 

A few problems :

1)

I see no mention of in the docs file how the H E double toothpicks you turn the home (index) page title on?

All I have is "new home page title".

That is the home page title. You need to edit it. Did you try reading the instructions, specifically the How to Operate file? Did you run the test routine?

 

Jack

Share this post


Link to post
Share on other sites
That is the home page title. You need to edit it. Did you try reading the instructions, specifically the How to Operate file? Did you run the test routine?

 

Jack

 

Wow thanks for the speedy reply.

 

Test came up clean.

The install was smooth, Jack, other than a lot of merging for my somewhat heavily customized shop.

Only hickup was the double function entry that wasn't to be in general.php - which was an easy fix.

 

Lets say I did a cursory read of the instructions....

When I grepped for "new home page title" and found nothing I then glazed over after reading 2nd part and missed the index.php reference.

 

I am finding the details as I read thru and glaze over for the nth time

 

Once again, thanks for a tremendous effort.

 

 

Corey

Share this post


Link to post
Share on other sites

I cant get into admin anymore. Cataloge is doing fine. After editing the Admin Files, I get a Fatal error:

 

 

Fatal error: Cannot redeclare tep_hide_session_id() (previously declared in /xxxx/25/xxx/htdocs/mydomain/osco/admin/includes/functions/general.php:1402) in /xxxx/25/xxx/htdocs/mydomain/osco/admin/includes/functions/html_output.php on line 304

Edited by nettili

Share this post


Link to post
Share on other sites
I cant get into admin anymore. Cataloge is doing fine. After editing the Admin Files, I get a Fatal error:

 

 

Fatal error: Cannot redeclare tep_hide_session_id() (previously declared in /xxxx/25/xxx/htdocs/mydomain/osco/admin/includes/functions/general.php:1402) in /xxxx/25/xxx/htdocs/mydomain/osco/admin/includes/functions/html_output.php on line 304

 

I had that problem too - I think the installation instructions were not quite clear enough on this point - you may have had the tep_hide_session function defined in html_output.php either from another contribution or whatever. It only needs to be defined once so take it out of general.php (i.e. ignore that step) if you already have the function defined elsewhere.

 

cheers

 

Kdb

Share this post


Link to post
Share on other sites
This is the support thread for the new Header Tags SEO contribution. It is based on the Header Tags Controller but is not compatible.

 

Why the new name?

There are a couple of reasons for this. First, so much has changed in the code that it is mostly a different package and maintaining it would be difficult if it were considered just an update. But beyond that, a lot of people mistakenly confuse the Header Tags Controller as just a meta tags handler. It is that but has gone beyond that basic function for some time now. So to compare it to the other meta tags contributions is just wrong. And I should say here that if all you are looking for is a way to handle the meta tags of your shop, you should not install this contribution since it is definitely overkill. But when you consider that the keywords meta tag is rarely used by google at all nowadays, I can't imagine why someone would want to install a package that relied on that tag so much. And that is the real reason for the new name. This contribution is the only one of its kind to tie together so many Search Engine Optimization (SEO) tricks, that the new namejust made sense.

 

What's the difference?

The following are the major changes (or the ones I could remember) in this new

contribution:

 

-> The code is 100% langage compliant.

-> Removed the english/header_tags.php file in favor of database entries.

-> Fixed a bug introduced in a previous version. A spelling mistake would make Page Control fail in some cases. I only mention this here because it was a nasty little bug I could never locate. So anyone having that problem should consider upgrading.

-> Added control options to admin->Configuration.

-> Added additional meta tag options. It is doubtful these will be used that much but a number of requests were received for this option so it was added.

-> Added an option to view the title and meta tags on the actual web page from admin.

-> Added Social Bookmark code.

-> Added code to apply mouseover text to the sites logo - unique for each page.

-> Added code to have the breadcrumb use the header tags titles.

-> Added an exclude list in admin/includes/functions/header_tags.php that prevents header tags code from being added to certain files (like checkout pages). This is because those pages don't need tags and excluding them will simplify matters.

-> Added option to Page Control and Fill Tags so that the keywords can be dynamically generated from the pages on the site. Currently, the code only supports single keywords but I plan on changing that. There is an option in admin to only pick keywords that fall within the keyword density settings.

-> Added an automatic page add feature. You still have to edit the actual file in the root but that's all.

-> Added easy install instruction for STS shops. There is just one change to make and the two contribution work together.

-> Added code to have the new features work with BTS based shops. There may be a few cases where an option doesn't work due to how BTS handles the files, but they should be minimal and not anything to cause a great stir.

-> Changed how title, description and keywords are built. This should provide more flexibility for those that want that option. Each item has a sort order and is displayed in the string of text based on that sort order. So, for example, the title of a page can contain some entered text, the default title and the category and manufacturers names (if applicable), in any order.

-> Added an Un-Install file to completely remove Header Tags from the database. This should make testing and troubleshooting easier.

-> Added code to use curl instead of standard php file calls. The code will try curl first and then switch to a file command if it is not present.

-> Tested in MS2, RC2, STS and BTS shops.

 

 

Special thanks to the following for their suggestions:

 

bkellum

java roasters

surfalot

 

A lot of time went into creating this contribuiton. I hope it proves useful.

 

Jack

It's impressive, over 160 pages for this topic only. This module must be a very popular one.

 

Here's a few queries I have re Header Tags SEO:

 

I’d like to install Header Tags SEO module but don’t have access to phpMyAdmin. In this case the module’s installation instructions suggest that we upload the headertags_seo_install.php file to our server, into the same directory that our index.php file is in. However, our OsCommerce shop is currently installed in a separate folder on our .com site, therefore we have one index.php file which is in the root directory (i.e. www.mysite.com), and another one in the OsCommerce folder (www.mysite.com/catalog). Will I upload the headertags_seo_install.php file in the www.mysite.com/catalog folder then? Please advise.

 

Also, as we only have a few products in our shop at present, we want to fill in every single title, meta description and meta keyword field for every single OsCommerce page manually. Basically, we don’t want the module to use any algorithm whatsoever so that we can enter on every page whatever text we want for the title, meta description and meta keywords irrespective of product names, product descriptions etc. Is this something that we can achieve with the Header Tags SEO module? Also, what are the limitations in terms of maximum text length, please? (I had a look at the screenshots that came with the installation files, but couldn’t figure it out).

 

If there is already an answer in the forum for my questions, would you mind pointing me into the right direction?

Many thanks.

Share this post


Link to post
Share on other sites

After updating from v3.1.5 to v3.1.6 the Admin->Header Tags SEO page doesn't show up under the Configuration Menu.

Share this post


Link to post
Share on other sites
After updating from v3.1.5 to v3.1.6 the Admin->Header Tags SEO page doesn't show up under the Configuration Menu.

That missing section is held in the database but there were not any database changes between 3.1.5 and 3.1.6 so the loss of that couldn't be due to the update. If you have an older version of Ultimate SEO installed, it will erase those options from the database. Otherwise, I can't think what might have cuased it. You can run the update sql file but that will replace your Header Tags tables, which mean you will need to re-enter the text for the regular pages.

 

Jack

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

×