DP 7 + Marinelli theme = Problem sub-theme, hur löser man detta? Hur ska man hantera inställningarna i Sub-temat?

Events happening in the community are now at Drupal community events on www.drupal.org.
göran's picture

Hej,

Jag har ett problem med Marinelli-tema som jag gjort ett sub-them diretory till, samt editerat i subthemat.info - filen.
Fn är sub-temat "tomt" men jag har gjort några tidigare tester med bilder och CSS.
Jag kanske skulle nämna att jag ansluter sub-temat till DP7 utan direkta problem .

När jag går in i inställningarna för subthemat får jag följande error/felmeddelande:

-" Notice: Undefined index: Marinelli i system_theme_settings() (rad 556 av /Applications/MAMP/htdocs/dp.teste/modules/system/system.admin.inc).
Notice: Trying to get property of non-object i system_theme_settings() (rad 556 av /Applications/MAMP/htdocs/dp.teste/modules/system/system.admin.inc)."

Ändringar i sub-temat verkar också ha lägre prio än org. temat, vid tester med CSS och Img. Så även om jag lägger ändringarna i sub-temat överbryggas de sen av inställningarna i orginaltemat.

Jag har letat bland sub-theme problem utan att lyckas hitta liknande frågor.

Frågan:
1. Fungerar inte sub-them tekniken för detta tema i DP 7? ( temat utnyttjar "grid" samt CSS3 (avstängt) - kan detta vara orsaken?)
2. Hur ska jag hantera ändringar i CSS, temat reagerar med högre prioritet i originaltemats CSS än i subtemat?

När det gäller inställningarna i HEM|utseende|Inställningar| för sub-temat, hur ska jag tänka där?.

Påverkar ändringar i sub-temat org. temat på något sätt eller kan man bortse från dessa inställningar?

Någon som vet?

Comments

Det var någon månad sedan nu

filijonka's picture

Det var någon månad sedan nu jag satt med just det temat och gjorde ett subtema för att testa. tyvärr har jag raderat det (skall dubbelkolla) men det var inga problem så länge man följde instruktionerna. Har du kollat issuekön för temat baserat på det felmeddelandet du har får?

angående CSS regler så kan man alltid lägga till !important flaggan på en regel; tex backgroun-color: red !important;

men det finns säkert någon här som jobbar mera frontend än jag som kan det bättre hur man kan göra.

Ändringar i ett subtheme skall inte påverka org temat rent logiskt sätt utan enbart ärva eller skapa egna nya regler/inställningar etc.

Hoppas mitt svar hjälpte en del, mvh Peter

Är det inte bättre och editera i .info?

göran's picture

Mitt sub-temas mapp heter "marinellisub" och originalets temamapp heter "marinelli".

Är det då inte bättre att editera i marinelli.info?

Om jag prövar att lägga in följande kommando LÄNGST NER, efter det sista "original"-stylesheet:
" stylesheets[all][] = ../marinellisub/css/subchanges.css " (utan fnuttarna)
Sen skapar jag en mapp "css" + en fil i denna som heter "subchanges.css" som ligger i "marinellisub"-mappen..

Gjorde några tester och det funkar - då slipper man tänka på "!important;"-tillägget

Eftersom regelverket inom CSS säger ju att det SISTA kommandot alltid får högsta prioritet, vid konflikter med flera förekomster, så innebär det att alla ändringar jag skriver i "subchanges.css"-filen automatisk kommer få högre prio än originalet, eftersom det ligger sist i listan i "marinelli.info"-filen i org-temat.
En annan fördel är att man kan länka till img-mapp som innehåller bakgrundsbilder etc som man vill designa in i temat via css kommandon. Det borde gå att göra lika dant med "java"-mappen - som ofta i sin tur behöver css instruktioner (då får man ändra länken i .info utan dubblett samt kopiera över hela java mappen till "marinellisub".).

Är det inte bättre att editera i Marinelli.info i stället för att lägga en "kopia" av .info filen i subtemat som innehåller "massa fel"? ( alla länkanrop till mappar och filer som inte finns i marinellisub-mappen = fel)
Eller tänker jag själv fel här? ( jag vet ju inte hur DP7 hanterar allt - ännu)

Vid uppdatering behöver man bara "lagra" de få rader som man manuellt ska skriva tillbaka in i "marinelli.info"

// Göran

tänkte efter lite nu och jag

filijonka's picture

tänkte efter lite nu och jag behövde inte använda !important speciellt ofta och kom på varför nu..

om man har en class/id som tex .apa{} definierad i föräldertemat. Så kan du alltid overrida den med att hitta en selector som ligger minst ett steg ovan.

Så har man en class apa som du kan hitta inom en class .monkeys så kan du ge .apa i subtheme högre prioritet genom att definiera med .monkeys .apa{}.
Teoretiskt sätt men som jag inte har testat så borde du dessutom då kunna lägga till en body-class för ditt tema och därmed alltid ge dina regler högsta prioritet.

Att som du säger börja manipulera i föräldertemat är enligt mig aldrig en god idé och något av ett fulhack. Just pga av de sakerna som du själv skriver, man måste komma ihåg vad man har ändrat vid uppdaternar och vad händer om en annan person än du själv gör uppdateringen?

mvh Peter, Let IT Rock

Blir lite osäker nu?

göran's picture

Är det så besvärligt att hålla rätt på en rad med ändringar i [orginal].info filen?

// Göran

besvärligt?

filijonka's picture

allting är relativt såklart men jag utgår ifrån mina erfarenheter som OOP och då rör man inte föräldern när man skapar ett barn. Och det är själva grundidén med arv; ditt subtheme skall ärva ifrån föräldern och vill man göra förändringar så gör man det i subtheme.

Nu är jag ingen frontendutvecklare så man kanske har en annan syn på det hela då (tveksamt dock) men framförallt så kan man säkert dela med sig ett bättre lösningsförslag än det jag gav.

för mig personligen så använder jag oftast bara färdiga teman som ett bollplank för att skapa mina egna teman.

mvh Peter, Let IT Rock

Tack för dina svar, vad jag menade var...

göran's picture

Vill börja med att tacka för svaren, såg att mitt tidigare inlägg kan missuppfattas som snorkigt, vilket jag beklagar och framförallt inte avsåg.
Vad jag menade var...
...Att det endast är 1 st programrad att hålla rätt på i förälderns .info fil.
(Jag kanske har tänkt fel här, det kanske går att klara sig utan denna rad?)

Alla ändringar av css sker i barnet där det även går att ansluta nya img-mappar med bilder till temat - som bakgrundsbilder.

Barnet laddas före föräldern = diverse problem?
Om man lägger en dubblett av en bild i barnet så laddas den före föräldern, dvs det är förälderns bilder som gäller/syns.
Lite svårt att byta bakgrunder etc då, förstår inte hur en sådan lösning skulle sättas upp?

Vill avsluta med att säga att eftersom jag saknar erfarenhet av DP (detta är mitt 3:e startförsök på 5 år), blir jag mycket tacksam för de svar jag får, samt delar gärna med mig i framtiden av det jag själv fattat...

// Göran

göran's picture

Efter senaste uppdateringen, kommer sub-theme "by the book" i rätt ordning och man behöver inte "fulhacka" i org.temats .info-fil.

Däremot blir det problem om man tillfälligt avslutar subthemats modul, sen går det inte att ansluta med mindre än att man ominstallerar båda temana (org+sub) igen... (därav fulhacket), kan vara bra att veta tänkte jag.

// Göran

Sweden

Group notifications

This group offers an RSS feed. Or subscribe to these personalized, sitewide feeds: