Kategorieübersicht - Auf die Startseite?

Hallo zusammen,

vielen Dank fürs reinschauen,
ich würde gerne wissen, ob es möglich ist die Kategorieansicht
http://custest.bragis.net/mehr/
auf die Startseite zu coden?
So dass der Kunde gleich meine Kategorien sieht,
und wie ich das sehe kann man da auch Bilder hinterlegen oder?

Danke für eure hilfe ihr seid die besten :slight_smile:

Willst Du denn alle Ebenen ausgeben, also inkl. Unterkategorien?

Wenn Du nur die Hauptkategorien ausgeben willst, dann kannst Du das ganz einfach mit :


[{foreach from=$oxcmp_categories item=ocats}]
       [{$ocats->oxcategories__oxtitle->value}]
[{/foreach}]

Natürlich musst Du noch ein wenig CSS drum herum bauen:-)

danke :slight_smile:
bisschen css ist milde ausgedrückt :smiley:

ich hätte es gerne wie in dieser ansicht:
http://custest.bragis.net/mehr/
so dass eben die kategorien mit den bildern angezeigt werden :slight_smile:

Das ist wirklich milde ausgedrückt, wenn man bedenkt, dass du keine einzige CSS Eigenschaft manuell hinzufügen musst, weil ja schon alles da ist:-)

Schau Dir doch mal den Code und die Klassen von dem Teil an, wie Du es haben willst, baue die Schleife drum herum und schon funzt das:-)

Bilder müsstest Du eigentlich - wenn zugewiesen, mit:


[{ $ocats->getIconUrl() }] 

bekommen.

und inlcuden kann man die seite ned? :slight_smile:

Ich würde dir folgendes empfehlen:

Du legst eine eigene tpl Datei in deinem Template an.

z.B. my_categories.tpl. Diese speicherst du dann beispielsweise im widget Ordner deines Templates ab.
Diese includest du dann an gewünschter Stelle in der page/shop/start.tpl mit


[{include file="widget/my_categories.tpl"}]

So, dann muss ja nur noch der Code der my_categories.tpl her:-)

Dann schaust Du Dir jetzt mal page/list/morecategories.tpl an, und schon bist Du fast am Ziel:-)

Danke novalgin :slight_smile:

ich habs mal versucht…

http://custest.bragis.net/

nur jetzt lädt es mir ein paar sachen doppelt rein…
kannst du mir da nochmal helfen?
ich weiss nicht wie ich die my_categories abändern kann :S DANKE :frowning:

Hast Du es so gemacht, wie ich oben vorgeschlagen habe, oder hast Du es anders gelöst?

Poste bitte mal den Code von page/shop/start.tpl und den Code der my_categories.tpl.

novalgin :slight_smile: danke für deine mühe das ist sehr nett! :slight_smile:

Code start.tpl:

[{oxscript include="js/widgets/oxcenterelementonhover.js" priority=10 }]
[{oxscript add="$( '#specCatBox' ).oxCenterElementOnHover();" }]
[{capture append="oxidBlock_content"}]
    [{assign var="oFirstArticle" value=$oView->getFirstArticle()}]
    [{if $oView->getCatOfferArticleList()|@count > 0}]
        [{foreach from=$oView->getCatOfferArticleList() item=actionproduct name=CatArt}]
        [{if $smarty.foreach.CatArt.first}]
        [{assign var="oCategory" value=$actionproduct->getCategory()}]
            [{if $oCategory }]
                [{assign var="promoCatTitle" value=$oCategory->oxcategories__oxtitle->value}]
                [{assign var="promoCatImg" value=$oCategory->getPromotionIconUrl()}]
                [{assign var="promoCatLink" value=$oCategory->getLink()}]
            [{/if}]
        [{/if}]
        [{/foreach}]
    [{/if}]
     [{include file="widget/my_categories.tpl"}]  
    [{if $oView->getBargainArticleList()|@count > 0 || ($promoCatTitle && $promoCatImg)}]
        <div class="promoBoxes clear">
            [{if count($oView->getBargainArticleList()) > 0 }]
                <div id="specBox" class="specBox">
                    [{include file="widget/product/bargainitems.tpl"}]
                </div>
            [{/if}]
            [{if $promoCatTitle && $promoCatImg}]
                <div id="specCatBox" class="specCatBox">
                    <h2 class="sectionHead">[{$promoCatTitle}]</h2>
                    <a href="[{$promoCatLink}]" class="viewAllHover glowShadow corners"><span>[{ oxmultilang ident="PAGE_SHOP_START_VIEW_ALL" }]</span></a>
                    <img src="[{$promoCatImg}]" alt="[{$promoCatTitle}]">
                </div>
            [{/if}]
        </div>
    [{/if}]   
    [{include file="widget/manufacturersslider.tpl" }]
    [{if $oView->getNewestArticles() }]
        [{assign var='rsslinks' value=$oView->getRssLinks() }]
        [{include file="widget/product/list.tpl" type=$oViewConf->getViewThemeParam('sStartPageListDisplayType') head="PAGE_SHOP_START_JUSTARRIVED"|oxmultilangassign listId="newItems" products=$oView->getNewestArticles() rsslink=$rsslinks.newestArticles rssId="rssNewestProducts" showMainLink=true}]
    [{/if}]
    [{ insert name="oxid_tracker"}]
