Hi
You can. I'm not sure if I can guide you, cause it has been a while since I did that, but look at :
admin/includes/modules/product_bookx/ and compare with the normal product.
The files are this ones:
collect_info.php
copy_to_confirm.php
delete_product_confirm.php
preview_info.php
update_product.php
Ex: For the update , I have a include file, because bookx looks for a additional update_product*.php around line 380 ( I have 0.9.4-revision4 of bookx), but in others I dont', because I became aware of that latter. So see if you can take advantage of that.
PHP Code:
//** look for additional update_product*.php files and include now **//
$incl_dir = @dir(DIR_FS_ADMIN . '/includes/modules/product_bookx');
while ($file = $incl_dir->read()) {
if ('update_product_' == substr($file, 0, 15)) {
include_once DIR_FS_ADMIN . '/includes/modules/product_bookx/' . $file; // This should handle any extra values collected in collect_info*.php
}
}
$incl_dir->close();
So I created a update_product_seo.php that has ( in the same folder)
PHP Code:
// BEGIN CEON URI MAPPING 1 of 1
require_once(DIR_WS_CLASSES . 'class.CeonURIMappingAdminProductPages.php');
$ceon_uri_mapping_admin = new CeonURIMappingAdminProductPages();
$ceon_uri_mapping_admin->updateProductHandler($products_id, $zc_products->get_handler($product_type));
// END CEON URI MAPPING 1 of 1
For the collect_info.php same thing, created a collect_info_seo.php,
PHP Code:
// BEGIN CEON URI MAPPING 1 of 2
require_once(DIR_WS_CLASSES . 'class.CeonURIMappingAdminProductPages.php');
$ceon_uri_mapping_admin = new CeonURIMappingAdminProductPages();
$ceon_uri_mapping_admin->collectInfoHandler();
// END CEON URI MAPPING 1 of 2
and around line 1158
PHP Code:
<?php if (isset($extra_html_end)) echo $extra_html_end; // this was possibly filled by an included file above ?>
<?php // BEGIN CEON URI MAPPING 2 of 2
echo $ceon_uri_mapping_admin->collectInfoBuildURIMappingFields();
// END CEON URI MAPPING 2 of 2 ?>
In the preview_info.php , it's diferent (don't ask me why)
Around line 84 you'll see :
PHP Code:
foreach ($bookx_author_ids as $key => $author_id) {
$pInfo->authors_display .= (!empty($pInfo->authors_display) ? ' | ' : '') . ($bookx_author_type_ids ? bookx_get_author_type_description($bookx_author_type_ids[$key], (int)$_SESSION['languages_id']) . ': ' : '') . bookx_get_author_name($author_id);
}
}
// BEGIN CEON URI MAPPING 1 of 4
require_once(DIR_WS_CLASSES . 'class.CeonURIMappingAdminProductPages.php');
$ceon_uri_mapping_admin = new CeonURIMappingAdminProductPages();
$ceon_uri_mapping_admin->productPreviewProcessSubmission($current_category_id);
// END CEON URI MAPPING 1 of 4
} else {
Around line 146
PHP Code:
while (!$genres->EOF) {
$pInfo->genres_display .= (!empty($pInfo->genres_display) ? ' | ' : '') . $genres->fields['genre_description'];
$genres->MoveNext();
}
// BEGIN CEON URI MAPPING 2 of 4
require_once(DIR_WS_CLASSES . 'class.CeonURIMappingAdminProductPages.php');
$ceon_uri_mapping_admin = new CeonURIMappingAdminProductPages();
$ceon_uri_mapping_admin->productPreviewInitialLoad((int) $_GET['pID'],
$zc_products->get_handler((int) $_GET['product_type']));
// END CEON URI MAPPING 2 of 4
}
Line 274
PHP Code:
<tr>
<td class="main"><?php echo sprintf(TEXT_PRODUCT_MORE_INFORMATION, $pInfo->products_url); ?></td>
</tr>
<?php
}
?>
<?php // BEGIN CEON URI MAPPING 3 of 4
$ceon_uri_mapping_admin->productPreviewOutputURIMappingInfo($languages[$i]);
// END CEON URI MAPPING 3 of 4 ?>
<tr>
<td><?php echo zen_draw_separator('pixel_trans.gif', '1', '10'); ?></td>
</tr>
Around 353
PHP Code:
echo ( (isset($_GET['search']) && !empty($_GET['search'])) ? zen_draw_hidden_field('search', $_GET['search']) : '') . ( (isset($_POST['search']) && !empty($_POST['search']) && empty($_GET['search'])) ? zen_draw_hidden_field('search', $_POST['search']) : '');
// BEGIN CEON URI MAPPING 4 of 4
echo $ceon_uri_mapping_admin->productPreviewBuildHiddenFields();
// END CEON URI MAPPING 4 of 4
echo zen_image_submit('button_back.gif', IMAGE_BACK, 'name="edit"') . ' ';
copy_to_confirm.php
PHP Code:
if ($_POST['copy_discounts'] == 'copy_discounts_yes') {
zen_copy_discounts_to_product($old_products_id, (int)$dup_products_id);
}
// BEGIN CEON URI MAPPING 1 of 1
require_once(DIR_WS_CLASSES . 'class.CeonURIMappingAdminProductPages.php');
$ceon_uri_mapping_admin = new CeonURIMappingAdminProductPages();
$ceon_uri_mapping_admin->copyToConfirmHandler($products_id_from, $products_id_to,
$product->fields['products_type'], $zc_products->get_handler($product->fields['products_type']),
$categories_id);
// END CEON URI MAPPING 1 of 1
But I also have the metatags ( not entirely working ), so in this folder I have
collect_info_metatags.php
collect_info_seo.php
delete_product_confirm.php
preview_info.php
update_product_seo.php
collect_info.php
copy_to_confirm.php
preview_info_meta_tags.php
update_product.php
I don't remember changing anything in meta_tags files. I think I just copy from modules/product
Note: Metatags are working as normal product, but as I remember without them, I couldn't had any metatags at all.
This is what I remember.... hope it can guide you.
Bookmarks