Um mit Easypopulate auch über die Importdatei Löschen zu können mache man folgendes.

In der Datei easypopulate.php
Suche nach

$deleteit

alles darunter muss so aussehen.
//
global $active, $inactive, $zero_qty_inactive, $deleteit;
$active = 'Active';
$inactive = 'Inactive';
$deleteit = 'Delete'; // jetzt funktioniert es
$zero_qty_inactive = true;
//

Dann suche nach

$row['v_status'] = $inactive;

und ersetze es mit

$row['v_status'] = $inactive;
$row['v_status'] = $deleteit;

suche

function walk( $item1 ) {
global $filelayout, $filelayout_count, $modelsize;
global $active, $inactive, $langcode, $default_these, $deleteit, $zero_qty_inactive;
global $epdlanguage_id, $price_with_tax, $replace_quotes;
global $default_images, $default_image_manufacturer, $default_image_product, $default_image_category;
global $separator, $max_categories;
// first we clean up the row of data

ersetzte mit

//
function walk( $item1 ) {
global $filelayout, $filelayout_count, $modelsize;
global $active, $inactive, $langcode, $default_these, $zero_qty_inactive, $deleteit;
global $epdlanguage_id, $price_with_tax, $replace_quotes;
global $default_images, $default_image_manufacturer, $default_image_product, $default_image_category;
global $separator, $max_categories;
// first we clean up the row of data

//

dann suche nach

if ($zero_qty_inactive && $v_products_quantity == 0) {
// if they said that zero qty products should be deactivated, let's deactivate if the qty is zero
$v_db_status = '0';
}

und darunter dieses einfügen

// setzt den status nach der Angabe unter $deleteit in der Importdatei.
if ($v_status == $deleteit){
// they told us to deactivate this item
$v_db_status = '99'; //status 99 zum löschen
}


suche

array_walk($items, 'print_el');
echo "
No products_model field in record. This line was not imported
";
echo "
";

und setzte darunter

mysql_query("DELETE products, products_to_categories, products_description FROM products, products_to_categories, products_description WHERE products.products_id = products_to_categories.products_id AND products.products_id = products_description.products_id AND products.products_status = 99");
echo "
";

Fertig!!
!!!!!!!!!!!!!!Achtung!!!!Achtung!!!!Achtung!!!!Ach tung!!!!Achtung!!!!Achtung!!!!

Es werden keine Kategorien gelöscht. Dies muss man weiterhin per Hand tätigen.

/////////////////////////////////////////////////////////////////////////////////////////////////
Was ich noch nicht hinbekommen habe ist das auch der Status Delete Angezeigt wird.

Mann kann den Status Delet aber auch mit Update angeben.
dazu mache folgendes

Suche

echo " Updated
";

und ersetzte mit

echo "".$deleteit." OR";
echo " Updated
";


Es wird jetzt immer auch nur beo Update Delete mit Angezeigt.

Wem das nichts aus macht ansonsten muß man diesn Schritt nicht machen.

Ende


More...