MichaelS: Inhalte zentral ändern

Ein gesegnetes neues Jahr wünsche ich allen Foristen! Folgender Sachverhalt: Auf unserer Website befindet sich im oberen linken Bereich die Jahreslosung. Kein Problem, solange kein Jahreswechsewl ansteht und da die Jahreslosung folglich auch wechselt, muss der neue Text auf allen Seiten geändert werden. Dies bedeutete für mich: 42x Datei im Editor öffnen und dann mit "Strg+V" den neuen Text einfügen ( der zuvor natürlich kopiert worden ist). Dann wieder " Strg+S" zum Speicher und die einzelne Datei wieder schließen, anschließend alle html- Dateien neu hochladen. OK, das dauert nicht die Welt bei ca. 40 Webseiten. Doch habe ich mich gefragt, wie das bei 140 oder gar 1400 einzelnen Webseiten dann wäre. Dies wäre dann eine stundenlange, wenn nicht gar tagelange Arbeit mit möglicherweise anschließendem Besuch beim Orthopäden.

Mit CSS kann ich auf allen Webseiten zwar die Schriftart, Größe etc. bestimmen, aber eben nicht den Text-Inhalt und doch wäre es doch schön, wenn sich Texte zentral einfach ändern / ergänzen/löschen ließen.

Speziell dann, wenn die website im Menü erweitert wird, muss der Link ja auch in jeder Webseite einzeln eingetragen werden. Praktisch das gleiche Spiel wie zuvor.

Meine Frage ( als ein absoluter Nichtprofi): Gibt es da Möglichkeiten, derartige Änderungen schnell und elegant vornehmen zu können- oder geht dies nur über eine Datenbank?

Liebe grüsse von Michael

  1. Hallo Michael,

    danke schön, und auch Dir und deiner Gemeinde ein gutes neues Jahr 😀

    Was Dir vorschwebt, ist das Einbinden von bestimmten wiederkehrenden Inhalten auf mehreren Seiten. Dazu gibt es verschiedene Techniken. Eine Datenbank ist keine davon.

    Möglicherweise verwendet eine der brauchbaren Techniken eine Datenbank, aber das ist so, als wenn Du fragst "brauche ich einen Altar zum predigen?". Nein, brauchst Du nicht, du brauchst einen Prediger, und der steht MANCHMAL vor einem Altar und bezieht sich in seiner Predigt auf die Dinge, die auf dem Altar passieren.

    Deine Seiten sehen so aus, als kämen sie unbeleckt von PHP oder HTML Generatoren direkt aus deinem Texteditor. Und ich meine, dass wir uns - als Du noch als "keineAhnung" firmiertest - schonmal über Wiederverwendung unterhalten hatten.

    Das ist nicht ganz so einfach; mit nackigem HTML geht es nicht. Du kannst:

    • die Losung über CSS und eine ::before-Regel ins Dokument einsteuern. Aber das eignet sich hier nicht, sowas macht man mit Textfragmenten, die dekorativen Charakter haben, wie Sternchen oder Klammern. Deine Losung ist aber relevanter Inhalt
    • schauen, ob dein Hoster Server Side Includes unterstützt (ich weiß nicht mehr, ob wir darüber schon mal gesprochen hatten). Damit kannst Du den Apache dazu bringen, beim Ausliefern einer HTML Seite Inhalte anderer Dateien zu inkludieren. Das würde Dir bei Jahreslosung UND bei der Bereichsauswahl helfen.
    • Serverside-Includes mittels PHP include nachbilden. Dazu muss dein Web PHP unterstützen.
    • Die Seite über ein CMS wie Wordpress anbieten, das sicherlich Methoden kennt, um Redundanzen zu vermeiden. Das würde aber auch bedeuten, dass deine Seite deutlich schwergewichtiger wird und Du dein statisches HTML in das CMS übersetzen musst (und dann bist Du bei der Datenbank).

    Eine weitere Möglichkeit ist, die Seiten nicht fertig mit dem Editor zu erzeugen, sondern einen Webseitengenerator zu nutzen. Ich habe keinerlei Erfahrung damit, sowas habe ich noch nicht benutzen müssen. Aber ich stelle mir vor, dass es Tools gibt, mit denen Du ein Verzeichnis mit deinem Bearbeitungsstand der Webseite hast. Dort befinden sich in den HTML Dateien Platzhalter, z.B. {{LOSUNG}}. Wie das genau aussieht, hängt vom Tool ab. Wenn Du eine neue Version der Webseite publizierst, läuft der Generator über alle Dateien, ersetzt die Platzhalter durch Inhalte und schreibt das Ergebnis in ein Ausgabeverzeichnis. Dieses lädst Du dann auf den Server hoch.

    Leider kann ich Dir keinen solchen Editor nennen. Mein Versuch, etwas zu finden, ist im Getöse derjenigen, die mir die tollsten Tools zum Webdesign andrehen wollten, steckengeblieben. Du bräuchstest aber, um nicht komplett neu anfangen zu müssen, eher etwas einfaches.

    Ich persönlich würde es mit SSI oder PHP Includes versuchen, aber vielleicht hat ja auch noch jemand anderes eine gute Idee.

    Rolf

    --
    sumpsi - posui - obstruxi
    1. Hallo Michael,

      danke schön, und auch Dir und deiner Gemeinde ein gutes neues Jahr 😀

      ebenfalls!

      Du kannst:

      • die Losung über CSS und eine ::before-Regel ins Dokument einsteuern. Aber das eignet sich hier nicht, sowas macht man mit Textfragmenten, die dekorativen Charakter haben, wie Sternchen oder Klammern. Deine Losung ist aber relevanter Inhalt
      • schauen, ob dein Hoster Server Side Includes unterstützt (ich weiß nicht mehr, ob wir darüber schon mal gesprochen hatten). Damit kannst Du den Apache dazu bringen, beim Ausliefern einer HTML Seite Inhalte anderer Dateien zu inkludieren. Das würde Dir bei Jahreslosung UND bei der Bereichsauswahl helfen.
      • Serverside-Includes mittels PHP include nachbilden. Dazu muss dein Web PHP unterstützen.

      So hatte ich mit meiner Navigation angefangen.

      Im Wiki: PHP/Tutorials/Templates

      • Die Seite über ein CMS wie Wordpress anbieten, das sicherlich Methoden kennt, um Redundanzen zu vermeiden. Das würde aber auch bedeuten, dass deine Seite deutlich schwergewichtiger wird und Du dein statisches HTML in das CMS übersetzen musst (und dann bist Du bei der Datenbank).

      Ein CMS wie WordPress benötigt PHP und eine Datenbank, das haben mittlerweile alle Hoster. Die werben damit, dass du nur 8min für die Installation brauchst. Für einen Laien dauert alleine das Raussuchen der einzelnen Passwörter für den Server-Zugang so lange. Sollte aber in einem Tag erledigt sein - dann kommt das Anpassen: Das Theme ist responsiv, sieht aber nicht wie Deine alte Webseite aus.

      Was Du kriegst, ist neben der Möglichkeit eine Navigation oder die Losung einzubingen auch eine Volltextsuche über alle Seiten, Benutzerkonten für andere (scheitert oft am Interesse der anderen) und Versionskontrolle (du kannst ehemalige Textversionen wieder vorholen).

      HUGO

      Eine weitere Möglichkeit ist, die Seiten nicht fertig mit dem Editor zu erzeugen, sondern einen Webseitengenerator zu nutzen.

      Hier ist ein guter Einstiegsartikel zu HUGO, der auch die Nachteile nicht verschweigt:


      Es gibt bei den Möglichkeiten kein richtig oder falsch. Du kannst Deine Webseite auf eine weitere Stufe heben, benötigst dafür aber viel Zeit. Die PHP-Includes sind ok, werden dir aber wsl. bald zu wenig sein.

      Ich benutze Wordpress für die Schul-Homepage, bin mit der Einteilung in Beiträge und statische feste Seiten nicht ganz zufrieden, weiß aber auch nicht, wie ich es besser machen kann.

      Herzliche Grüße

      Matthias Scharwies

      --
      Einfach mal was von der ToDo-Liste auf die Was-Solls-Liste setzen.“
      1. Hallo @Matthias Scharwies,

        ich krieg immer eine Gänsehaut, wenn ich jemanden WordPress empfehlen sehe...

        Und möchte die Gelegenheit benutzen, mal wieder auf das leider viel zu wenig bekannte ProcessWire aufmerksam zu machen. Damit hat man mit Abstand weniger Sorgen um die Sicherheit wie bei WP oder joomla...

        Viele Grüße in die Runde, euch allen ein gutes 2022!
        ottogal

        Edit: Man beachte insbesondere https://processwire.com/about/wordpress-vs-processwire/

        1. Servus!

          Hallo @Matthias Scharwies,

          ich krieg immer eine Gänsehaut, wenn ich jemanden WordPress empfehlen sehe...

          Du hast ja Recht! 😀

          Es ist halt die eierlegende Wollmilchsau. Aber die Plugins sind Segen und Fluch: nicht weiterentwickelt oder dauernd neue Versionen; Einfallstore für SQL-Injection, etc.

          Bei Hugo habe ich das Problem, dass ich es noch nie ausprobiert habe. Interessant, dass die Inhalte nicht nur in Markdown (Obwohl das mittlerweile jeder kennt) sondern auch in HTML formatiert werden können.

          Und möchte die Gelegenheit benutzen, mal wieder auf das leider viel zu wenig bekannte ProcessWire aufmerksam zu machen. Damit hat man mit Abstand weniger Sorgen um die Sicherheit wie bei WP oder joomla...

          Edit: Man beachte insbesondere https://processwire.com/about/wordpress-vs-processwire/

          Das auf Deutsch: ProcessWire: Das Open-Source-CMS für individuelle Websites (IONOS)

          und hier 4 gute Kritiken: https://www.capterra.com.de/software/161666/processwire

          BTW: Hättest du Lust ein kleines Tutorial /Review über ProcessWire für unseren Blog zu schreiben? Evtl. mit einem Beispiel, wie man ein Modul/Plugin implementiert?

          Herzliche Grüße

          Matthias Scharwies

          --
          Einfach mal was von der ToDo-Liste auf die Was-Solls-Liste setzen.“
          1. Dieser Beitrag wurde gelöscht: Der Beitrag ist ein Duplikat eines anderen Beitrags.
          2. BTW: Hättest du Lust ein kleines Tutorial /Review über ProcessWire für unseren Blog zu schreiben? Evtl. mit einem Beispiel, wie man ein Modul/Plugin implementiert?

            Da müsste ich erst eine Menge von meiner To-Do-Liste auf die Was-Solls-Liste verschieben... 😆

            1. Hallo ottogal,

              Da müsste ich erst eine Menge von meiner To-Do-Liste auf die Was-Solls-Liste verschieben... 😆

              Ganz klar, du brauchst eine Not-To-Do-Liste! 🦘

              Freundliche Grüße,
              Christian Kruse

              1. Hallo,

                Da müsste ich erst eine Menge von meiner To-Do-Liste auf die Was-Solls-Liste verschieben... 😆

                Ganz klar, du brauchst eine Not-To-Do-Liste! 🦘

                sozusagen eine Donut ... ähm, Donot-Liste. 😉

                Immer eine Handbreit Wasser unterm Kiel
                 Martin

                --
                Wenn ich den See seh, brauch ich kein Meer mehr.
                1. Hallo Martin,

                  ich glaube, du hast eine Bildungslücke!

                  Freundliche Grüße,
                  Christian Kruse

                  1. Hi Christian,

                    ich glaube, du hast eine Bildungslücke!

                    das kannte ich tatsächlich noch nicht. Aber als Bildungslücke würde ich das nicht bezeichnen.
                    Vermutlich sollte das irgendwie witzig sein - ich habe mich aber nicht beim Lachen erwischt.

                    Wenigstens weiß ich jetzt die Not-to-do-Liste einzuordnen.

                    Immer eine Handbreit Wasser unterm Kiel
                     Martin

                    --
                    Wenn ich den See seh, brauch ich kein Meer mehr.
                    1. Hallo Zusammen,

                      vielleicht sollte man eine Prokrastinationsliste anlegen.

                      Gruß
                      Jürgen

                      1. Tach!

                        vielleicht sollte man eine Prokrastinationsliste anlegen.

                        ja, aber nicht jetzt.

                        dedlfix.

                        1. vielleicht sollte man eine Prokrastinationsliste anlegen.

                          ja, aber nicht jetzt.

                          👍😄

                          Ich hab sogar schon eine Prokrastinationsliste.
                          Mit der Überschrift "ToDo-Liste"...

                          1. Einen wunderschönen Sonnabend wünsche ich allen Foristen!

                            Ganz herzlichen Dank für alle mir zugeeigneten Antworten. Mein erster Gedanke war, nachdem ich alle Vorschläge gelesen ( aber längst nicht verstanden habe!), "mach weiter mit Strg+V". Das geht auf jedenfall ( bei ca. 40 Seiten) schneller, als mich in irgendwelche Programme, Sprachen etc. einzuarbeiten. Zudem weiß ich, was ich da mache und kann auf Fehler reagieren! Nein, das hat nichts mit Unwillen, Faulheit oder Ignoranz zu tun, sondern allein mit der Tatsache, dass meine Lebenszeit begrenzt ist und folgerichtig sich für mich die Frage stellt: Was ist wirklich ( für mich!) wichtig, was ist nett es zu können ( aber kaum zu brauchen) und was ist ( für mich!) z.Z. unwichtig. Prioritäten können sich natürlich ändern!

                            Ich bewundere Personen, die alle menschl. Knochen, Muskeln, Nerven etc. aus dem FF kennen- ich kenne sie nicht! Ich bewundere Menschen, für die MySQL, PHP, Javascript... so selbstverständlich wie das Besteck am Mittagstisch ist. Ich benutze auch gerne Messer, Gabel und Löffel, bringe das aber fast nie mit PHp etc. in Verbindung! Ein Bekannter brachte es mal auf den Punkt: " Wer auf allen Baustellen gleichzeitig arbeiten will, wird am Ende nichts erreicht haben."

                            Eine ToDo- Liste zu haben haben, ist wie ein Fahrplan, der zielorientiert durch die Lebenszeit führt. Das Haben ist also nie verkehrt. Ob die Notwendigkeit dessen mit dem Begriff " Prokrastination" umschrieben werden muss, ist Geschmackssache. Ich nutze gerne den Begriff " unliebsame Aufgaben vor sich herschieben". Da benötige ich kein Fremdwörterbuch zum Verstehen und habe wieder etwas Zeit gespart!

                            Ja, " keine Ahnung" von Webseiten habe ich noch immer! Fast alles ist erlernbar. Es ist nur eine Frage des Wollens und der Zeit. Ich denke, manchmal ist es (für mich) einfach besser, Profis einen kommerz. Auftrag für die Erledigung einer konkreten Aufgabe zu übergeben, als den Traum von einem "Alleskönner" und "Alleswoller" zu kultivieren. Ein bisschen Schnuppern ist aber gewiss nicht verkehrt.

                            In diesem Sinne:
                            Herzlichen Dank für Euren Stallgeruch😀 und viel Freude bei Eurer Arbeit!!!!!

                            Gruss vom Michael

                            1. Hallo Michael,

                              je nach dem, welche übrigen Aufgaben Du in Deinem Leben zu erfüllen hast, ist dein Ansatz durchaus korrekt. Es ist nicht so sinnvoll, 10 Stunden zu investieren, um am Ende 10 Minuten einzusparen…

                              Welche Möglichkeiten für euren Server sinnvoll sind, kann Dir sicher ein Profi sagen. Der wird unter 50€ pro Stunde nicht zu haben sein.

                              Bei einer derartig großen Gemeindefläche sollte sich aber doch auch ein Gemeindemitglied finden lassen, das Web-Knowhow hat und Dir ein paar Tipps geben kann? Das wäre einen Artikel im Pfarrbrief wert (oder wie auch immer das auf evangelisch heißt).

                              Rolf

                              --
                              sumpsi - posui - obstruxi
                            2. Hallo Michael,

                              es gibt eine weitere Lösung für das nachgefragte Problem: verwende einen HTML-Editor mit Include-Verwaltung, zB Phase5: Mehrfach verwendete Codestrecken (zB Menüs, Kopfzeilen, Fußzeilen, Seitenleisten) legt man in eigene Dateien. So müssen sie nur einmal zentral geändert werden, egal, ob sie in 40 oder tausend HTML-Dateien eingebunden werden. Anschließend gibt man dem Programm den Auftrag, alle betroffenen Dateien auf einen Schlag zu aktualisieren. Das findet auf dem lokalen Rechner statt. Anschließend muß man die so aktualisierten Dateien per FTP auf den Server hochladen.

                              Das ist eigentlich nichts anderes als das, was die so hochgelobten neuen „Static Site Generators“ wie zB Hugo auch erledigen. Aber im Gegensatz zu Hugo hat Phase5 eine grafische Benutzeroberfläche.

                              Phase5 kommt aber nur zur Bearbeitung historisch gewachsener Projekte mit einer ISO-irgendwas-Zeichenkodierung in Betracht. Für neue Projekte würde ich das Programm nicht verwenden (keine Unterstützung für die neuen HTML5-Elemente, keine UTF8-Fähigkeit ...). Phase5 wird seit Jahren nicht mehr weiter entwickelt.

                              Falls Du Dir die Kosten für einen „Profi“ doch sparen willst: Ich habe noch die Installationsdatei (887 KB) der Phase5²-Originalversion von Uli Meybohm: Diese Version kann ohne Lizenz und ohne Kosten auch von Vereinen und von Firmen genutzt werden.

                              1. Hallo

                                es gibt eine weitere Lösung für das nachgefragte Problem: verwende einen HTML-Editor mit Include-Verwaltung …

                                Völlig korrekt.

                                … zB Phase5

                                @MichaelS: Bei aller nostalgischer Verklärung dieses Editors[1] kann ich heute nur sagen, lass' die Finger von dieser Empfehlung.

                                Phase5 kommt aber nur zur Bearbeitung historisch gewachsener Projekte mit einer ISO-irgendwas-Zeichenkodierung in Betracht.

                                Genauer gesagt ISO-8859-1 und nichts anderes außer ISO-8859-1.

                                Für neue Projekte würde ich das Programm nicht verwenden (keine Unterstützung für die neuen HTML5-Elemente, keine UTF8-Fähigkeit ...). Phase5 wird seit Jahren nicht mehr weiter entwickelt.

                                @meltemi: Warum empfiehlst du dieses Museumsstück, wenn du um seine eklatanten Schwächen und Fehlstellen weißt? Allein wegen all deiner eigenen Argumente solltest du über Phase5 den Mantel des Schweigens ausbreiten. Phase5 war mal richtig gut, aber das ist mittlerweile nahezu 20 Jahre her.

                                Falls Du Dir die Kosten für einen „Profi“ doch sparen willst: Ich habe noch die Installationsdatei (887 KB) der Phase5²-Originalversion von Uli Meybohm: Diese Version kann ohne Lizenz und ohne Kosten auch von Vereinen und von Firmen genutzt werden.

                                Bis auf die Projektverwaltung kann Michael die Funktionen, wegen derer mal einstmals Phase5 nutzen wollte, auch in Notepad++ haben [2] und mit etwas Einarbeitung in jeder besseren IDE auch Projekte und diverse andere Funktionen, von denen keiner – vermutlich nicht einmal Michael – weiß, ob Michael sie erkunden, erlernen und nutzen wollen würde.

                                Wie gesagt, Phase5 war einstmals gut, ich habe ihn selbst gern genutzt. Das Zauberwort im vorigen Satz lautet allerdings „war“. Heutzutage sollte dieser Editor niemandem – ich wiederhole: niemandem [3] – empfohlen werden, außer man ist sich zu 110% sicher, den mit der Empfehlung bedachten weder leiden noch zukünftig begegnen zu können.

                                Tschö, Auge

                                --
                                200 ist das neue 35.

                                1. Ich selbst habe Phase5 jahrelang mit gekaufter Lizenz genutzt. ↩︎

                                2. Mutmaßlich wird es für Notepad++ sogar ein Plugin zur Projektverwaltung geben. ↩︎

                                3. um mal Herrn Barschel zu paraphrasieren ↩︎

                            3. Aloha ;)

                              Ganz herzlichen Dank für alle mir zugeeigneten Antworten. Mein erster Gedanke war, nachdem ich alle Vorschläge gelesen ( aber längst nicht verstanden habe!), "mach weiter mit Strg+V". Das geht auf jedenfall ( bei ca. 40 Seiten) schneller, als mich in irgendwelche Programme, Sprachen etc. einzuarbeiten. Zudem weiß ich, was ich da mache und kann auf Fehler reagieren!

                              Wenn dir PHP und Includes zu viel sind (ich kann das verstehen) und du beim Einfügen im Texteditor bleiben willst (auch das kann ich verstehen) kannst du dir das Leben trotzdem leichter machen.

                              Verwende dafür einen ordentlichen Editor (egal welchen, aber er sollte zumindest in der Lage sein, mehrere Dateien in verschiedenen Tabs zu öffnen. Ich kann für Windows Notepad++ oder Geany (auch für Mac, Linux) empfehlen.

                              Dann

                              • öffnest du alle Dateien, die du bearbeiten willst, in je einem Editor-Tab (z.B. indem du alle Dateien markierst und Rechtsklick -> öffnen mit),
                              • verwendest du in diesem Editor die Funktion "Suchen und Ersetzen"
                              • kopierst in das "Suchen"-Feld die alte Jahreslosung (am besten inklusive Start- und End-Tag des Elements, damit du nicht aus Versehen ein weiteres Vorkommen im Fließtext ersetzt)
                              • kopierst in das "Ersetzen"-Feld die neue Jahreslosung (auch wieder inklusive Start- und End-Tag)
                              • klickst auf den Button "Ersetzen in allen geöffneten Dokumenten"

                              Zackferdich. 30 Minuten Lebenszeit gespart und kein Hirnschmalz für das Erlernen einer Sprache gebraucht.

                              Grüße,

                              RIDER

                              --
                              Camping_RIDER a.k.a. Riders Flame a.k.a. Janosch Albers-Zoller
                              # Twitter # Steam # YouTube # Self-Wiki # Selfcode: sh:) fo:) ch:| rl:) br:^ n4:? ie:% mo:| va:) js:) de:> zu:} fl:( ss:) ls:[
  2. Hallo Michael,

    hast du javascript versehentlich ausgewählt?

    Ja klar geht das mit Javascript, du musst einmalig in jede betreffende Webseite den Aufruf der Datei zentralinhalte.js einbauen. In der kannst du dann den variablen Text jederzeit ändern.

    window.addEventListener('DOMContentLoaded', function () {
      if ( document.getElementById( "zentralinhalte1" )) {
        document.getElementById( "zentralinhalte1" ).innerHTML
        = "wir begrüßen dich im neuen Jahr 2022";
      }
    });
    
    <head>
    <script src="zentralinhalte.js"></script>
    </head>
    <body>
      <h1 id="zentralinhalte1"></h1>
    </body>
    
    1. Hallo

      <h1 id="zentralinhalte1"></h1>

      warum h1? Ich würde hier z.B. ein section, aside oder auch nur ein div nehmen, und den eingefügten Inhalt dann inhaltgerecht auszeichen.

      Gruß
      Jürgen

      1. Moin Jürgen,

        <h1 id="zentralinhalte1"></h1>

        warum h1?

        das war vermutlich nur ein Spielfallbeil ... äh, Fallbeispiel.

        Ich würde hier z.B. ein section, aside oder auch nur ein div nehmen, und den eingefügten Inhalt dann inhaltgerecht auszeichen.

        Dass man ein Element nimmt, was dann auch zur Struktur und zum Inhalt passt, sollte eigentlich selbstverständlich sein.

        Immer eine Handbreit Wasser unterm Kiel
         Martin

        --
        Wenn ich den See seh, brauch ich kein Meer mehr.