You need to integrate and merge the changes in both the Ultimate SEO contribution and the Header Tags contribution...
...following the instructions to the letter will involve one or other of the contributions over-writing.
I eventually figured this out after two days.
$sql_data_array = array('categories_name' => tep_db_prepare_input($categories_name_array[$language_id]),
'categories_seo_url' => tep_db_prepare_input($categories_seo_url_array[$language_id]),
'categories_htc_title_tag' => tep_db_prepare_input($categories_htc_title_array[$language_id]),
'categories_htc_desc_tag' => tep_db_prepare_input($categories_htc_desc_array[$language_id]),
'categories_htc_keywords_tag' => tep_db_prepare_input($categories_htc_keywords_array[$language_id]),
'categories_htc_description' => tep_db_prepare_input($categories_htc_description_array[$language_id]));
Just above that, you should have:
for ($i=0, $n=sizeof($languages); $i<$n; $i++) {
$categories_name_array = $HTTP_POST_VARS['categories_name'];
$categories_seo_url_array = $HTTP_POST_VARS['categories_seo_url'];
$categories_htc_title_array = $HTTP_POST_VARS['categories_htc_title_tag'];
$categories_htc_desc_array = $HTTP_POST_VARS['categories_htc_desc_tag'];
$categories_htc_keywords_array = $HTTP_POST_VARS['categories_htc_keywords_tag'];
$categories_htc_description_array = $HTTP_POST_VARS['categories_htc_description'];
Further down, you should have:
$sql_data_array = array('products_name' => tep_db_prepare_input($HTTP_POST_VARS['products_name'][$language_id]),
'products_description' => tep_db_prepare_input($HTTP_POST_VARS['products_description'][$language_id]),
'products_url' => tep_db_prepare_input($HTTP_POST_VARS['products_url'][$language_id]),
'products_seo_url' => tep_db_prepare_input($HTTP_POST_VARS['products_seo_url'][$language_id]),
'products_head_title_tag' => tep_db_prepare_input($HTTP_POST_VARS['products_head_title_tag'][$language_id]),
'products_head_desc_tag' => tep_db_prepare_input($HTTP_POST_VARS['products_head_desc_tag'][$language_id]),
'products_head_keywords_tag' => tep_db_prepare_input($HTTP_POST_VARS['products_head_keywords_tag'][$language_id]));
if ($action == 'insert_product') {
and then:
tep_db_query("insert into " . TABLE_PRODUCTS . " (products_quantity, products_model,products_image, products_price, products_date_added, products_date_available, products_weight, products_status, products_tax_class_id, manufacturers_id) values ('" . tep_db_input($product['products_quantity']) . "', '" . tep_db_input($product['products_model']) . "', '" . tep_db_input($product['products_image']) . "', '" . tep_db_input($product['products_price']) . "', now(), " . (empty($product['products_date_available']) ? "null" : "'" . tep_db_input($product['products_date_available']) . "'") . ", '" . tep_db_input($product['products_weight']) . "', '0', '" . (int)$product['products_tax_class_id'] . "', '" . (int)$product['manufacturers_id'] . "')");
$dup_products_id = tep_db_insert_id();
$description_query = tep_db_query("select language_id, products_name, products_seo_url, products_description, products_head_title_tag, products_head_desc_tag, products_head_keywords_tag, products_url from " . TABLE_PRODUCTS_DESCRIPTION . " where products_id = '" . (int)$products_id . "'");
while ($description = tep_db_fetch_array($description_query)) {
tep_db_query("insert into " . TABLE_PRODUCTS_DESCRIPTION . " (products_id, language_id, products_name, products_seo_url, products_description, products_head_title_tag, products_head_desc_tag, products_head_keywords_tag, products_url, products_viewed) values ('" . (int)$dup_products_id . "', '" . (int)$description['language_id'] . "', '" . tep_db_input($description['products_name']) . "', '" . tep_db_input($description['products_seo_url']) . "','" . tep_db_input($description['products_description']) . "', '" . tep_db_input($description['products_head_title_tag']) . "', '" . tep_db_input($description['products_head_desc_tag']) . "', '" . tep_db_input($description['products_head_keywords_tag']) . "', '" . tep_db_input($description['products_url']) . "', '0')");
}
I think that's all.