How-To: Kopieren des Pragma-MX Content-Moduls

Begonnen von breakdancer, 21 Dezember 2007, 10:18:32

⏪ vorheriges - nächstes ⏩

0 Mitglieder und 1 Gast betrachten dieses Thema.

breakdancer

Moin,

nach langem Hin- und Herüberlegen habe ich mich heute entschlossen, einen größeren Eingriff in meinem PragmaMX vorzunehmen: Das Content-Modul soll dupliziert werden, da das Teil selbst keine Unterkategorien erlaubt, ich jedoch mehrere Content-Teilbereiche benötige.

Dazu habe ich in den letzen Stunden das Forum aufmerksam studiert um auf das Kommende vorbereitet zu sein.

Ich möchte mit euch zusammen gerne diesen Umbau durchführen, weil ich eure Hilfe dazu benötige und wir vielleicht anderen Usern diesen oft angesprochenen Vorgang etwas erleichtern können.

Wie ich aus den Forenbeiträgen ersehen konnte, kann man das Kopieren in drei grobe Einzelschritte unterteilen:

1) Kopieren und Umbenennen des Content-Moduls

2) Zugehörige Datenbanktabellen kopieren, umbenennen und neu in die Datenbank einspielen

3) Anpassen der Datenbankverweise im Modul selbst, Kopieren und Umbenennen der Dateien sowie Anpassen der Pfade im Admin-Bereich.


Zu 1)

Hierfür wird das Modul aus http://deinPfadzumPragmaMX/modules/content/

kopiert, umbenannt und wieder auf den Server hochgeladen. Der Pfad zu Deinem neuen Modul sieht dann in etwa so aus: http://deinPradzumPragmaMX/modules/NameDeinesneuenModuls/

Diesen Schritt bin ich jetzt gegangen. Schritt 1 ist abgeschlossen.


Zu 2)

Hier ist mein persönlicher erster Pferdefuß: Das Kopieren der Datenbanktabellen macht mir Schwierigkeiten, da es zwar für viele Module eigene Tabellen gibt (Links, Topics, Stories) nicht jedoch für das Modul "Content".

Konkrete Frage, bevor es weitergeht: Welche Datenbanktabellen muss ich nun für das Contentmodul auswählen und herunterladen ?

Liebe Grüße

Markus


StegRene

#1
Schau Dir mal http://www.viennaffairs.at an -> da ist es ohne Änderungen der DB gelöst.
Vielleicht reicht Dir das ja.

Wenn nicht, schau ich am WE mal in meine DB, da sollt man über den Content ja die richtigen Tabellen finden können.

//Edit1:

Als erstes ist mal die "pages"
Aber man sollte im Quellcode doch sehen, welche Tabellen er noch anspricht?
Kann nur grad ned schauen, ich bin im Büro

breakdancer

#2
Hallo René,

wenn ich das richtig sehe, hast Du das Problem gelöst, indem Du einzelne Content-Seiten aufrufst.

Das ist leider für mich nicht ausreichend, denn ich brauche defintiv verschiedene Inhaltsbereiche mit Einzelkategorien.

Damit Du weisst, was gemeint ist, hier ein Beispiel:


Name des Content-Moduls           Aufbau                                Einzelner Content

Volksfeste                                 Lukasmarkt Mayen                Historisches
                                                                                          Anfahrt und Parken
                                                                                          Veranstaltungen
                                                                                          Rückblick 2007
                                                                                          Rückblick 2006

                                               Allerheiligenkirmes, Soest       Historisches
                                                                                          Anfanrt und Parken
                                                                                          Veranstaltungen
                                                                                          Rückblick 2007
                                                                                          Rückblick 2006

Fahrgeschäfte                           Fly Away                                Allgemein
                                                                                          Geschichte
                                                                                          Technik
                                                                                          Reisende Exemplare

                                              Wilde Maus                            Allgemein
                                                                                          Geschichte
                                                                                          Technik
                                                                                          Reisende Exemplare

So ist es geplant. Anders kann ich es nicht umsetzen. Das Encyclopedia-Modul wäre auch nicht schlecht, aber auch da ist eine übersichtliche Gliederung nicht so möglich, wie ich mir das wünsche.

Ich guggemal in den Quellcode rein, was da so passiert. Muss mich ja eh damit beschäftigen. Was ich ja nur möchte, sind so ein paar Denkanstöße. Will es ja lernen.

Liebe Grüße

Markus


EDIT: Sooo, das war jetzt net sooo viel Arbeit. Die betreffenden Abfragen betreffen nur folgende Tabellen:

Also, die Datenbanktabellen die das Content-Modul anspricht sind folgende:

prefix_pages

prefix_pages_categories

und zwar in den Dateien index.php und friend.php des Content-Moduls.

Ich werde mir beide Tabellen jetzt mal rausziehen, umbenennen und wieder neu einspielen, danach die Abfragen ändern und dann mal sehen !  :BD:

Liebe Grüße

Markus

StegRene

Wie gesagt, Anstöße sind mein Hauptgebiet ;)
Programmieren kann ich selbst nur ein bisschen.

Ich versteh Dein Problem, ich kenn das auch.
Da meinen Seiten aber untereinander verlinkt sind, reichte mir "die kleine Lösung".
Gern nutze ich aber auch die dann von Dir erarbeitete Lösung ;)

Dumme Frage:
Über die "Spezialbereiche" läßt sich Dein Problem nicht einfacher lösen?

breakdancer

  :smile: So ist es. Der ganze Aufwand mit dem "How To" sollte ja auch genau dafür sein, dass andere das einfach und "auf die Schnelle" nachbauen können. Am Ende von diesem Thread wird eine genaue Schritt-für-Schritt-Anleitung stehen, möglicherweise auch ein komplettes 2. Content-Modul zum Upload, falls das von Adminseite erlaubt ist. Aber schaun wer erstmal.

Der erste Versuch die Datenbanken mit den geänderten Tabellennamen einzuspielen ist schonmal schief gegangen. Das lag aber daran, dass ich heute morgen nicht viel Zeit hatte und den Auszug per PhpMyAdmin gemacht habe. Da läuft gerne mal was falsch und so gab es auch prompt nen SQL-Fehler.

Aber jetzt in aller Ruhe der zweite Versuch.

Der Tip mit den Spezialbereichen ist gut, leider ist dieser bei mir auch schon thematisch belegt.  :BD:

Bis später !

LG

Markus

breakdancer

So Leute, das zweite Content-Modul ist soweit fertig. Ein paar Ungereimtheiten gibt es noch, z. B. habe ich wohl einigen "Content"-Variablen im neuen Modul vergessen umzuschreiben, bin aber gerade dabei auch diese entsprechend neu zu definieren.

Mehr isses ja net... :-) Am meisten Geduld benötigt man beim Admin-Modul, wo die ganzen Funktionen umgeschrieben werden müssen, aber das geht auch mit etwas Geduld.

Was nur ein bisschen mühselig ist, später alle Schritte einzeln aufzuschreiben. Die meisten Änderungen sind ja nur namentliche Umschreibungen der Variablen.

Oh Mann, da hab ich mir was aufgehalst...

Ich werde das Modul später nochmal komplett umschreiben. Derzeit habe ich die Variable sowie die Tabellennamen "volksfest" verwendet.

Wenn ich damit fertig bin, stelle ich es erstmal hier rein, damit ihr schonmal was zum Guggen habt. Hoffe, so um neun Uhr sollte das erledigt sein.

Liebe Grüße

Markus

breakdancer

Ho ho ho...

So, das Modul ist fertig und meinerseits mehrfach auf Funktionsfähigkeit getestet.

Frage an die Admins: Besteht Eurerseits Interesse, dass ich das Ganze mit einer kleinen Doku in die Downloads einsende ?

Ansonsten lade ich das Modul auf meinen Server und stelle es hier im Forum zum Download.

Liebe Grüße

Markus

breakdancer

Nö, net fertig... Sorry, wenn ich nochmal schreibe...

Ich brauche doch nochmal eure Hilfe.

Ich habe jetzt ein Problem beim z. B. Löschen und Ändern der Kategorien im Original Content-Modul.

Wenn ich im Original Content-Modul jetzt eine Kategorie ändere oder lösche, bleibe ich nur solange im Original Content Modul, bis ich in der Auswahlliste eine Kategorie ausgesucht und auf "ändern" geklickt habe. Daraufhin springt mein PMX automatisch auf die Kategorien des neuen Moduls und löscht bzw. ändert dort.

Kann m. E. eigentlich gar nicht sein, denn das Original Content-Modul (auch der Admin-Bereich davon) wurde von mir gar nicht verändert.

Wer weiss Rat ?

Liebe Grüße

Markus

Vidar

Hi,

dass klingt für mich danach, als hättest du bei der Änderung der Verweise auf die Datenbank einen Eintrag vergessen. Ich hatte damit auch ziemlich zu kämpfen, weil es einfach so viele Einträge gibt und man schnell mal einen übersieht. Schau doch einfach noch mal deine geänderten Dateien im neuen Modul durch, ob es nicht noch ein "versteckten" Verweis gibt, der noch nicht geändert wurde.

Hab mit der Suche vom Editor nach "pages" gesucht und so den ein oder anderen Verweis gefunden, der noch nocht geändert wurde.
"You can't just talk about your problems - you have to look for solutions!"

