Ergebnis 1 bis 6 von 6

Thema: Nutzen von Templates in Plone

  1. #1
    Gast

    Standard Nutzen von Templates in Plone

    Hallo,
    ich plage mich jetzt schon seit einigen Stunden mit Plone und Templates herum. Ich weiß, wie ich Templates erstellen kann (über Add Page Template) und diese Testen kann (über Test). Mein Problem ist jetzt, wie kann man die Templates in Plone nutzen? D.h. ich erstelle z.B. eine Seite index_html und diese soll unter anderem auch ein Template nutzen können. Ich konnte dazu auch noch nichts im Netz finden.
    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
    Kaiserliche Hoheit
    Registriert seit
    22.02.2005
    Beiträge
    1.558
    Danke
    0
    Bekam 0 mal "Danke" in 0 Postings

    Standard

    Hallo,
    es scheint so, als wenn du auf dem richtigen Weg bist, jedoch 1-2 Sachen noch nicht realisiert hast. Dazu Folgendes:
    Wenn du ein PT erstellst und testest, so wirst du von der Plone-Ansicht vermutlich nichts mehr sehen, weil du das PT pure erstellt hast. Um deine index_html in der Ploneseite zu sehen ist zu beachten, dass der Inhalt nicht direnkt, sondern in einem METAL-Tag steht.
    z.B.
    Code:
    <html xmlns="http&#58;//www.w3.org/1999/xhtml" xml&#58;lang="en-US"
      lang="en-US" i18n&#58;domain="plone"
      metal&#58;use-macro="here/main_template/macros/master">
    <body>
      <div metal&#58;fill-slot="main">
    
        
    
      </div>
    </body>
    </html>
    Dadurch wird alles was dein PT-Code anstellt in den Slot "main" gepackt. Dieser Slot ist quasi der Contentbereich der Ploneseite. Wenn du es so testest, wirdst du sehen, was ich meine.

    good Luck
    "Carpe Diem" powered by positiv Feelings

  3. #3
    Gast

    Standard

    Danke, es funktioniert jetzt endlich. Kannst du mir vielleicht auch sagen, wie ich folgendes Problem lösen kann:
    Ich habe eine Seite und ein Teil dieser Seite soll durch ein Template erzeugt werden, dass sich ein paar Daten aus der DB holt und diese zusammenbastelt. Der andere Teil der Seite soll direkt über das Plone editierbar sein.
    D.h. wenn ich mir die Seite mit Plone anschaue, dann soll er alles komplett anzeigen, aber wenn man die Seite Bearbeitet, dann soll man nur den Teil bearbeiten können, der nicht durch das Template erstellt worden ist.
    Momentan ist es so, dass man mit Bearbeiten gar nichts editieren kann. Das Eingabefeld dafür fehlt komplett.

  4. #4
    Kaiserliche Hoheit
    Registriert seit
    22.02.2005
    Beiträge
    1.558
    Danke
    0
    Bekam 0 mal "Danke" in 0 Postings

    Standard

    zum Ausblenden:
    Es kommt drauf an, welche Inhalte nicht angezeigt werden sollen und wie diese in der Site "liegen". Dann könnte man bsp.weise per CSS hingehen und diese einfach ausblenden. Eine andere Möglichkeit ist es, zentral das Adminrecht des aktuellen Users abzufragen. Danach kann man die Teile die nicht im Backend angezeigt werden sollen per tal:condition deaktivieren.

    Nehmen wir an du willst den Footer nicht in der Adminansicht angezeigt bekommen. Das geht dann in etwa so:
    Code:
    ...
      <html ... tal&#58;define="isManager python&#58; conatiner.checkManager&#40;&#41;;">
    ...
        
    ...
        <div id="footer"
             tal&#58;condition="not&#58; isManager">
          
        </div>
      </div>
    </body>
    </html>
    Das Script checkManager ist ein Script(Python) welches prüft, ob der User das Managerrecht inne hat. Sie liefert True oder False zurück.

    zum Editier-Modus:
    Jooh, also mit diesem Problem wollte ich mich schon des öfteren beschäftigen, jedoch fehlte mir bisher die Zeit dafür.

    Ich denke dass sich nur die Inhalte per Kupu ändern lassen, die von der Klasse ATContent abgeleitet sind. Das heißt dein Inhaltstyp müsste ein eigener Archetypes-CT sein, der dann über die Seite angezeigt wird und per Adminansicht editiert werden kann.

    Mit der Thematik Archetypes für Plone lohnt es sich auf jeden Fall zu beschäftigen, da viele Sachen sich fast schon spielend dadurch erledigen lassen.
    Leider gehört der Einstieg in die Archetypes nicht dazu. Dies bedeutet erhöhten Lernaufwand, der sich aber definitiv lohnt.

    Versuch also dich damit anzufreunden und beurteile danach, welcher Weg für dein Problem am ehesten geeignet scheint.

    Torty
    "Carpe Diem" powered by positiv Feelings

  5. #5
    Caos
    Gast

    Standard isManager

    Kann mir jemand sagen warum das bei mir nicht funktioniert?
    ich habe mir diesen tal-tag

    tal:define="isManager python: conatiner.checkManager()

    genommen um damit die manager rechte abzufragen um einen link in einem template auszublenden, aber er gibt mir immer den Fehler, dass er container nicht kenne.
    Warum?
    bei euch scheints doch auch zu funktionieren.

  6. #6
    Kaiserliche Hoheit
    Registriert seit
    22.02.2005
    Beiträge
    1.558
    Danke
    0
    Bekam 0 mal "Danke" in 0 Postings

    Standard

    Du hast was übersehen:
    Das Script checkManager ist ein Script(Python) welches prüft, ob der User das Managerrecht inne hat. Sie liefert True oder False zurück.
    Und ich habs leider nicht mit angehangen. Dies hol ich hiermit nach.
    Pack das Script also in dein portal_skins/custom als Script(Python)
    Code:
    ## Script &#40;Python&#41; "checkManager_py"
    ##bind container=container
    ##bind context=context
    ##bind namespace=
    ##bind script=script
    ##bind subpath=traverse_subpath
    ##parameters=
    ##title=
    # 
    # Version&#58; 0.1
    # Author &#58; ---
    # 
    # function-parameters
    #
    # return values
    #   boolean         - True if user has the Manager-role
    # 
    ###########################################################
    # Documentation
    # -------------
    # This script check if the user has the Manager-role.
    # 
    ###########################################################
    
    #------
    # init
    #------
    from AccessControl import getSecurityManager
    
    user = getSecurityManager&#40;&#41;.getUser&#40;&#41;;
    userRoles = user.getRoles&#40;&#41;
    
    #--------
    # return
    #--------
    return 'Manager' in userRoles
    Torty
    "Carpe Diem" powered by positiv Feelings

Ähnliche Themen

  1. Plone Site in neue Plone Installation einbinden
    Von lakul im Forum Zope & Plone - das deutsche Hilfeforum
    Antworten: 12
    Letzter Beitrag: 25.05.2008, 20:14
  2. LinkListe zu Plone (Templates, Produkte, News)
    Von pherison im Forum Zope & Plone - das deutsche Hilfeforum
    Antworten: 0
    Letzter Beitrag: 09.05.2007, 16:13
  3. Dateien gemeinsam nutzen
    Von Martin der Ahnungslose im Forum Computer - Internet Forum
    Antworten: 1
    Letzter Beitrag: 22.04.2007, 19:02
  4. Upgrade von Plone 2.1.2 auf Plone 2.5.2 inkl. python/Zope
    Von ThorstenS im Forum Zope & Plone - das deutsche Hilfeforum
    Antworten: 1
    Letzter Beitrag: 09.02.2007, 15:12
  5. FTP-Client im Netzwerk nutzen
    Von wernerdeluxe im Forum Computer - Internet Forum
    Antworten: 2
    Letzter Beitrag: 07.02.2006, 21:02

Stichworte

Berechtigungen

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