Seite 1 von 2 12 LetzteLetzte
Ergebnis 1 bis 10 von 11

Thema: Zusätzliche Navigation

  1. #1
    Youngster
    Registriert seit
    17.02.2009
    Beiträge
    15
    Danke
    0
    Bekam 0 mal "Danke" in 0 Postings

    Idee Zusätzliche Navigation

    Hallo zusammen,

    also mit ein wenig Gedult und Einarbeit ist es schon möglich, mit Plone einigermaßen klar zu kommen Jetzt stehe ich aber wieder vor einem kleinen Plone-Template Problem ... vielleicht ist es aber auch nur eine Kleinigkeit

    Ich habe mir mittels zopeskel ein neues grundlayout template erstellt (plone 3), mit eigenen viewletmanagern, weil ich ein bisschen was umstellen musste... klappt auch alles prima. mein css ist auch sauber, alles ist schön. nur möchte ich gerne im footer eine zuätzliche navigation anbringen und stehe etwas auf dem schlauch.

    ich hab mir mal dieses tutorial angeguckt, aber ich fürchte, dass das bei mir nicht funktionieren wird, weil ich die nav in einem viewlet und nicht einem portlet nutzen möchte. (link zu tutorial: http://plone.org/documentation/kb/cr...vation-portlet) nun... wie kann ich das angehen?

    ich hab meine footer.pt und auch in der viewlets.py spreche ich das template an:

    Code:
    class FooterViewlet(ViewletBase):
        render = ViewPageTemplateFile('templates/footer.pt')
    zugegeben, ist etwas schlank

    wie kann ich nun vorgehen?

    viele grüße und schon mal danke,
    der flo.
    Achtung: Dies ist ein alter Thread im HTML und Webmaster Forum
    Diese Diskussion ist älter als 90 Tage. Die darin enthaltenen Informationen sind möglicherweise nicht mehr aktuell. Erstelle bitte zu deiner Frage ein neues Thema im Forum !!!!!

  2. #2
    Meister(in)
    Registriert seit
    14.02.2008
    Ort
    München
    Beiträge
    456
    Danke
    0
    Bekam 0 mal "Danke" in 0 Postings

    Standard AW: Zusätzliche Navigation

    Hallo,

    Dein Usecase ist relative einfach zu lösen, Da jedes Viewlet einen eigenen PortletManager besitzen kann einfach dem Viewlet einen PortletManager zuweisen und diesem ein Navigationsportlet.

    Diese Doku (http://plone.org/documentation/manua...nual-all-pages) sollte dir dabei helfen.

    Aber dein schlanker Code ist übringens immer noch viel zu viel, bzw. unnötig, da du die Klasse ja in einer zcml registrieren musst und nur ein render hast ist das eigentlich zuviel Code, einfacher in der zcml:

    Code:
    <browser:viewlet
            name=""
            manager="plone.app.layout.viewlets.interfaces.IPortalFooter"
            template="templates/footer.pt"
            layer=".interfaces.IThemeSpecific"
            permission="zope2.View"
        />
    Gruss Pumukel
    Die beste Informationsquelle sind Leute, die versprochen haben, nichts weiterzuerzählen.

    Marcel Mart
    frz. Schriftsteller

  3. #3
    Youngster
    Themenstarter

    Registriert seit
    17.02.2009
    Beiträge
    15
    Danke
    0
    Bekam 0 mal "Danke" in 0 Postings

    Standard AW: Zusätzliche Navigation

    Hallo Pumuckel,

    danke für Deine Antwort... jetzt muss ich aber direkt mal nachfragen. Ich hänge das Portlet an das Viewlet, oder an den ViewletManager? *kopfkratz*

    dh. ich muss so vorgehen?

    1. ViewletManager anlegen
    2. Viewlet für den Footer definieren
    3. in der viewlets.xml den Manager + das Viewlet eintragen
    4. in der configure.zcml den Viewlet-Manager und das Viewlet registrieren
    5. Neuen PortletManager anlegen
    6. die portlets.xml anlegen mit einem Verweis auf den PortletManager?

    Zu dem "schlanken Code". Ich hab die Sachen erstmal in der viewlets.py abgelegt, weil ich noch nicht weiß, ob da noch mehr quellcode hinsoll. und der breadcrumb beispielsweise hat dort nicht nur den "render"-Befehl.

    Da fällt mir direkt die nächste Frage ein, wie kann ich dem Plone bzw. dem Template denn sagen, dass er meine main_template.pt bei dem Theme benutzen soll? Ich hab nämlich erstmal eine Kopie der Plone main_template.pt in den skins/custom_templates/ Ordner gelegt. Da geht doch sicherlich auch richtiger, oder?
    Geändert von broikmann (24.02.2010 um 16:42 Uhr)

  4. #4
    Meister(in)
    Registriert seit
    14.02.2008
    Ort
    München
    Beiträge
    456
    Danke
    0
    Bekam 0 mal "Danke" in 0 Postings

    Standard AW: Zusätzliche Navigation

    Hallo,

    Also ein Viewlet hängt man einen Viewletmanager
    ein Portlet in einen Portletmanager.

    Einen Viewletmanager und Portletmanager muss man im Template entsprechend eintragen.
    Code:
    <tal:portletmanager tal:content="structure provider:[portlet manager name]" />
    Praktisch also für dich Viewletmanager -> Viewlet -> Portletmanager -> Portlet

    in der portlets.xml kannst du standard Portletzuordnungen zu Portletmanagern eintragen, also wäre das der sauberste Weg.

    Das mit dem "schlanken Code" war bloss ein netter Hinweis das es auch noch schlanker geht.

    Gruss Pumukel
    Die beste Informationsquelle sind Leute, die versprochen haben, nichts weiterzuerzählen.

    Marcel Mart
    frz. Schriftsteller

  5. #5
    Youngster
    Themenstarter

    Registriert seit
    17.02.2009
    Beiträge
    15
    Danke
    0
    Bekam 0 mal "Danke" in 0 Postings

    Frage AW: Zusätzliche Navigation

    hm... also folgendes hab ich bisher gemacht, aber kriege immer den gleich fehler. ist denk ich aber nur ne kleine logische sache:

    browser/configure.zcml
    Code:
    <browser:page
     for="plone.portlets.interfaces.ILocalPortletAssignable"
     class="plone.app.portlets.browser.manage.ManageContextualPortlets"
     name="meintheme.portlet_footer"
     template="templates/portlet_footer.pt"
     permission="plone.app.portlets.ManagePortlets"
    />
    browser/interfaces.py
    Code:
    class MeinThemePortletFooter(IPortletManager):
        """
            Hier steht die Beschreibung des Portletmanagers
        """
    skins/custom_templates/main_template.pt
    Code:
        <metal:portlets>
            <tal:block replace="structure provider:meintheme.portlet_footer" />
        </metal:portlets>
    und letztendlich noch in
    profiles/default/portlets.xml
    Code:
    <?xml version="1.0"?>
    <portlets>
     <portletmanager
        name="portlet_footer"
        type="Products.MeinTheme.browser.interfaces.MeinThemePortletFooter"
     />
    </portlets>
    wenn ich nun aber die instanz neu starte und auf die seite gehe, krieg ich immer den folgenden :
    ContentProviderLookupError: portlet_footer

    Was hab ich falsch gemacht?!

  6. #6
    Meister(in)
    Registriert seit
    14.02.2008
    Ort
    München
    Beiträge
    456
    Danke
    0
    Bekam 0 mal "Danke" in 0 Postings

    Standard AW: Zusätzliche Navigation

    Hallo,

    drei Fehler sehe ich:

    1. Portlet ist in der configure.zcml registriert der Portletmanager nicht. Das Portlet aber unter dem Namen den du für den Manager vorgesehen hast.

    2. in der Portlets.xml hast du einen nicht registrieren Portletmanager versucht, zu referenzieren.

    3. in der Portlets.xml fehlt das assignment statement für das Portlet zum Manager.

    Gruss Pumukel
    Die beste Informationsquelle sind Leute, die versprochen haben, nichts weiterzuerzählen.

    Marcel Mart
    frz. Schriftsteller

  7. #7
    Youngster
    Themenstarter

    Registriert seit
    17.02.2009
    Beiträge
    15
    Danke
    0
    Bekam 0 mal "Danke" in 0 Postings

    Standard AW: Zusätzliche Navigation

    Zitat Zitat von Pumukel Beitrag anzeigen
    Hallo,

    drei Fehler sehe ich:

    1. Portlet ist in der configure.zcml registriert der Portletmanager nicht. Das Portlet aber unter dem Namen den du für den Manager vorgesehen hast.

    2. in der Portlets.xml hast du einen nicht registrieren Portletmanager versucht, zu referenzieren.

    3. in der Portlets.xml fehlt das assignment statement für das Portlet zum Manager.

    Gruss Pumukel
    zu 1: also muss ich in der configure.zcml den portletmanager registrieren & nicht das portlet? oder beides?

    zu 2: klar, weil ja der manager nicht registriert ist, richtig?

    zu 3: das was fehlt?



    aber vom prinzip her spreche ich im template den PortletManager an.
    Der Manager weißt dann, welche Portlets er hat oder man kann ihm welche über die seite zuordnen, richtig?

    vgf.

  8. #8
    Youngster
    Themenstarter

    Registriert seit
    17.02.2009
    Beiträge
    15
    Danke
    0
    Bekam 0 mal "Danke" in 0 Postings

    Standard AW: Zusätzliche Navigation

    ich habe jetzt auch mal dieses tutorial (http://plone.org/documentation/manua...tlet-managers/) durchgemacht,

    hänge aber am gleichen fehler
    ContentProviderLookupError: my.abovecontentportlets

  9. #9
    Meister(in)
    Registriert seit
    14.02.2008
    Ort
    München
    Beiträge
    456
    Danke
    0
    Bekam 0 mal "Danke" in 0 Postings

    Standard AW: Zusätzliche Navigation

    Hallo,

    also, in der configure.zcml müssen alle viewlets, viewletmanager, portlets und portletmanagers registriert sein.

    assign:
    Code:
    <assignment
        manager="plone.portletmanager"
        category="context"
        key="/"
        type="portlets.name"
        name="name"
        />
    Gruss Pumukel
    Die beste Informationsquelle sind Leute, die versprochen haben, nichts weiterzuerzählen.

    Marcel Mart
    frz. Schriftsteller

  10. #10
    Youngster
    Themenstarter

    Registriert seit
    17.02.2009
    Beiträge
    15
    Danke
    0
    Bekam 0 mal "Danke" in 0 Postings

    Standard AW: Zusätzliche Navigation

    ich zweifel grade echt an mir. könntest du mir einen gefallen tun und mir kurz exemplarisch mal den code niederschreiben? *duck* Das Beispiel auf plone.org klappt ja auch nicht bei mir

    ich habe ein viewlet "my.abovecontentviewlet" das ist mit meinem ViewletManager "FooterColumViewletManager" verknüpft.

    In diesem Viewlet möchte ich nun einen zusätzlichen PortletManager unterbringen, weil dort ein Navigationsportlet angezeigt werden soll.

    was kommt in die configure.zcml
    -> verweis auf PortletManager. Wie?

    was muss jetzt in die interfaces.py
    wie muss die portlets.xml aussehen?

    in main_template.pt verweise ich bereits auf das viewlet. erfolgreich sogar

    hab ich noch etwas vergessen?

    Ich brauche exemplarisch mal den Code, an dem ich mich dann durchhangeln kann und das Ganze durchblicke.

Ähnliche Themen

  1. HTML-Text hat zusätzliche Zeilenumbrüche nach kopieren?
    Von frankfurter1964 im Forum HTML & CSS Forum
    Antworten: 2
    Letzter Beitrag: 08.07.2008, 19:56
  2. Zusätzliche Seite - Bitte mal anschauen und Meinungen abgebe
    Von kensworld im Forum Eure Homepages und Foren - Vorstellung und Bewertungen
    Antworten: 39
    Letzter Beitrag: 11.02.2006, 21:39
  3. Navigation auf HP
    Von im Forum HTML & CSS Forum
    Antworten: 3
    Letzter Beitrag: 11.02.2006, 13:08
  4. Wäre dankbar für zusätzliche Tipps
    Von Fladde im Forum Eure Homepages und Foren - Vorstellung und Bewertungen
    Antworten: 4
    Letzter Beitrag: 06.01.2006, 20:59
  5. Navigation
    Von McFly im Forum PHP Forum - Apache - CGI - Perl - JavaScript und Co.
    Antworten: 3
    Letzter Beitrag: 13.02.2005, 11:49

Stichworte

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •