WBCE Home | WBCE Hilfe | WBCE Addon Repository | Impressum | Datenschutz

WBCE CMS Forum

WBCE CMS – Way Better Content Editing.

You are not logged in.

#1 15.04.2019 12:14:16

annalena3030
Member

Verschieben von Abschnitten

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). roll

Danke Vorerst. annalena3030  ops

Last edited by annalena3030 (15.04.2019 12:14:46)

Offline

#2 15.04.2019 12:25:32

florian
Administrator

Re: Verschieben von Abschnitten

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.

Offline

Liked by:

annalena3030, mrbaseman

#3 15.04.2019 12:38:33

annalena3030
Member

Re: Verschieben von Abschnitten

... danke florian. thumb_up
Bin gerade in der DB  neutral  neutral  neutral . Bin gaaaaaaaaaanz vorsichtig  cool

Schöne Osterfeiertage.
annalena3030

Offline

#4 15.04.2019 13:45:28

mrbaseman
Developer

Re: Verschieben von Abschnitten

die Idee hatte ich die Tage auch schon, danke an Florian für den Link zu den früheren Überlegungen.

Offline

#5 15.04.2019 14:24:45

stefanek
Developer

Re: Verschieben von Abschnitten

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


"All the knowledge I possess everyone else can acquire, but my heart is all my own."
Johann Wolfgang von Goethe

Online

#6 15.04.2019 14:40:13

webbird
Administrator

Re: Verschieben von Abschnitten

Ja, die Spalte hab ich auch schon oft wegoptimiert. angel


Some people just need a high-five. In the face. With a chair.

Offline

Liked by:

stefanek

#7 15.04.2019 14:49:20

mrbaseman
Developer

Re: Verschieben von Abschnitten

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

#8 15.04.2019 14:53:40

webbird
Administrator

Re: Verschieben von Abschnitten

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.


Some people just need a high-five. In the face. With a chair.

Offline

Liked by:

mrbaseman

#9 15.04.2019 14:58:14

stefanek
Developer

Re: Verschieben von Abschnitten

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


"All the knowledge I possess everyone else can acquire, but my heart is all my own."
Johann Wolfgang von Goethe

Online

#10 15.04.2019 15:05:36

webbird
Administrator

Re: Verschieben von Abschnitten

stefanek wrote:

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.


Some people just need a high-five. In the face. With a chair.

Offline

#11 15.04.2019 15:15:28

stefanek
Developer

Re: Verschieben von Abschnitten

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.


"All the knowledge I possess everyone else can acquire, but my heart is all my own."
Johann Wolfgang von Goethe

Online

#12 15.04.2019 15:19:41

webbird
Administrator

Re: Verschieben von Abschnitten

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. angel


Some people just need a high-five. In the face. With a chair.

Offline

#13 15.04.2019 15:27:37

stefanek
Developer

Re: Verschieben von Abschnitten

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.


"All the knowledge I possess everyone else can acquire, but my heart is all my own."
Johann Wolfgang von Goethe

Online

#14 15.04.2019 15:43:35

mrbaseman
Developer

Re: Verschieben von Abschnitten

stefanek wrote:

Ich weiß nicht, wen Du da im Sinn hast, wenn Du von Modul-Entwicklern sprichst.

ein paar davon diskutieren hier ja mit smile 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

Liked by:

stefanek, florian

#15 15.04.2019 15:47:29

stefanek
Developer

Re: Verschieben von Abschnitten

webbird wrote:

Wobei zu erwarten ist, dass move und clone das gleiche Schicksal ereilt wie search. angel

Manche Sachen dauern halt und einige haben eine höhere Priorität.


"All the knowledge I possess everyone else can acquire, but my heart is all my own."
Johann Wolfgang von Goethe

Online

#16 15.04.2019 15:53:09

stefanek
Developer

Re: Verschieben von Abschnitten

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

Last edited by stefanek (15.04.2019 15:53:36)


"All the knowledge I possess everyone else can acquire, but my heart is all my own."
Johann Wolfgang von Goethe

Online

#17 15.04.2019 16:11:29

florian
Administrator

Re: Verschieben von Abschnitten

Das war Export Section / Import Section von FrankH. Download ist aber nirgends mehr verfügbar (auch über archive.org nicht)

Offline

#18 15.04.2019 16:13:23

webbird
Administrator

Re: Verschieben von Abschnitten

Nichts ist für die Ewigkeit, nicht mal die Versenkung... big_smile


Some people just need a high-five. In the face. With a chair.

Offline

#19 15.04.2019 16:14:27

webbird
Administrator

Re: Verschieben von Abschnitten

stefanek wrote:
webbird wrote:

Wobei zu erwarten ist, dass move und clone das gleiche Schicksal ereilt wie search. angel

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.


Some people just need a high-five. In the face. With a chair.

Offline

#20 15.04.2019 16:16:37

webbird
Administrator

Re: Verschieben von Abschnitten

Guck mal, Annalena, so kann man mit einer kleinen, harmlosen Frage große Dinge in Bewegung setzen! thumb_up 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.


Some people just need a high-five. In the face. With a chair.

Offline

#21 15.04.2019 16:51:55

stefanek
Developer

Re: Verschieben von Abschnitten

webbird wrote:
stefanek wrote:
webbird wrote:

Wobei zu erwarten ist, dass move und clone das gleiche Schicksal ereilt wie search. angel

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.  angel


"All the knowledge I possess everyone else can acquire, but my heart is all my own."
Johann Wolfgang von Goethe

Online

Board footer

Powered by FluxBB

up