#1 (permalink)  
Alt 22.07.2008, 09:08
Benutzerbild von satzone
Erfahrener Benutzer
 
Registriert seit: 01.11.2003
Ort: Schweiz
Beiträge: 1.469
Standard Löschen von verlinkten Top Artikeln...

Hallo zusammen,

Folgendes Zenario:

Artikel ist verlinkt in z.Bsp. 30 andere Kategorien. An einem Tag stellst du den Artikel unter Top als SAonderangebot, soweit so gut. Nun deaktivierst du den Artikel unter top, Aktion abgelaufen und er bleibt dort inaktiv liegen. Jetzt kommt das Problem, willst du diesen löschen wird dieser Artikel leider 30x angezeigt und die Haken sind alle gesetzt, jetzt darfst Du diese 30 Haken alle mühsam wegklicken und nur den bei top stehen lassen...!!

Jetzt stellt euch vor ihr habt Artikel die in 200 Kategorien verlinkt sind, z.Bsp. in einem Tuning Zubehör Shop wo es Universal Artikel gibt die an jedes Fahrzeug passen!!

Also, wenn jemand eine Lösung hat wie man sich dieses Mühsame wegklicken der Haken ersparen kann, wär ich echt dankbar! Evtl. reicht es schon wenn man das automatische auswählen aller deaktiviert und dann den Haken unter Top selbst setzt.

Danke u. Gruss
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!Wong this Post!
Mit Zitat antworten
  #2 (permalink)  
Alt 22.07.2008, 09:36
Benutzerbild von Hetfield
Erfahrener Benutzer
 
Registriert seit: 04.01.2005
Ort: Attendorn
Beiträge: 557
Standard

In der Datei admin/categories.php in ca. Zeile 117 nach folgendem Code suchen:
PHP-Code:
 if ($_GET['flag'] == '1'$catfunc->link_product($_GET['pID'], 0); 
und danach folgendes einfügen:
PHP-Code:
// # BUGFIX 0000351 Anfang
$catfunc->set_product_remove_startpage_sql($_GET['pID'], $_GET['flag']);
if (
$_GET['flag'] == '0'xtc_redirect(xtc_href_link(FILENAME_CATEGORIES)); 
// # BUGFIX 0000351 Ende 
Anschließend in der Datei admin/includes/classes/categories.php bei ca. Zeile 459 nach folgendem Codesegment suchen:
PHP-Code:
 $products_status xtc_db_prepare_input($products_data['products_status']); 
und davor folgende Zeile einfügen:
PHP-Code:
// # BUGFIX 0000351 Anfang
$this->set_product_remove_startpage_sql($products_data['products_id'], 0);
// # BUGFIX 0000351 Ende 
danach in der gleiche Datei nach dieser Funktion suchen:
PHP-Code:
// Sets a product active on startpage
    
function set_product_startpage($products_id$status) {
        if (
$status == '1') {
            return 
xtc_db_query("update ".TABLE_PRODUCTS." set products_startpage = '1', products_last_modified = now() where products_id = '".$products_id."'");
        }
        elseif (
$status == '0') {
            return 
xtc_db_query("update ".TABLE_PRODUCTS." set products_startpage = '0', products_last_modified = now() where products_id = '".$products_id."'");
        } else {
            return -
1;
        }
    }
    
    
// ----------------------------------------------------------------------------------------------------- // 
und darunter folgende Funktion einfügen:
PHP-Code:
    // Set a product remove on startpage sql (BUGFIX 0000351)
    
function set_product_remove_startpage_sql($products_id$status) {
        if (
$status == '0') {
            global 
$messageStack;
            
$check_query xtc_db_query("SELECT COUNT(*) AS total
                                                     FROM "
.TABLE_PRODUCTS_TO_CATEGORIES."
                                                     WHERE products_id = '"
.$products_id."'
                                                     AND categories_id = '0'"
);
            
$check xtc_db_fetch_array($check_query);

            if (
$check['total'] >= '1') {
                return 
xtc_db_query("DELETE FROM ".TABLE_PRODUCTS_TO_CATEGORIES." WHERE products_id = '".$products_id."' and categories_id = '0'");;
            }
        }
    }

    
// ----------------------------------------------------------------------------------------------------- // 
Fertig! Jetzt wird der Artikel beim Klick auf das rote Status-Icon in der Kategorie Top aus der selbigen gelöscht. Habe das selbst mal hier für die SP2.2 entdeckt: http://www.xt-commerce.com/bugs/view.php?id=351

MfG Hetfield

Geändert von Hetfield (22.07.2008 um 11:54 Uhr)
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!Wong this Post!
Mit Zitat antworten
  #3 (permalink)  
Alt 22.07.2008, 11:50
Benutzerbild von satzone
Erfahrener Benutzer
 
Registriert seit: 01.11.2003
Ort: Schweiz
Beiträge: 1.469
Standard

Hallo Hetfield,

Suuper, Besten Dank für diese Anleitung, klappt wunderbar. Sobald man direkt beim Artikel Editieren von "Auf Startseite true, auf false umstellt wird der Artikel unter Top gelöscht, wunderbar!!

Hab zwar noch 3.04 SP1 konnte ich aber problemlos so einbauen, bis auf eine kleine Ungereimtheit:

PHP-Code:
$products_status xstc_db_prepare_input($products_data['products_status']); 
müsste wohl richtig heissen:

PHP-Code:
$products_status xtc_db_prepare_input($products_data['products_status']); 
Jedenfalls wars bei mir so, (anstatt xstc_db_prepare_input, wars xtc_db_prepare_input, klappt ja wunderbar!

Herzlichen Dank
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!Wong this Post!
Mit Zitat antworten
  #4 (permalink)  
Alt 22.07.2008, 11:56
Benutzerbild von Hetfield
Erfahrener Benutzer
 
Registriert seit: 04.01.2005
Ort: Attendorn
Beiträge: 557
Standard

Gern geschehen! Die Ungereimtheit war nur ein Tippfehler! Aber hast es ja selbst raus gefunden und ich habe es mal hier korrigiert.

MfG Hetfield
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!Wong this Post!
Mit Zitat antworten
Antwort

Lesezeichen

Stichworte
artikeln, löschen, top, verlinkten

Themen-Optionen
Ansicht

Forumregeln
Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are aus
Pingbacks are aus
Refbacks are aus


Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
Kategorien wechseln ungewollt bei verlinkten Artikeln marft4 Shopbereich 12 17.12.2008 23:48


Alle Zeitangaben in WEZ +1. Es ist jetzt 20:00 Uhr.

Copyright © 2011 xt:Commerce GmbH / xt:Commerce International Ltd. - All Rights Reserved

xt:Commerce is a SafeCharge brand