WBCE CMS – Way Better Content Editing.
Du bist nicht angemeldet.
Hallo und guten Tag, bin mal wieder online.
Meine Frage lautet, gibt es eine Möglichkeit einzelne Abschnitte von einer Seite in eine andere Seite zu verschieben (ohne Sektionspicker).
Danke Vorerst. annalena3030
Beitrag geändert von annalena3030 (15.04.2019 11:14:46)
Offline
Hatte ich auch mal dran gedacht, ist aber leider nicht so ohne weiteres umsetzbar. Es bleibt also nur der Weg, das direkt in der Datenbank zu versuchen (=> Adminer), aber da muss man dann auch sehr aufpassen.
Code allein macht nicht glücklich. Jetzt spenden!
Offline
annalena3030, mrbaseman
... danke florian.
Bin gerade in der DB . Bin gaaaaaaaaaanz vorsichtig
Schöne Osterfeiertage.
annalena3030
Offline
die Idee hatte ich die Tage auch schon, danke an Florian für den Link zu den früheren Überlegungen.
Offline
Das Problem ist, dass Module die ihre eigenen "Unterseiten" haben, oft in der DB Tabelle der Unterseiten die PAGE_ID drin haben. Das ist in der Struktur von Datenbank als "nicht normalisierte DB Struktur" bekannt.
Es würde ausreichen, wenn solche Module in diesen Tabellen nur auf die Eltern Section-ID verweisen, die Page-ID aber außen vor lassen. Die Page-ID lässt sich über PHP immer anhand der Section-ID ermitteln.
Dann wäre es viel leichter, so ein copy&paste oder cut&paste von Sections global zu machen.
Ich denke, dass diese nicht normalisierte Vorgehensweise bereits im ersten News Modul so gewesen ist und da die meisten weiteren Module meist Forks von News sind, hat sich das dann so "eingebürgert".
Es ist im Übrigen nicht sonderlich schwer, auf die PageID zu verzichten und ich würde den Entwicklern des neuen News-Moduls empfehlen, genau das zu tun. Denn es ist einfacher das von vornherein zu machen, als später, wenn bereits Einträge in der DB vorhanden sind.
Gruß,
Christian
“Success is the progressive realization of a worthy ideal.” ― Earl Nightingale
Offline
Ja, die Spalte hab ich auch schon oft wegoptimiert.
Ich habe eine Amazon-Wishlist. Oder spende an das Projekt.
Ich kann, wenn ich will, aber wer will, dass ich muss, kann mich mal
Offline
stefanek
Moment, hier geht es nicht nur um News sondern ganz allgemein ums Verschieben von Abschnitten beliebiger Module auf andere Seiten (auch wenn ich genau über den Weg "News" an dieses allgemeinere Thema gedacht habe).
Im allgemeinen hilft es nichts, wenn einzelne Module besser programmiert sind. Es müssten alle Module sich ein eine übergreifende Regel halten, insbesondere auch die, die es schon gibt, und die aktuell keine solche Regel befolgen.
Ich habe in dem von florian verlinkten Thread gelernt: Bei einem Tool oder einer eingebauten Core-Funktionalität, Abschnitte generell zu verschieben, müsste der Code raten, was alles zu der Section gehört. Ein Abschnitt wird von einem Modul bedient. Zu dem gehören vermutlich alle Tabellen, die mit dem Tabellenpräfix gefolgt von diesem Modulnamen beginnnen. Wenn dort irgendwo eine Spalte vorkommt, die zufällig page_id heißt, muss diese mit angepasst werden. Aber das ist noch nicht alles: Es kann ja durchaus auch der relative Pfad zur Seite, oder sogar die absolute URL in irgend einem beliebigen Tabellenfeld drin stehen oder ganz verrückte Dinge, an die man im ersten Augenblick gar nicht denkt. All das müsste der Core für alle Module sozusagen hellsehen oder zuverlässig erraten können (oder wie auch immer man das nennen mag).
Offline
Kurz eingeworfen: move.php
Analog zur Suche muss dann das Modul alles selbst mitbringen, was zum Verschieben notwendig ist. Ist eine move.php vorhanden, wird die Option im Backenend angeboten, sonst nicht.
Analog clone.php für Page Cloner, der ja das gleiche Problem hat.
Ich habe eine Amazon-Wishlist. Oder spende an das Projekt.
Ich kann, wenn ich will, aber wer will, dass ich muss, kann mich mal
Offline
mrbaseman
Ja, im Prinzip könnte man das Lösen, indem man jedem Modul eine Datei mitgibt, die bestimmte Variablen/Parameter bereit stellt.
Diese Datei könnte allgemein nicht nur dem Verschieben von Sections dienen, sondern auch z.B. im Snippet-Modul SimplePageHead Variablen bereit stellen, die momentan noch im Snippet selbst hart verdrahtet werden.
Es stimmt, dass es nicht ausreicht, auf diese Spalte in der DB Tabelle eines Moduls zu verzichten. Aber es ist ein wesentlicher Teil, der das ganze schon mal erleichtert.
Gruß,
Christian
“Success is the progressive realization of a worthy ideal.” ― Earl Nightingale
Offline
Ja, im Prinzip könnte man das Lösen, indem man jedem Modul eine Datei mitgibt, die bestimmte Variablen/Parameter bereit stellt.
Hab ich in diesem Fall anders gemeint. Die Datei soll das TUN, nicht Infos liefern, wie es zu tun ist. Für "einfache" Module könnte sie eine Core-Funktion kapseln, komplexere Module müssen halt selbst implementieren. So kann man für einfache Module eine Standard-move.php bzw. -clone.php ablegen und hätte auf einen Schlag einen Haufen Module verschieb- und kopierbar gemacht, für andere ist halt etwas mehr Arbeit notwendig.
Ich habe eine Amazon-Wishlist. Oder spende an das Projekt.
Ich kann, wenn ich will, aber wer will, dass ich muss, kann mich mal
Offline
Ich müsste es mir genauer anschauen, aber ich gehe davon aus, dass eine Klasse es übernehmen könnte und ein PageType Modul könnte dann einfach ein Extend dieser Klasse mitbringen, welches dann die nötigen Variablen und etwaige "Abweichungen" bereit stellt.
Wie immer, viele Wege führen nach Rom, manche sind bequemer.
“Success is the progressive realization of a worthy ideal.” ― Earl Nightingale
Offline
Ich bin ja ein Freund von Klassen und so, der von mir vorgeschlagene Weg wäre einfach der "gute alte WB-Weg". Ist auch heute noch für die meisten Modul-Entwickler der einfachste Weg. Wobei zu erwarten ist, dass move und clone das gleiche Schicksal ereilt wie search.
Ich habe eine Amazon-Wishlist. Oder spende an das Projekt.
Ich kann, wenn ich will, aber wer will, dass ich muss, kann mich mal
Offline
Ich weiß nicht, wen Du da im Sinn hast, wenn Du von Modul-Entwicklern sprichst.
Und die, die heute noch aktiv sind, den traue ich es zu eine Datei anzulegen und ein paar Variablen rein zu schreiben.
Es gibt viele Wege.
So wie die search Dateien in den Modulen fände ich es persönlich zu umständlich.
“Success is the progressive realization of a worthy ideal.” ― Earl Nightingale
Offline
Ich weiß nicht, wen Du da im Sinn hast, wenn Du von Modul-Entwicklern sprichst.
ein paar davon diskutieren hier ja mit der Gedanke mit einer move.php gefällt mir und wenn im Core eine Funktion (z.B. bei der Abschnittsverwaltung) eingeführt wird, dann könnte ich mir vorstellen, dass wir die mit ausgelieferten Core-Module gleich mit einer passenden move.php ausstatten (wysiwyg/ckeditor, miniform, und ein paar andere wären damit abgedeckt), ich ziehe mpform und code2 nach, für den News-Nachfolger findet sich bestimmt jemand. Damit hätte man schon mal die wichtigsten und wenn die Nachfragen kommen "wieso kann ich einen XY-Abschnitt nicht verschieben?" schaut man sich halt ModulXY an - und mit etwas Glück reicht es ja ein standard move.php mit ins Verzeichnis zu werfen.
Offline
stefanek, florian
Wobei zu erwarten ist, dass move und clone das gleiche Schicksal ereilt wie search.
Manche Sachen dauern halt und einige haben eine höhere Priorität.
“Success is the progressive realization of a worthy ideal.” ― Earl Nightingale
Offline
Es gab mal ein Modul von einem Entwickler, der schon länger nicht mehr dabei ist. Ich komme grad nicht auf seinen Namen.
Es war eigentlich ein Zweiergespann von Modulen. Eins war Abschnitts-Export, das andere war Abschnitts-Import. Als Dateiformat für all die Variablen und Inhalte hat er XML verwendet.
Gruß,
Christian
Beitrag geändert von stefanek (15.04.2019 14:53:36)
“Success is the progressive realization of a worthy ideal.” ― Earl Nightingale
Offline
Das war Export Section / Import Section von FrankH. Download ist aber nirgends mehr verfügbar (auch über archive.org nicht)
Code allein macht nicht glücklich. Jetzt spenden!
Offline
Nichts ist für die Ewigkeit, nicht mal die Versenkung...
Ich habe eine Amazon-Wishlist. Oder spende an das Projekt.
Ich kann, wenn ich will, aber wer will, dass ich muss, kann mich mal
Offline
webbird schrieb:Wobei zu erwarten ist, dass move und clone das gleiche Schicksal ereilt wie search.
Manche Sachen dauern halt und einige haben eine höhere Priorität.
Ich bin mir nicht sicher, ob Du mich richtig verstanden hast, aber lassen wir's dabei.
Ich habe eine Amazon-Wishlist. Oder spende an das Projekt.
Ich kann, wenn ich will, aber wer will, dass ich muss, kann mich mal
Offline
Guck mal, Annalena, so kann man mit einer kleinen, harmlosen Frage große Dinge in Bewegung setzen! Auch wenn es für den Moment keine Lösung gibt, die Dir wirklich hilft, mag es diese in Zukunft geben.
Bis dahin, abgesehen vom manuellen Eingriff in die DB, könnte man noch versuchen, die Sektion via Page Cloner zu duplizieren; wenn das funktioniert, alte Sektion löschen. Wenn das schief geht, hat man auch nichts kaputt gemacht.
Ich habe eine Amazon-Wishlist. Oder spende an das Projekt.
Ich kann, wenn ich will, aber wer will, dass ich muss, kann mich mal
Offline
stefanek schrieb:webbird schrieb:Wobei zu erwarten ist, dass move und clone das gleiche Schicksal ereilt wie search.
Manche Sachen dauern halt und einige haben eine höhere Priorität.
Ich bin mir nicht sicher, ob Du mich richtig verstanden hast, aber lassen wir's dabei.
Eine andere Frage wäre, ob Du tatsächlich verstanden werden wolltest.
“Success is the progressive realization of a worthy ideal.” ― Earl Nightingale
Offline