breakdancer

Hey Vidar,

nope, nochmals kontrolliert, da hab ich alles ersetzt. Hätte mich auch gewundert, denn es passiert ja vom Original Content Modul zum kopierten Modul und nicht umgekehrt... Seltsam ist das allemal..

Noch eine Idee ?

LG

Markus

m-t

hast auch admin\modules\content.php geändert, oder nur die dateien vom modul selbst ???

breakdancer

nö, nur die vom Modul. Die Content-Dateien im Admin-Bereich habe ich kopiert, umbenannt und dann entsprechend die ganzen Definitionen "content" in "volksfest" umbenannt.

Mehr nicht.  ;)

Liebe Grüße

Markus

m-t

Zitat von: breakdancer am 21 Dezember 2007, 20:50:51
und dann entsprechend die ganzen Definitionen "content" in "volksfest" umbenannt.

sql_query("update " . $prefix . "_pages set

breakdancer

Hm, wo hasten das jetzt her ? Das müsste ebenfalls "volksfest" heissen... Denn die Tabellen heissen "volksfest" und "volksfest_categories"...

Sprich ?  ;) Bitte in ganzen Sätzen *lach*

Ich weiss, es ist etwas doof eine Variable und einen Tabellennamen gleich zu benennen, aber in dem Fall war es für mich einfacher... Ist ja mein erster Versuch in dem Feld. Und im Kontext kann man ja immer klar erkenne, ob da eine .sql-Abfrage dahintersteckt oder nicht...


StegRene

Ok, ganzer Satz:

Wie ich es verstanden habe, hat er den angegebenen Code in der Datei "admin\modules\content.php " entdeckt.

breakdancer

 :puzzled: Ja, das ist ja auch richtig, oder ?

Das ist die Admin-Oberfläche vom Original-Content-Modul. Da bleiben natürlich die Pfade und DB-Abrufe wie gehabt, denn an diesem Modul ändert sich ja nüscht...

Ich peile es nicht. Hab so genau drauf geachtet, dass die Sachen sauber getrennt bleiben...

LG

Markus

StegRene

Naja, und ......... ach so.

Öhms. Jetzt wird mir das Problem klar.  :red:

Sekunde <nachdenk>  :gruebel:

m-t

Zitat von: breakdancer am 21 Dezember 2007, 22:06:36
Da bleiben natürlich die Pfade und DB-Abrufe wie gehabt, denn an diesem Modul ändert sich ja nüscht...

sorry war am fernseher :-)

damit wird der db eintrag aktualisiert und wenn die felder, in dem fall _pages, den gleichen namen haben dann änderst auch mit der kopie den original-eintrag  ;)

StegRene

@m-t: Aber er hat das Problem, wenn er in der ORIGINAL-Content-Kategorie-Einstellung was ändert, oder hab ich das falsch verstanden?

Zitat
Ich habe jetzt ein Problem beim z. B. Löschen und Ändern der Kategorien im Original Content-Modul.

Wenn ich im Original Content-Modul jetzt eine Kategorie ändere oder lösche, bleibe ich nur solange im Original Content Modul, bis ich in der Auswahlliste eine Kategorie ausgesucht und auf "ändern" geklickt habe. Daraufhin springt mein PMX automatisch auf die Kategorien des neuen Moduls und löscht bzw. ändert dort.

m-t

Zitat
bleibe ich nur solange im Original Content Modul, bis ich in der Auswahlliste eine Kategorie ausgesucht und auf "ändern" geklickt habe. Daraufhin springt mein PMX automatisch auf die Kategorien des neuen Moduls und löscht bzw. ändert dort.

na, wenn er was "ändert" geschieht das ja auf jeden fall im admin-bereich also liegt der "fehler" auch in dieser datei.

die datei mal hier ranhängen würde evtl. weiterhelfen ;-)

breakdancer

Hier sind se...

content.php ist die Originaldatei, die das Problem macht.

volksfest.php ist die geänderte content.php für das zweite Modul...

Ach Gott, ich sachs ja... Schlimm...  :BD:

m-t

content_save -> volksfest_save

_pages_categories -> _volksfest_categories

