wo sollen in neuem theme die images und styles liegen?

  • hallo,
    ich habe ein neues theme erstellt, welches ein paar stylesheets und ein paar hintergrundbilder beinhaltet.
    jetzt frage ich mich, in welchen ordner ich die dateien ablege.
    wenn ich sie ins browser verzeichnis lege, werden sie über den ++resource++ pfad erkannt, in den skins ordnern werden sie gar nicht erst gefunden.

    mir ist auch nicht klar, wo der unterschied in den zwei ordnern liegt.

    sollen die dateien einfach nur im browser verzeichnis liegen?
    und wenn ja, wofür sind dann die skins-ordner?
    oder wenn ich letztere eher nutzen sollte, wie rufe ich sie in portal-css auf?

    gruß,
    krischan

  • Hallo,

    die Frage ist gar nicht so einfach zu beantworten wie man denkt. Es ist ein prinzipieller Unterschied zwischen Alter Zope 2 Technik im Skin Pfad der mehr implizit möglichmacht, wenn man das Verzeichnis auch registiert, was du offensichtlich nicht getan hast. Die Sachen ins browser Verzeichniss zu legen ist die Addaption der Zope 3 Browserviews in Plone. Hier hat man mit den Vorteil bei den Templates.

    Skins hat vorteile bei CSS und Javascript, Browser Views bei Templates. in portal_css werden sie fast identisch aufgerufen, browserviews mit dem ++ressource-pfad++, skins nur mit dem namen.

    Es hängt also ganz von dem Anwendungsfall ab.

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

    Marcel Mart
    frz. Schriftsteller

  • ok, also für für styles und bilder am besten die skins verwenden.
    aber wie?
    übrigens findet plone mein stylesheet im skin-verzeichnis doch, wendet es allerdings nicht an.
    in portal_css ist es aufgeführt, unter portal_skins/properties sind die layer unter meinem theme registriert, genauso wie in der skins.xml datei im profiles/default ordner. warum wendet plone die css-datei nicht an? hab ich irgendwo eine einstellung übersehen?

  • Hallo,

    Also er findet die stylesheets, er trägt die im portal_css ein, und sagt auch das er sie findet, in portal_skins sind sie für dein aktuelles Theme auch als Layer eingetragen, dann sollte er es auch nehmen, im Firebug mal bitte genau prüfen ob es da ist oder nciht, tip hierzu, portal_css in debugmodus setzten via ZMI, damit diese nicht mit anderen Css Dateien zusammen gemergt werden.

    Registriert hast du ja alles in skins.xml, und der configuration.zcml oder skins.zcml den Ordner registriert.

    Gruss Pumukel

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

    Marcel Mart
    frz. Schriftsteller

  • komisch,
    jetzt nachdem ich deine antwort gelesen habe, funktioniert es plötzlich einfach so.
    zumindest wenn ich in meinem main.css im skins ordner auf background-bilder im browser-ordner verweise.
    ändere ich aber den verweis von beispielsweise
    background: url(++resource++frauke.theme.images/bg.jpg)
    auf
    background: url(bg.jpg)
    um ein bild, das direkt über den browser hochgeladen wird, anzuzeigen, dann klappt wieder gar nix mehr. das stylesheet wird zwar im firebug angezeigt, aber keinerlei styles werden angewandt.
    ???

  • ok, jetzt klappt auch das irgendwie...
    noch zwei fragen hab ich allerdings:
    1. wie verweise ich denn in meiner css auf bilder im skins/images ordner?
    2. wenn ich zusätzlich eine css-datei reinnehme, die mir meine hintergründe über inline-rendering dynamisch einbindet, dann wird nix mehr dargestellt ausser der folgenden fehlermeldung:
    UnicodeDecodeError('utf8', '/* Stylesheet "images" f\xfcr frauke */ \r\n\r\n\r\n/* The background */ \r\n\r\nbody { background: url(bg.jpg) no-repeat; \r\n background-color: #FFFFFF; } \r\n', 24, 30, 'unsupported Unicode code range')
    hab ich das ganze im plonecustom ordner liegen, dann funktionierts...

  • Hallo,

    also bilder im skins folder werden direkt mit dem namen referenziert
    zu dem Fehler beim inline-redering, du hast eine Datei die ein Sonderzeichen wie ä ö ü ß oer so beinhaltet, dieses wirft einen Unicode-error einfach keine Deutschen-sonderzeichen verwenden.

    Gruss Pumukel

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

    Marcel Mart
    frz. Schriftsteller