OXID Community Forum

> German forum > Entwickler > Unterkategorie einer Kategorie
Login
FAQ Members List Calendar Search Today's Posts Mark Forums Read

Thread: Unterkategorie einer Kategorie


Reply
 
Thread Tools Search this Thread Display Modes
#Top   #1  
Old 04-18-2012, 02:57 PM
Kerstel Kerstel is offline
Member
Join Date: Oct 2008
Posts: 47
Kerstel is on a distinguished road
Default Unterkategorie einer Kategorie

Hallo,

ich möchte den Baum einer bestimmten Kategorie haben:

PHP Code:
class smx_oxviewconfig extends smx_oxviewconfig_parent
{
    public function 
getBaumuster()
    {
        
$myConfig $this->getConfig();
        
$sCatID $myConfig->getConfigParam('sBaumusterCatId');
        
        
$oCat oxNew('oxcategory');
        
$oCat->load($sCatID);
        
        
$oSubCat $oCat->getSubCats();
        
        return 
$oSubCat;
    } 
//function
//class 
Die Kategorie ist so aufgebaut (und alle korrekt angelegt mit Artikeln, aktiv usw):
Hauptkategorie (sBaumusterCatId)
- Unter 1
-- Unterunter 1
-- Unterunter 2
- Unter 2
- Unter 3

Das soll auch im Template verfügbar sein über [{assign var="obm" value=$oViewConf->getBaumuster()}]. Leider gibt das getSubCats immer ein leeres Array zurück. Was fehlt ihm hier, was muss nach load() noch folgen?

lgr
__________________
Wir wollen keine zufriedene Kunden, wir wollen glückliche
Reply With Quote
#Top   #2  
Old 04-18-2012, 04:43 PM
Alpha-Sys's Avatar
Alpha-Sys Alpha-Sys is offline
Senior Member
Join Date: Oct 2011
Location: Freiburg
Posts: 401
Alpha-Sys is on a distinguished road
Send a message via Skype™ to Alpha-Sys
Default AW: Unterkategorie einer Kategorie

Hi,
lass dir mal $oCat per var_dump ausgeben.
Hat er hier überhaupt die richtige Kategorie?


Grüße
Fabian
Reply With Quote
#Top   #3  
Old 04-18-2012, 05:24 PM
Kerstel Kerstel is offline
Member
Join Date: Oct 2008
Posts: 47
Kerstel is on a distinguished road
Default Re: Unterkategorie einer Kategorie

so sieht das objekt aus:

Code:
smx_oxcategory Object
(
    [_aSubCats:protected] => Array
        (
        )

    [_aContentCats:protected] => Array
        (
        )

    [_sClassName:protected] => oxcategory
    [_iNrOfArticles:protected] => 
    [_blIsVisible:protected] => 
    [_blExpanded:protected] => 
    [_blHasSubCats:protected] => 
    [_blHasVisibleSubCats:protected] => 
    [_blIsSeoObject:protected] => 1
    [_blUseLazyLoading:protected] => 
    [_sDynImageDir:protected] => 
    [_blTopCategory:protected] => 
    [_aIds:protected] => Array
        (
        )

    [_aStdUrls:protected] => Array
        (
        )

    [_aSeoUrls:protected] => Array
        (
        )

    [_iLanguage:protected] => 0
    [_blEmployMultilanguage:protected] => 1
    [_sOXID:protected] => 214e377cb795b8a7e473188a78abd024
    [_iShopId:protected] => 1
    [_blIsSimplyClonable:protected] => 1
    [_aErrors:protected] => Array
        (
        )

    [_sCoreTable:protected] => oxcategories
    [_sViewTable:protected] => 
    [_blForceCoreTableUsage:protected] => 
    [_blDisableShopCheck:protected] => 1
    [_aFieldNames:protected] => Array
        (
            [oxid] => 0
            [oxparentid] => 0
            [oxleft] => 0
            [oxright] => 0
            [oxrootid] => 0
            [oxsort] => 0
            [oxactive] => 1
            [oxhidden] => 0
            [oxshopid] => 0
            [oxshopincl] => 0
            [oxshopexcl] => 0
            [oxtitle] => 1
            [oxdesc] => 1
            [oxlongdesc] => 1
            [oxthumb] => 1
            [oxextlink] => 0
            [oxtemplate] => 0
            [oxdefsort] => 0
            [oxdefsortmode] => 0
            [oxpricefrom] => 0
            [oxpriceto] => 0
            [oxicon] => 0
            [oxpromoicon] => 0
            [oxvat] => 0
            [oxskipdiscounts] => 0
            [oxshowsuffix] => 0
            [smxbaumuster] => 0
        )

    [_blIsNewCache:protected] => 
    [_sCacheKey:protected] => allviews_i18n
    [_aSkipSaveFields:protected] => Array
        (
        )

    [_sExistKey:protected] => oxid
    [_blIsDerived:protected] => 
    [_blReadOnly:protected] => 
    [_blIsInList:protected] => 
    [_isLoaded:protected] => 1
    [_aInnerLazyCache:protected] => 
    [oxcategories__oxid] => oxField Object
        (
            [value] => 214e377cb795b8a7e473188a78abd024
        )

    [oxcategories__oxparentid] => oxField Object
        (
            [rawValue] => oxrootid
        )

    [oxcategories__oxleft] => oxField Object
        (
            [rawValue] => 1
        )

    [oxcategories__oxright] => oxField Object
        (
            [rawValue] => 198
        )

    [oxcategories__oxrootid] => oxField Object
        (
            [rawValue] => 214e377cb795b8a7e473188a78abd024
        )

    [oxcategories__oxsort] => oxField Object
        (
            [rawValue] => -1
        )

    [oxcategories__oxactive] => oxField Object
        (
            [rawValue] => 1
        )

    [oxcategories__oxhidden] => oxField Object
        (
            [rawValue] => 0
        )

    [oxcategories__oxshopid] => oxField Object
        (
            [value] => 1
        )

    [oxcategories__oxshopincl] => oxField Object
        (
            [rawValue] => 1
        )

    [oxcategories__oxshopexcl] => oxField Object
        (
            [rawValue] => 0
        )

    [oxcategories__oxtitle] => oxField Object
        (
            [rawValue] => Baumuster
        )

    [oxcategories__oxdesc] => oxField Object
        (
            [rawValue] => Sammelkategorie für Baumuster Baum
        )

    [oxcategories__oxlongdesc] => oxField Object
        (
            [value] => 
        )

    [oxcategories__oxthumb] => oxField Object
        (
            [rawValue] => 
        )

    [oxcategories__oxextlink] => oxField Object
        (
            [rawValue] => 
        )

    [oxcategories__oxtemplate] => oxField Object
        (
            [rawValue] => 
        )

    [oxcategories__oxdefsort] => oxField Object
        (
            [rawValue] => 
        )

    [oxcategories__oxdefsortmode] => oxField Object
        (
            [rawValue] => 0
        )

    [oxcategories__oxpricefrom] => oxField Object
        (
            [rawValue] => 0
        )

    [oxcategories__oxpriceto] => oxField Object
        (
            [rawValue] => 0
        )

    [oxcategories__oxicon] => oxField Object
        (
            [rawValue] => 
        )

    [oxcategories__oxpromoicon] => oxField Object
        (
            [rawValue] => 
        )

    [oxcategories__oxvat] => oxField Object
        (
            [rawValue] => 
        )

    [oxcategories__oxskipdiscounts] => oxField Object
        (
            [rawValue] => 0
        )

    [oxcategories__oxshowsuffix] => oxField Object
        (
            [rawValue] => 0
        )

    [oxcategories__smxbaumuster] => oxField Object
        (
            [rawValue] => 0
        )

)
__________________
Wir wollen keine zufriedene Kunden, wir wollen glückliche
Reply With Quote
#Top   #4  
Old 04-18-2012, 07:48 PM
Alpha-Sys's Avatar
Alpha-Sys Alpha-Sys is offline
Senior Member
Join Date: Oct 2011
Location: Freiburg
Posts: 401
Alpha-Sys is on a distinguished road
Send a message via Skype™ to Alpha-Sys
Default AW: Re: Unterkategorie einer Kategorie

Hi,
also das Kategorie-Objekt ist vollständig. Das passt soweit.

Jetzt lass dir mal noch $oSubCat per var_dump ausgeben.
Vielleicht bekommst du ne Objektliste zurück, obwohl du nen Array erwartest oder anders herum.

Grüße
Fabian

Reply With Quote
#Top   #5  
Old 04-18-2012, 09:40 PM
Kerstel Kerstel is offline
Member
Join Date: Oct 2008
Posts: 47
Kerstel is on a distinguished road
Default Re: AW: Re: Unterkategorie einer Kategorie

da kommt

array(0) { }

Im Objekt ist _aSubCats ja auch schon leer. Die Frage ist warum füllt load das Array nicht?
__________________
Wir wollen keine zufriedene Kunden, wir wollen glückliche

Last edited by Kerstel; 04-18-2012 at 09:45 PM.
Reply With Quote
#Top   #6  
Old 04-19-2012, 09:58 AM
novalgin novalgin is offline
Senior Member
Join Date: Jan 2012
Posts: 497
novalgin is on a distinguished road
Default AW: Unterkategorie einer Kategorie

Warum deine Funktion nicht funktioniert, kann ich dir leider auch nicht sagen.

Hatte vor kurzen eine ähnliche Aufgabenstellung und musste dann auf Grund von akuten Zeitmangel auf unten aufgeführtes Beispiel umsteigen.

PHP Code:
[{foreach from=$oxcmp_categories item=ocats}]
        [{ if 
$ocats->oxcategories__oxid->value eq 'DEINE_OXID_ID' }]
             [{foreach 
from=$ocats->getSubCats() item=ocat}]
                  <
class="go_ahead" href="[{$ocat->getLink()}]" title="[{$ocat->oxcategories__oxtitle->value}]">[{$ocat->oxcategories__oxtitle->value}]</a>
             [{/foreach}]
        [{ /if }]
[{/foreach}] 
Ich finde alle Kategorien zu durchlaufen auch nicht optimal, aber wie gesagt, die Zeit sass mir etwas im Nacken.Ich bin dann auf diesen Beitrag von Aggrosoft gestossen, und dachte mir das wäre die Lösung. Ich dachte, ich kann mir die äussere Schleife sparen, aber das funktioniert leider nicht.

http://www.oxid-esales.com/forum/showthread.php?t=10076

PHP Code:
[{agload oxid="MEINE_OXID_ID" type="oxcategory" assign="ocat"}]
[{foreach 
from=$ocat->getSubCats() item=ocats}]
          <
class="go_ahead" href="[{$ocats->getLink()}]" title="[{$ocats->oxcategories__oxtitle->value}]">[{$ocats->oxcategories__oxtitle->value}]</a>
[{/foreach}] 
Vielleicht hilft es dir ja ein wenig
Reply With Quote
#Top   #7  
Old 04-19-2012, 10:00 AM
Kerstel Kerstel is offline
Member
Join Date: Oct 2008
Posts: 47
Kerstel is on a distinguished road
Default Re: AW: Unterkategorie einer Kategorie

sowas in der art ist auch gerade mein workaround, aber kann nicht die lösung sein
__________________
Wir wollen keine zufriedene Kunden, wir wollen glückliche
Reply With Quote
#Top   #8  
Old 04-19-2012, 10:07 AM
Hebsacker's Avatar
Hebsacker Hebsacker is offline
Moderator
Join Date: Feb 2009
Location: Freie Republik Hohenlohe
Posts: 11,660
Hebsacker is on a distinguished road
Default AW: Unterkategorie einer Kategorie

fragt doch mal direkt nach in der dev-general mailinglist
__________________
Ray
www.stahlwarenhaus-hebsacker.de______________._.__Tipps zur Forensuche
www.haller-stahlwaren.de____________________._____Tipps zum Forum
_________________________________________._____Forum für Dummies
Reply With Quote
#Top   #9  
Old 04-19-2012, 10:21 AM
Kerstel Kerstel is offline
Member
Join Date: Oct 2008
Posts: 47
Kerstel is on a distinguished road
Default Re: AW: Unterkategorie einer Kategorie

wie komm ich an die mailinglist?
__________________
Wir wollen keine zufriedene Kunden, wir wollen glückliche
Reply With Quote
#Top   #10  
Old 04-19-2012, 10:32 AM
Hebsacker's Avatar
Hebsacker Hebsacker is offline
Moderator
Join Date: Feb 2009
Location: Freie Republik Hohenlohe
Posts: 11,660
Hebsacker is on a distinguished road
Default AW: Unterkategorie einer Kategorie

http://wiki.oxidforge.org/Mailinglists

__________________
Ray
www.stahlwarenhaus-hebsacker.de______________._.__Tipps zur Forensuche
www.haller-stahlwaren.de____________________._____Tipps zum Forum
_________________________________________._____Forum für Dummies
Reply With Quote
Reply

Bookmarks

Tags
kategorie, unterkategorie

« Previous Thread | Next Thread »
Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes

Nicht Sichtbar
Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump

Similar Threads
Thread Thread Starter Forum Replies Last Post
Übergeordneteategorie/Unterkategorie - Artikel in der Unterkategorie dann auch automatisch in der Übergeordneten Kategorie jiji82 Feature-Anfragen 17 12-01-2014 09:13 AM
Kategorie mit erster Unterkategorie starten lilac-man Newbies 2 07-29-2014 03:12 PM
Artikel einer Unterkategorie auch in Hauptkategorie anzeigen DevilRN Newbies 13 07-23-2014 07:03 PM
Titel Unterkategorie - Kategorie dreifachonline Administration 6 01-09-2013 06:29 AM
Bild einer Unterkategorie in list.tpl anzeigen Hotte Templates und Design 5 05-25-2011 11:54 AM

All times are GMT +1. The time now is 03:34 PM.