Wie versprochen hier die Anleitung, wie man mit einer Sunlog-Installation mehrere Blogs füttern kann.
Das Ganze basiert darauf, ein Array mit Kategorien zu definieren, die im aktuellen Blog NICHT angezeigt werden sollen. Daher kann dieser Hack auch dazu verwendet werden, Einträge vorzubereiten und zu speichern, ohne sie noch anzuzeigen!
Dazu sind direkt in den Sunlog-Dateien einige Modifikationen nötig:
1. Zuerst muß man die Kategorien, die man dann ausblenden will, erst einmal in der Sunlog-Administration anlegen. Im Beispiel sind das die Kategorien „Hidden“ und „Privat“
2. In der Datei cfg/config.inc.php definieren wir etwa ab Zeile 22 (nach den ganzen restlichen Variablen) ein Array mit diesen Kategorien.
$nocat=array( "Privat", "Hidden");
Danach nehmen wir uns die Date index.php vor. Hier sollen die entsprechenden Einträge ausgeblendet werden. Dazu müssen folgende Zeilen eingefügt werden:
3. Nach unset($cats); (etwa bei Zeile 28) fügen wir folgende Zeile ein:
$show_entry = "1";
4. Nach if(!empty($cat_array[$i])){ (etwa bei Zeile 31) fügen wir folgende Zeile ein:
if (in_array ($cat_array[$i], $nocat)) { $show_entry = "0"; }
5. Nach <?php $foo=$date; } ?> (etwa bei Zeile 45) fügen wir folgende Zeile ein:
<?php if ($show_entry == "1") { ?>
6. Nun noch die eben geöffnete Klammer wieder schließen – dazu einfach eine zweite geschlossene geschwungene Klammer } vor include(„footer.inc.php“); ganz am Ende der Datei einfügen.
Nun die erforderlichen Änderungen in archiv.php. Dort werden ja die Kategorien normalerweise nicht mit ausgelesen.
7. Dazu ist folgender Block zweimal einzufügen:
$show_entry = "1"; $cat_array=explode(";",$cat); for($i=0;$iund zwar jeweils nach $title=stripslashes($title); (das erste mal etwa bei Zeile 111, das zweite Mal etwa bei Zeile 171 zu finden).
8. Zeile 115, die ursprünglich so aussieht
print($date.": <a href="entry.php?id=".$id."">".$title."</a><br />");ist zu ersetzen durch
if ($show_entry == "1") {print($date.": <a href="entry.php?id=".$id."">".$title."</a><br />");}9. Zeile 175, die derzeit so aussieht
if($monthstamp==$month){ist zu ersetzen durch
if($monthstamp==$month && $show_entry =="1"){10. Nun noch in der Datei categories.php die Zeile 11, die derzeit so aussieht
if(!empty($data[$i])){ersetzen durch
if((!empty($data[$i])) && (!in_array ($data[$i], $nocat)) ){Das wars - jetzt werden sowohl auf der Startseite als auch im Archiv Einträge der "verbotenen" Kategorien nicht angezeigt. Weiters werden diese Kategorien auch aus der Kategorieliste ausgeblendet. Nur entry.php zeigt die Einträge bei genauer Angabe der Eintragsnummer noch an (eine Vorschaumöglichkeit - man kann natürlich auch entry.php entsprechend patchen).
Nun kann man Sunlog in ein anderes Verzeichnis desselben Webservers überspielen (Voraussetzung: man muß von dort aus ebenfalls auf die Datenbank zugreifen können). Für diese Zweitinstallation muß man lediglich in der Datei cfg/config.inc.php die entsprechenden auszublendenden Kategorien definieren. Letzte Artikel von Ernst Michalek (Alle anzeigen)
- Rezension vs. Rezession - Mi. 27.12.2023
- Was Corona und Lotto gemeinsam haben - Di. 9.11.2021
- Heute vor 20 Jahren hat das große Abenteuer Segeln für mich begonnen :-) - Mi. 28.4.2021
Das ist klasse, das wollte ich schon lange! Bastel ich es jetzt nach oder hoffe ich, dass Andreas es offiziell einbaut? (Ich will ja nicht, dass es bei nächsten updaten wieder weg ist)