[{/capture}]
[{include file="layout/page.tpl" sidebar="Right"}]

code my_categories:

[{oxscript include="js/widgets/oxarticlebox.js" priority=10 }]
[{oxscript add="$( '#content' ).oxArticleBox();"}]
[{capture append="oxidBlock_content"}]
    <h1 class="pageHead">[{ oxmultilang ident="PAGE_PRODUCT_MORECATEGORIES" }]</h1>

    [{assign var="_navcategorytree" value=$oView->getCategoryTree()}]
    [{assign var="iSubCategoriesCount" value=0}]
    [{if $_navcategorytree|count}]
        [{oxscript include="js/widgets/oxequalizer.js" priority=10 }]
        [{oxscript add="$(function(){oxEqualizer.equalHeight($( '.subcatList li .content' ));});"}]
        <ul class="subcatList clear">
            <li>
            [{foreach from=$_navcategorytree item=category name=MoreSubCat}]
                [{* TOP categories *}]
                [{if $category->getIsVisible()}]
                    [{* CMS top categories *}]
                    [{if $category->getContentCats() }]
                        [{foreach from=$category->getContentCats() item=ocont name=MoreCms}]
                            [{assign var="iSubCategoriesCount" value=$iSubCategoriesCount+1}]
                            <div class="box">
                                <h3>
                                    <a id="moreSubCms_[{$smarty.foreach.MoreSubCat.iteration}]_[{$smarty.foreach.MoreCms.iteration}]" href="[{$ocont->getLink()}]">[{ $ocont->oxcontents__oxtitle->value }]</a>
                                </h3>
                                <ul class="content"></ul>
                            </div>
                        [{/foreach}]
                    [{/if }]
                    [{if $iSubCategoriesCount%4 == 0}]
                    </li><li>
                    [{/if}]
                    [{assign var="iSubCategoriesCount" value=$iSubCategoriesCount+1}]
                    [{assign var="iconUrl" value=$category->getIconUrl()}]
                    <div class="box">
                        <h3>
                            <a id="moreSubCat_[{$smarty.foreach.MoreSubCat.iteration}]" href="[{ $category->getLink() }]">
                                [{$category->oxcategories__oxtitle->value }][{ if $oView->showCategoryArticlesCount() && ($category->getNrOfArticles() > 0) }] ([{ $category->getNrOfArticles() }])[{/if}]
                            </a>
                        </h3>
                        [{* Top categories subcategories *}]
                        [{if $category->getHasVisibleSubCats()}]
                            <ul class="content">
                                [{if $iconUrl}]
                                    <li class="subcatPic">
                                        <a href="[{ $category->getLink() }]">
                                            <img src="[{$category->getIconUrl() }]" alt="[{ $category->oxcategories__oxtitle->value }]" height="100" width="168">
                                        </a>
                                    </li>
                                [{/if}]
                                [{foreach from=$category->getSubCats() item=subcategory}]
                                    [{if $subcategory->getIsVisible() }]
                                        [{* CMS subcategories  *}]
                                        [{ foreach from=$subcategory->getContentCats() item=ocont name=MoreCms}]
                                            <li>
                                                <a href="[{$ocont->getLink()}]"><strong>[{ $ocont->oxcontents__oxtitle->value }]</strong></a>
                                            </li>
                                        [{/foreach }]
                                        <li>
                                            <a href="[{ $subcategory->getLink() }]">
                                                <strong>[{ $subcategory->oxcategories__oxtitle->value }]</strong>[{ if $oView->showCategoryArticlesCount() && ($subcategory->getNrOfArticles() > 0) }] ([{ $subcategory->getNrOfArticles() }])[{/if}]
                                            </a>
                                        </li>
                                    [{/if}]
                                [{/foreach}]
                            </ul>
                        [{else}]
                            <div class="content catPicOnly">                            
                                <div class="subcatPic">
                                    [{if $iconUrl}]
                                    <a href="[{ $category->getLink() }]">
                                        <img src="[{$category->getIconUrl() }]" alt="[{ $category->oxcategories__oxtitle->value }]" height="100" width="168">
                                    </a>
                                    [{/if}]
                                </div>                            
                            </div>
                        [{/if}]
                    </div>
            [{/if}]
            [{if $iSubCategoriesCount%4 == 0}]
            </li><li>
            [{/if}]
        [{/foreach}]
        </li>
        </ul>

    [{/if}]
    [{insert name="oxid_tracker"}]
