Door
Donald Boers
op 01-05-2018 17:48
gewijzigd op 01-05-2018 18:00
2.223 views
Ik heb een content tafel in de database et de volgende velden:
CREATE TABLE IF NOT EXISTS `site_content` (
`content_id` tinyint(4) NOT NULL AUTO_INCREMENT,
`body_id` varchar(64) NOT NULL,
// andere rijen
`page_content` text,
`page_content2` text,
PRIMARY KEY (`content_id`),
KEY `pageId` (`page_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
Er staan 16 rijen in deze tafel. Van deze rijen zijn er 12 rijen die page_content gebruiken. Van deze 12 zijn er ook nog een 4 die page_content2 gebruiken. In de CMS gebruik ik momenteel de volgende if statements om te bepalen of page_content en/of page_content2 zichtbaar zijn:
Ja, maar je zou natuurlijk ook kunnen kijken hoe dit anders kan (en wellicht ook hoe dit ooit zo had kunnen groeien), en/of misschien aparte instanties voor deze pagina's maken? Dus e.e.a. opsplitsen in plaats van hier op één hoop gooien. Maar als dit maar 16 records zijn zou ik hier niet teveel moeite aan besteden. Optimaal lijkt het i.i.g. niet.
Misschien kun je ook wat snoeien in de condities, dit:
@Thomas van den Heuvel. Hartelijk bedank voor je reactie. Ik weet dat dit niet een ideale benadering is maar ik zit al de hele dag te piekeren hoe ik dit anders zou kunnen doen. Hoe zou jij dit aanpakken dan?
Als dat een beetje te kort door de bocht is (mag leeg zijn, moet toch getoond worden) heb je nog wat andere mogelijkheden:
- In je site_content tabel via een extra veld ook opslaan welke velden getoond moeten worden (0 = geen, 1 = alleen page_content, 2 = alleen page_content2, 3 = beiden)
- Een "magic" waarde opslaan in page_content en page_content2 voor als ze niet getoond moeten worden (er vanuit gaande dat als ze niet getoond moeten worden, de inhoud er ook niet zo toe doet). In plaats van dat je controleert of ie niet leeg is, controleer je of ie ongelijk is aan de "magic" waarde (zo ja: tonen).
Als dat een beetje te kort door de bocht is (mag leeg zijn, moet toch getoond worden) heb je nog wat andere mogelijkheden:
- In je site_content tabel via een extra veld ook opslaan welke velden getoond moeten worden (0 = geen, 1 = alleen page_content, 2 = alleen page_content2, 3 = beiden)
- Een "magic" waarde opslaan in page_content en page_content2 voor als ze niet getoond moeten worden (er vanuit gaande dat als ze niet getoond moeten worden, de inhoud er ook niet zo toe doet). In plaats van dat je controleert of ie niet leeg is, controleer je of ie ongelijk is aan de "magic" waarde (zo ja: tonen).
@ Rob Doemaarwat. Dat laatste, met die magic waarde, vindt ik een hele interessante benadering. Dat biedt namelijk de admin namelijk de mogelijkheid om indien gewenst, voor een bepaalde pagina een content blok aan of uit te zetten. Ik ga nog even de mogelijkheden op een rijtje zetten maar ik vind dit echt een verheldering
[size=xsmall]Toevoeging op 02/05/2018 00:02:14:[/size]
Donald Boers op 02/05/2018 00:01:00
[quote="Rob Doemaarwat op 01/05/2018 22:41:05"]
Komt het erop neer dat je page_content en page_content2 alleen wilt laten zien als ze niet leeg zijn? Want dan kun je dat beter controleren:
Als dat een beetje te kort door de bocht is (mag leeg zijn, moet toch getoond worden) heb je nog wat andere mogelijkheden:
- In je site_content tabel via een extra veld ook opslaan welke velden getoond moeten worden (0 = geen, 1 = alleen page_content, 2 = alleen page_content2, 3 = beiden)
- Een "magic" waarde opslaan in page_content en page_content2 voor als ze niet getoond moeten worden (er vanuit gaande dat als ze niet getoond moeten worden, de inhoud er ook niet zo toe doet). In plaats van dat je controleert of ie niet leeg is, controleer je of ie ongelijk is aan de "magic" waarde (zo ja: tonen).
[/quote]
@ Rob Doemaarwat. Dat laatste, met die magic waarde, vindt ik een hele interessante benadering. Dat biedt de site admin namelijk de mogelijkheid om, indien gewenst, voor een bepaalde pagina een content blok aan of uit te zetten. Ik ga nog even de mogelijkheden op een rijtje zetten maar ik vind dit echt een verheldering