T
toney
Guest
Guten Morgen,
ich baue seit einer Weile an einem eigenen CMS-Blogsystem, dass auch schon einen beachtlichen Umfang bekommen hat. Soweit funktioniert auch alles ziemlich gut, nur ein Problem beschäftigt mich schon lange.
Und zwar sollen die einzelnen Blogbeiträge nicht alle auf einer einzigen Seite stehen, da das irgendwann zu viele sind. Ich habe also die Anzahl Blogs auf 10 pro Seite beschränkt und unten einen Link zur nächsten Seite mit den nächsten 10 Beiträgen. Aktuell ist das so geregelt:
Meine Daten werden in einer XML mit folgender Struktur gespeichert:
Mittels PHP zähle ich dann alle Einträge, die weder privat noch disabled sind (also für jeden sichtbar). Dieser Wert durch 10 geteilt ergibt die Anzahl Seiten, die ich benötige. Die Seitenzahl wird in der URL übergeben. Bei Seite 1 werden also die 10 Beiträge mit den höchsten ID's ausgegeben, bei seite 2 die nächsten 10 (alles von hinten nach vorne, damit der aktuelste immer oben steht), usw.
Das funktioniert so alles eigentlich ganz gut, solange es keine privaten bzw. deaktivierten Beiträge gibt. Und genau dort liegt mein Problem. Wenn auf Seite 1 z.B. ein beitrag vorhanden ist, der auf disabled="y" (yes) gesetzt ist, dann werden mir auf Seite 1 nur 9 Beiträge ausgegeben, da ja bei Seite 1 dann nur 9 öffentliche Beiträge vorhanden sind und der deaktivierte nur nicht eingeblendet wird.
Ich zerbreche mir schon ewig den Kopf darüber, ob es nicht eine elegantere Lösung gibt, in der auch deaktivierte und private Einträge berücksichtigt werden. Also hier nun die Frage: Kann mir jemand zu einer besseren Methode/Strategie raten, wie ich das umsetzen kann? Wie wird sowas von Profis umgesetzt?
Ich danke schonmal für alle Antworten...
Gruß, toney
ich baue seit einer Weile an einem eigenen CMS-Blogsystem, dass auch schon einen beachtlichen Umfang bekommen hat. Soweit funktioniert auch alles ziemlich gut, nur ein Problem beschäftigt mich schon lange.
Und zwar sollen die einzelnen Blogbeiträge nicht alle auf einer einzigen Seite stehen, da das irgendwann zu viele sind. Ich habe also die Anzahl Blogs auf 10 pro Seite beschränkt und unten einen Link zur nächsten Seite mit den nächsten 10 Beiträgen. Aktuell ist das so geregelt:
Meine Daten werden in einer XML mit folgender Struktur gespeichert:
Code:
<?xml version="1.0"?>
<data>
<blog>
<entry private="n" disabled="n" id="1" type="blog">
<title>Test</title>
<author>admin</author>
<categories>
<category>Blubb</category>
<category>Test</category>
<category>1234</category>
</categories>
</entry>
</blog>
</data>
Mittels PHP zähle ich dann alle Einträge, die weder privat noch disabled sind (also für jeden sichtbar). Dieser Wert durch 10 geteilt ergibt die Anzahl Seiten, die ich benötige. Die Seitenzahl wird in der URL übergeben. Bei Seite 1 werden also die 10 Beiträge mit den höchsten ID's ausgegeben, bei seite 2 die nächsten 10 (alles von hinten nach vorne, damit der aktuelste immer oben steht), usw.
Das funktioniert so alles eigentlich ganz gut, solange es keine privaten bzw. deaktivierten Beiträge gibt. Und genau dort liegt mein Problem. Wenn auf Seite 1 z.B. ein beitrag vorhanden ist, der auf disabled="y" (yes) gesetzt ist, dann werden mir auf Seite 1 nur 9 Beiträge ausgegeben, da ja bei Seite 1 dann nur 9 öffentliche Beiträge vorhanden sind und der deaktivierte nur nicht eingeblendet wird.
Ich zerbreche mir schon ewig den Kopf darüber, ob es nicht eine elegantere Lösung gibt, in der auch deaktivierte und private Einträge berücksichtigt werden. Also hier nun die Frage: Kann mir jemand zu einer besseren Methode/Strategie raten, wie ich das umsetzen kann? Wie wird sowas von Profis umgesetzt?
Ich danke schonmal für alle Antworten...
Gruß, toney