kannst das nicht besser kennzeichnen, alles ersetzt durch volksfest :-(

breakdancer

hab ja oben geschrieben, Anfängerfehler... Sorry...  :red:

m-t

und bis auf das Löschen und Ändern funktioniert alles ?
einträge werden erstellt ?

breakdancer

Im Content-Modul werden Einträge in vorhandene Kategorien korrekt erstellt, danach springt das Modul auch wieder auf die "Content" Übersichtsseite.

Wenn ich jedoch eine Kategorie im "Content" Modul erstelle, wird diese im "Volksfest"-Modul angelegt.

Andersherum passt übrigens alles. Das Volksfest-Modul verhält sich beim Erstellen von Inhaltsseiten und Kategorien vollkommen normal.

Liebe Grüße

Markus

m-t

ich seh da jetzt keine fehler  :gruebel:
arbeite dich halt mal schritt für schritt durch z.b.

function content() -> namen so lassen und im ersten schritt nur die namen für die db einträge ändern -> testen usw...
irgendwann sollte ja dann der punkt kommen wo es die unterschiede (fehlerhafte Einträge/Kategorien) gibt.

bei meinem 2ten web_links modul damals hab ich glaub einfach ne 1 an alles rangehängt

breakdancer

Keine schlechte Idee...

Ich zieh mir das Original-Modul jetzt wieder hoch und dann werde ich mich morgen nochmal den Tag über dransetzen..

Ich muss wirklich erst zwei, dreimal den ganzen Code durchlesen, damit ich weiss, welche Funktionen wo überall eingesetzt werden.

Danke euch allen schonmal.

N8

Markus

breakdancer

Moin,

extra früh aufgestanden, drei Stunden Arbeit mit dem Ergebnis: nüscht. Mir werden jetzt die einzelnen Beiträge in den Kategorien des neuen Moduls nicht mehr angezeigt.

Ich gebe auf. Was will man auch von jemandem erwarten, dem naturwissenschaftliche Logik fremd ist und der mit Hängen und Würgen regelmäßig grad noch so eine "5" auf seinen Zeugnissen im Fach Mathematik hatte.

Jetzt muss ich halt doch mal schauen, dass ich ne Alternativlösung für das Content-Modul und damit für meine Datenbank finde... Wie gesagt, Mediawiki wäre ne Möglichkeit. Schade nur, hätte es gerne mit PMX umgesetzt.

Deprimierte Grüße

Markus

Vidar

Hi,

nicht so schnell aufgeben ;) Ich werde heute mal meine Festplatte durchsuchen und vielleicht finde ich ja mein Content-Duplikat irgendwo. Falls ich es finden sollte, stelle ich es dir gerne zur Verfügung. Dann musst du nur noch die Datenbank-Tabellen anlegen.

"You can't just talk about your problems - you have to look for solutions!"

StegRene

@markus: wenn Du bis ins neue Jahr Zeit hättest, würd ich es mir auch nochmal anschauen.

Was mich aber wirklich wundert ist, dass das alte Modul auf die neue Tabelle zugreift. Das versteh ich nicht mal ansatzweise.....

Vidar

#30
Hi,

so hab nach langer Suche mein Duplikat gefunden und es mal Testweise auf einem Server ausprobiert. Bei mir hat es einwandfrei funktioniert. Wenn du willst, kannst du es gerne benutzen.

Hab auch eine kleine Anleitung hinzugefügt, wie ich es zum Laufen gebracht habe.

"You can't just talk about your problems - you have to look for solutions!"

m-t

Zitat von: Vidar am 22 Dezember 2007, 14:35:06
nach langer Suche mein Duplikat gefunden

auch mit ner zahl nach content :-)

markus hat mit sicherheit in den admin dateien was vergessen

Vidar

Zitat von: m-t am 22 Dezember 2007, 14:48:14
Zitat von: Vidar am 22 Dezember 2007, 14:35:06
nach langer Suche mein Duplikat gefunden

auch mit ner zahl nach content :-)

markus hat mit sicherheit in den admin dateien was vergessen

Ja, hab es dann nachträglich in Content2 geändert^^
Die Dateien hatte ich ziemlich vertreut gespeichtert und musste sie erst mal zusammen suchen :)
Ein Teil hatte ich auf dem Notebook und ein Teil auf meinem PC - Ordnung ist bei mir eher zweitrangig^^
"You can't just talk about your problems - you have to look for solutions!"

breakdancer

So, ist ja schon ein paar Tage her, aber ich denke mal ein dickes "Danke Schön" muss hier noch rein.

Das Modul läuft einwandfrei und ist durch die klare Variablen-Zuordnung auch leicht x-Mal zu kopieren.

:thumbup: Super Arbeit !

Liebe Grüße

Markus

_icke_

Hi,

schön das es doch noch geklappt hat. Welches haste denn jetzt genommen?

VG Marc

breakdancer

Das von Vidar.  :BD:

Dann beim Kopieren mal aufgepasst, welche Variablen ersetzt werden und welche nur "ähnlich" sind und bleiben... Lernt man ja auch bissl draus...

;)

Liebe Grüße

Markus

Vidar

Freut mich, wenn es geklappt hat ;)

Dann hat sich die Mühe wenigstens gelohnt^^
"You can't just talk about your problems - you have to look for solutions!"