Sortierbuttons wirkungslos

Gesperrt
Kurby
Beiträge: 23
Registriert: Di 1. Sep 2009, 18:14
Kontaktdaten:

Sortierbuttons wirkungslos

Beitrag von Kurby » Di 14. Sep 2010, 11:10

Hallo zusammen!

Ich habe ein kleines großes Problem.

Mittlerweile besitzt meine Seite einige Kategorien, die meine 2-Ebenen-Tiefe Navigation darstellen.

Seit einiger Zeit funktionieren allerdings die Buttons zum Hoch- und Herutnerschieben der
Kategorien nicht mehr. Ich kann so oft draufklicken wie ich will, es passiert nichts.
Nach einem Blick in die Datenbank habe ich die Vermutung, dass die DB mit der ID Vergabe
aus irgendeinen Grund durcheinander geraten ist.

Kann ich irendwie die Sortierfunktion zurücksetzen bzw. die dazugehörige Tabelle in der Datenbank?

Oder hat jemand eine andere Lösung?

Vielen Dank!

Michael

xmurrix
Beiträge: 3147
Registriert: Do 21. Okt 2004, 11:08
Wohnort: Augsburg
Kontaktdaten:

Re: Sortierbuttons wirkungslos

Beitrag von xmurrix » Di 14. Sep 2010, 18:50

Hallo Kurby,

in welcher Contenido-Version hast du das Problem und wurde vorher eventuell ein Update des CMS gemacht? Ohne detaillierte Infos kann wird es mit der Hilfe im Forum etwas schwierig.

Es gibt eine Funktion, mit der der Kategoriebaum neu generiert wird, ob das dir hilft, kann ich nicht sagen - Du kannst es aber dennoch mal probieren. Mache aber vorher auf jeden Fall ein Backup der Datenbank oder mindestens folgender Tabellen:
* {prefix}_cat
* {prefix}_cat_art
* {prefix}_cat_lang
* {prefix}_cat_tree
* {prefix}_sequence
Wobei der Platzhalter {prefix} gegen den bei dir verwendeten Tabellenprefix ersetzt werden sollte (i.d.R. mit "con").

Dann kannst du z. B. in einem Modul folgenden Code einbauen

Code: Alles auswählen

cInclude('includes', 'functions.str.php');
strRemakeTreeTable();
und eine Seite aufrufen, in der das Modul eingebunden wurde. Die Funktion "strRemakeTreeTable()" leert die Tabelle der Kategoriestruktur und baut sie anhand der vorhandenen Kategorien erneut auf. Sollten die Kategorien aber falsche Einträge (übergeordnete, vorherige, nächste Kategorieid) haben, wird das nicht sehr hilfreich sein.

Bevor du das machst, kannst du die Logdatei unter contenido/logs/errorlog.txt prüfen, eventuell steht der Grund für dein Problem da drin.

Hilfreich kann es auch sein, die betreffenden Funktionen in der contenido/includes/functions.str.php zu debuggen. Beide bekommen jeweils die ID der Kategorie, die entweder nach oben oder nach unten verschoben werden soll.

strMoveUpCategory()
Bei strMoveUpCategory() wird der Code zum Verschieben erst dann ausgeführt, wenn auf der gleichen Ebene eine Kategorie vor der zu verschiebenden Kategorie existiert (preid > 0).

strMoveDownCategory()
Bei strMoveDownCategory() wird der Code zum Verschieben erst dann ausgeführt, wenn auf der gleichen Ebene eine Kategorie nach der zu verschiebenden Kategorie existiert (post != 0).

Gruß
xmurrix
CONTENIDO Downloads: CONTENIDO 4.10.1
CONTENIDO Links: Dokumentationsportal, FAQ, API-Dokumentation
CONTENIDO @ Github: CONTENIDO 4.10 - Mit einem Entwicklungszweig (develop-branch), das viele Verbesserungen/Optimierungen erhalten hat und auf Stabilität und Kompatibilität mit PHP 8.0 bis 8.2 getrimmt wurde.

Gesperrt