[{/capture}]


[{include file="layout/page.tpl" sidebar="Left"}]

Hehe, ich habe mir gestern fast gedacht, dass du den kompletten Inhalt der morecategories.tpl kopierst:-)

So war das aber aber nicht gemeint:-)

Ok, ein Ansatz, schließlich wollen wir hier einen Lerneffekt erzielen.

Kopiere das mal in die my_categories.tpl


<h1 class="pageHead">[{ oxmultilang ident="PAGE_PRODUCT_MORECATEGORIES" }]</h1>

  
    [{assign var="iSubCategoriesCount" value=0}]
    
        <ul class="subcatList clear">
            <li>
            [{foreach from=$oxcmp_categories item=category }]
                [{if $category->getIsVisible()}]
                    [{assign var="iSubCategoriesCount" value=$iSubCategoriesCount+1}]
                    [{assign var="iconUrl" value=$category->getIconUrl()}]
                    <div class="box">
                        <h3>
                            <a id="moreSubCat_[{$smarty.foreach.MoreSubCat.iteration}]" href="[{ $category->getLink() }]">
                                [{$category->oxcategories__oxtitle->value }][{ if $oView->showCategoryArticlesCount() && ($category->getNrOfArticles() > 0) }] ([{ $category->getNrOfArticles() }])[{/if}]
                            </a>
                        </h3>
                      
                            <div class="content catPicOnly">                            
                                <div class="subcatPic">
                                    [{if $iconUrl}]
                                    <a href="[{ $category->getLink() }]">
                                        <img src="[{$category->getIconUrl() }]" alt="[{ $category->oxcategories__oxtitle->value }]" height="100" width="168">
                                    </a>
                                    [{/if}]
                                </div>                            
                            </div>
                    </div>
            [{/if}]
            [{if $iSubCategoriesCount%4 == 0}]
            </li><li>
            [{/if}]
        [{/foreach}]
        </li>
        </ul>

vielen dank novalgin du hast mir mein tag gerettet :slight_smile:
ja ich habs komplett kopiert, dann auch gemerkt, er includet mir zu viel…
aber ich hab die stellen nicht gefunden die ich raushauen muss :frowning: :slight_smile: :slight_smile:

Gerne, bitte mache noch folgende Änderung, damit du keine doppelten ID´s hast.


[{foreach from=$oxcmp_categories item=category name=cats}]

und


 <a id="moreSubCat_[{$smarty.foreach.cats.iteration}]" href="[{ $category->getLink() }]">

Einfach die Zeilen ersetzen.

okay habs gemacht sollte passen oder? :slight_smile:

Japp, jetzt passt es und ist auch schön W3C konform:-)

:slight_smile: danke :slight_smile: :slight_smile: :slight_smile: