Du må være registrert og logget inn for å kunne legge ut innlegg på freak.no
X
LOGG INN
... eller du kan registrere deg nå
Dette nettstedet er avhengig av annonseinntekter for å holde driften og videre utvikling igang. Vi liker ikke reklame heller, men alternativene er ikke mange. Vær snill å vurder å slå av annonseblokkering, eller å abonnere på en reklamefri utgave av nettstedet.
  6 593
Sikkerhetsklarert
Klønete topic ja. Er ekspert på det.

Uansett.. Driver å setter opp en liten blogg her, som er drevet med Wordpress og Mandigo theme.

Har tenkt om jeg går inn på en "page" som det heter i WP, så setter jeg en variabel i $_GET og css`n skal forandre header bildet deretter.

Dette fungerer delvis, dvs if setningen min vil aldri bli 'true' den hopper heller rett til 'else' selv om jeg vet at $_GET['y'] blir satt, da jeg bruker den til andre custom tilpasninger for denne ene undersiden.

style.css.php utdrag:

Kode

#header {

<?php 
$bmw = $_GET['y'];
		if(!empty($bmw)) { 
			echo "background: url(images/headerbmw.png)";
		}
		else ?>
		
	background: url(images/header<?php echo ($mandigo_1024 ? '-1024' : ''); ?>.png);
	height: <?php echo (243-($mandigo_slim_header ? 100 : 0)); ?>px;
	width: <?php echo (763+224*$mandigo_1024); ?>px;
}
Forventer ikke at noen gidder å sette seg inn i akkurat dette themet osv. Men generelt, er det noen som har erfaring med php i css? Burde jeg kanskje sette variabelen i siden som kaller css filen, slik at css ikke trenger å hente fra GET?
Sist endret av Pjukern; 12. november 2008 kl. 20:54.
Er du sikker på at if-setningen din ikke blir satt til true?

For selv om du har background: url(images/headerbmw.png) inne i if-setningen står det jo en ny angivelse av background like under. CSS vil jo da benytte sist angitte bakgrunn.

Du kan jo kommentere ut den andre backgrounden :
/*background: url(images/header<?php echo ($mandigo_1024 ? '-1024' : ''); ?>.png);*/
og se hva som skjer da?
prøv: if(isset($bmw)){ bla bla }
Sikkerhetsklarert
Trådstarter
Fant jo en feil med else`n min. Hadde ikke { og} på den.
Så nå ser det slik ut.

Kode

#header {
<?php $bmw = $_GET['y'];
	if(isset($bmw)){ echo "background: url(images/headerbmw.png)"; } 
	else { ?>	
	background: url(images/header<?php echo ($mandigo_1024 ? '-1024' : ''); ?>.png); <?php } ?>
	height: <?php echo (243-($mandigo_slim_header ? 100 : 0)); ?>px;
	width: <?php echo (763+224*$mandigo_1024); ?>px;
}
fortsatt ingen suksess.
Hvis du ikke har gjort det; ta echo $bmw for å se om det ligger noe i variabelen. (Tror ikke det er det som er problemet men det skader vel ikke å teste.)

En annen ting er vel at når man skal ha bilder i background må man skrive url('filnavn'), så prøv å legg på fnutter (') rundt filnavnet.

Eventuelt se i kildekoden for fila og se hva resultatet av scriptet er, og se hva som faktisk genereres, om du ser hva som blir feil utifra det.
$bmw vil vel alltid være satt, siden du lager jo den variablen selv. Hva med å sjekke isset($_GET['y']) istedet?

Edit: ser isset() skal returnere false om den inneholder null, som den burde om $_GET['y'] ikke finnes, men forslaget mitt er vel verdt å prøve fordet
Sist endret av flipp; 12. november 2008 kl. 22:00.
Sikkerhetsklarert
Trådstarter
Har forsøkt å kjøre isset rett på GET['y']
Og latt den echoe rett ut i css filen uansett.

Gjorde det samme med variabelen. Og ingen av de blir satt/ får innhold.
Det er veldig rart, da themet by default har flere if(isset($_GET['foo'])) i css filen.

Kan virke som at css filen lastes før functions.php hvor jeg setter $bmw variabelen.

Har fått til en workaround nå..
Themet støtter custom headers baser på post eller page id.
Page id fikk jeg ikke til å fungere, men den kan hente header ut i fra post id i en page også, så lenge jeg har en page som viser poster. Sett da header navnet til å være en av id`ene på postene i den siden.

Sikkert ingen som skjønte hva jeg mente, men om noen skulle søke opp denne posten en gang i fremtiden, så har de ihvertfall en slags løsning på det.
Sist endret av Pjukern; 12. november 2008 kl. 22:59. Grunn: Automatisk sammenslåing med etterfølgende innlegg.