Beiträge von Re:Later

    Ja, das geht auch über die htaccess, aber zuerst mache ich das so.

    Wenn deine Seite example.org ist:


    Aktiviere das Umleitungs-Plugin und stelle "URLs sammeln" auf JA. Sowie "Domain in die abgelaufene URL aufnehmen" auf Nein.


    Gib bei Google als Suchbegriff ein:

    Code
    site:example.org

    Klicke die Suchtreffer durch. Das Plugin sammelt dann alle fehlerhaften Links, also die, die gar nicht mehr gefunden werden.


    Leite Sie dann unter Komponenten > Umleitung auf die neuen URLs um. Dabei reicht es übrigens, wenn die neue URL

    Code
    https://example.org/irgendwas/irgendwo/sonstwas

    lautet, nur

    Code
    /irgendwas/irgendwo/sonstwas

    als neue URL einzugeben, aber wie's beliebt.


    Leite nichts um, sondern archiviere die Einträge, die sowieso "Nonsense" sind. Wirklich nur die umleiten, bei denen es sich lohnt (!!!!!!!!!!!!!!!!!!!), weil eine "gleichartige" Seite bei dir existiert. Lass einfach alles andere Links liegen, wie CSS oder Bilder oder ... Man wird sonst nie fertig. Außerdem gehen zu viele Umleitungen für "Quatsch" auch auf die Seiten-Performance.


    Archivieren, damit "Aus den Augen aus dem Sinn" und nicht ständig wieder neu gesammelt werden. Wenn man sie nämlich in Papierkorb schiebt und dann löscht, tauchen die immer wieder auf.


    Schau anfänglich täglich in die Umleitungskomponente und leite neu gefundenes (Status: deaktiviert) entsprechend um oder archiviere "Blödsinn". Später kannst du dann längere Pausen machen. Ich stellen nach 2 Monaten das "URL sammeln" spätestens komplett ab, weil dann eh nur noch "uninteressanter Müll" reinkommt und das Ganze zur endlosen Beschäftigungstherapie wird.

    -----------

    htaccess können wir nichts zu sagen, da wir die alte und neue Struktur deiner Seite nicht kennen, ob sich das lohnt, für die o.g. toten Seiten Regeln "zu erfinden". Also bspw., wenn viele Seiten-URLs zugleich mit einer einzigen Umleitungsregel abgewickelt werden können, weil sich für alle nur ein "Ordner" geändert hat.


    Jedenfalls werden darin alte URLs umgeleitet, die auf der neuen Website jetzt inhaltlich falsche Seiten anzeigen. Da müsstest du dann aber mit konkreten Beispielen kommen, damit man helfen kann.


    Auch die findest du ja oben mit der Google-Klickserei.

    -----------

    Oder, falls Euer Suchmaschinen-Ranking nun gar nicht soooo dolle ist und sich die obigen Aktionen zeitlich gar nicht lohnen:

    In der Google Search Console gleich eine Neu-Indexierung der Seite anstoßen.

    Spart einen Haufen Arbeit, der sich vielleicht gar nicht lohnt.

    Nicht vergessen, die alte Sitemap zu entfernen, falls Ihr eine für die alte Website eingereicht habt.

    Vieles von dem, was du schreibst, ist ohne Link zur Seite einfach nicht nachvollziehbar. Keine Ahnung, was du mit

    dass der user im eingeloggtem zustand oben rechts noch das wort "mein konto" vom ursprünglichen login sehen

    Was ein User sieht oder nicht, steuert man über die Zugriffsebenen in Joomla.

    Nicht angemeldet sichtbar bekommt Zugriffseben Gast/Guest.

    Angemeldet sichtbar bekommt Zugriffsebene Registriert.

    Oder halt Pendant, wenn du mit eigenen Zugriffsebenen arbeitest. Betonung auf "Zugriffsebenen".


    Oder halt Status.


    VM-Kontos sind Joomla-Benutzerkonten. Klar kannst die löschen. Du kannst via VM sogar alle Joomla-SuperUser löschen, so dass keiner mehr reinkommt ins Joomla-Backend ;) Weshalb ich, unter anderem schrägen Kram, VM nur selten verwende.


    Also kannst Usern auch die joomlaeigenen Privacy-Fubnktionalitäten ("Löschen" des Kontos = Anonymisieren des Kontos beantragen) anbieten. Auch das hast du abzuwickeln, nachdem du geprüft hast, ob alle VM-Vorgänge ausreichend fürs Finanzamt dokumentiert sind.


    Die Frage ist allerdings, warum du irgendwas löschen willst oder Usern die Möglichkeit geben willst. Abgeschlossene Bestellungen (auch, wenn sie nicht vollständig abgewickelt wurden) sowie zugehörige User sollte man bestenfalls dann löschen, wenn man sicher ist, dass der Vorgang anderweitig dokumentiert ist, bspw. in deinem Papier-Aktenordner fürs Finanzamt.


    "Stornierungen", Gutschriften (also Rückzahlung des gezahlten Rechnungsbetrages) sind dein Job als Seitenbetreiber. Für all das gibt es Status-Einstellungen in den Bestelleinstellungen, damit man den Überblick nicht verliert. Man kann auch Kunden per Email beim Umstellen des Status per Email darüber informieren.


    Ein Kunde, der nicht bezahlt, hat storniert. Einer, der sich mit diesem Wunsch bei dir meldet bzw. die Ware zurückschickt, hat storniert und du wickelst das ab.


    In einer Firma mit "echtem" Buchungssystem ist es jedenfalls absolutes No-Go irgendwas zu löschen, weil Prüfer durchaus auch die Datenbank bei dir anfordern können und Besteller durchaus Dokumente aufheben könnten, die in deinem System nicht sauber abgebildet sind bzw. nicht durch eine saubere "Gegenaktion" wie eine Gutschrift z.B.. usw. usf.

    spotifyerlaubt solche Aufrufe nicht aus/in einem Iframe auf deiner Seite (und das ist das PopUp letztlich).


    Das funktioniert auch nicht aus einem normalem Iframe heraus, also ohne PopUp-Funktionalität. Diese Dienste wollen wohl alle, dass man auf deren Seite geht bzw. auf ampLink, die vielleicht eine "Sonderelaubnis haben" bzw., weil die direkt auf die Dienste verlinken (Wechsel der Seite) und die Links bei denen nicht in einem Iframe liegen. Ich vermute mal letzteres.


    Kommst also nicht drumrum, diese Playerlinks direkt auf deine Seite zu legen oder halt doch einfach nur normaler Link auf die ampLink-Seite.

    Vermutlich:

    Die Zeile 225 https://github.com/BabDev/Podc…ntrollers/folder.php#L225

    änderst du nach

    Code
    $result = $dispatcher->trigger('onContentBeforeSave', array('com_podcastmedia.folder', &$object_file, true));

    Sollte bei dir die Datei administrator/com_podcastmedia/controllers/folder.php sein.


    Die Zeile 158 https://github.com/BabDev/Podc…controllers/file.php#L158 änderst du nach

    Code
    $result = $dispatcher->trigger('onContentBeforeSave', array('com_podcastmedia.file', &$object_file, true));

    Sollte bei dir die Datei administrator/com_podcastmedia/controllers/file.php sein.

    So ungefähr:


    Das ist normales Browser-Verhalten. Beide Formulare bzw. hier die Eingaben in die Suchformulare werden als sog. POST-Request an den Server gechickt, der dann die Ergebnisse ermittelt und anzeigt.


    Diese per POST gesendeten Formular-Eingaben werden aber vom Browser nicht in der sog. Browser-History (= Zurück-Button) zwischengespeichert. Deshalb beim Zurück die Frage, ob die Daten erneut gesendet werden sollen.


    Warum? Stell dir vor, du bist in einem Kontaktformular, hast gesendet und klickst später den Zurück-Button zum Emailformular (besser: in den Senden-Schritt). Es würde erneut gesendet. So ungefähr jedenfalls das Szenario, das der Browser zu verhindern sucht. Du hast eine Bestellung mit Senden abgeschlossen und kehrst mit Zurück in den Sendeschritt zurück. Doppelte Bestellung.


    So, und die Joomla-Suche ist diesbzgl. etwas cleverer. Wenn du genau hinschaust, sind die Suchkriterien nämlich auch in der URL der abgeschickten Suche zu finden. Hinter dem Fragezeichen.

    Code
    http://www.deutsche-mugge.de/index.php/component/search/?searchword=musik&ordering=alpha&searchphrase=all&limit=20

    Das sind dann sogenannte GET-Request-Daten, im Unterschied zu den POST-Daten, die, nebenbei, das Formular ebenfalls geschickt hat. Auch, wenn der Browser das Formular nicht gespeichert hat, hat er doch die GET-Daten aus denen er das Formular plus die Suchtreffer rekonstruieren kann, sozusagen. Weil Joomla die in diesem Fall bevorzugt auswertet.


    Geh mal auf

    Code
    http://www.deutsche-mugge.de/index.php/videopremieren.html

    Klicke auf die "Titelüberschrift" zum Sortieren der Tabelle. Die Sortierung passiert per POST-Request. Dann einen Beitrag klicken. Dann Zurück-Button. Selbes Phänomen (Dokument erloschen). Weil nur POST-Daten; und keine GET-Daten als Fallback in der URL.

    Installieren und aktivieren:

    https://www.joomlacontenteditor.net/downloads/mediabox


    Du legst ein neues Modul vom Typ "Eigenes Modul an".

    Im JCE-Editor klickst du den Link-Knopf.

    Fügst den Link ein im Feld URL. Im Feld Text beliebig.


    Wechselst in den Tabulator "Popups"



    wählst "JCE-Mediabox PopUp".

    "Hide Popup Link": Ja (oder Nein, falls du ihn dauerhaft anzeigen willst.)

    "Auto Popup": Single

    "Media Type": IFrame


    Insert-Button unten.


    Weitere Einstellungen für das Modul:

    Menüzuweisung: "Auf allen Seiten"

    Modulstil: System > none

    Titel anzeigen: Verbergen


    Irgendeine unverfängliche Modulposition wählen. Oft eignet sich Debug. Kann ich aber nicht wissen.

    Oder halt eine prominente Modulposition, wenn du den Link anzeigen willst, damit Besucher noch mal klicken kann, obwohl er das PopUp schon mal gesehen hat.

    soll im Feld ID automatisch der höchste bestehende Wert + 1 angezeigt werden.

    Und warum? Datenbank-Tabellen speichern im Normalfall die ID-Werte als AUTO_INCREMENT-Wert (automatisch hochzählend) und zwar so, dass sie immer eindeutig ist, also selbst, wenn eine gelöscht wird, wird sie niemals ersetzt.


    Ich verstehe jetzt nicht, wo das Problem ist, wenn der User exakt diese ID sieht (Hauptsache ist ja, dass sie auf ImmerUndEwig eindeutig zu diesem spezifischen Eintrag gehört und nicht zu einem anderen).


    Wenn du die AUTO_INCREMENT-Eigenschaft aus dem Feld entfernst, musst dich halt selber darum kümmern, wie ID hochgezählt wird. Aus Erfahrung weiß ich allerdings, dass das früher oder später zu Chaos führt, wenn man das System dann irgendwann mal relational ausbauen will.

    Falls du JCE-Editor nicht verwendest (wo man luxuriös unter dem Link-Button > Tabulator "PopUps" konfigurieren kann, wenn Mediabox auch installiert ist:


    Installieren und aktivieren:

    https://www.joomlacontenteditor.net/downloads/mediabox


    Im Beitrag (geht nat. auch im Template oder einem Modul)

    Code
    <a class="jcepopup autopopup-multiple noshow" href="https://ampl.ink/W4Dlk" type="iframe" data-mediabox="1">https://ampl.ink/W4Dlk</a>

    autopopup-multiple: Öffnet PopUp automatisch bei jedem öffnen des Beitrags

    autopopup-single: Öffnet PopUp pro User nur ein mal

    noshow: versteckt den Link

    ob du da mich meinst

    Nein. Jedenfalls nicht bösartig in so direkter Form. Deshalb auch die Gänsefüßchen. Sondern das wäre mein Gedankengang, wenn ich eine fiese, abgebrannte Rechtsanwalt-Zecke oder ein Konkurrent wäre, die Webseiten nach rechtlichen Fehlern durchsuchen. Es würde mich als ein solcher animieren, noch genauer hinzuschauen, ob sich da nicht was finden lässt.


    War also nur ein allgemeiner Hinweis, dass in rechtlich relevanten Hinweisen zu viel auch falsch sein kann und manchmal sogar rechtlich anfechtbar ist => mögliche Abmahnung.

    Das Cookie-Hint-Dingens bei Euch redet z.B. über mehrere Google-Services bzw. -Cookies (Marketing, Werbung etc.), die angeblich gesetzt würden:

    1) finde ich die nicht, wie Lui_brempt ja auch nicht

    2) gäbe es die, wäre es weitaus bedenklicher, dass in der Datenschutzerklärung nicht explizit auf diese Dienste eingegangen wird.


    Zu viele Leute bringen DSGVO und ePrivacy durcheinander. Bei Letzterem ist rechtlich das letzte Wort noch lange nicht gesprochen bzgl. Umgang mit Cookie-Handling. Erstere fordert aber explizit, was ich unter 2) sage. Andersrum ist es aber auch ein Fehler, in der Datenschutzerklärung auf Dinge hinzuweisen, die überhaupt nicht relevant sind. Ein untrügliches Zeichen, "dass Betreiber keine Ahnung von seiner Seite bzgl. GSGVO hat".


    Dass cookiebot, ich sag mal: unseriös, zu viele URLs sammelt und nicht regelmäßig "ausradiert", was gar nicht mehr gibt, ist übrigens bekannt.


    Als weiteren Tipp: Und solltet ihr Social-Media-Buttons verwenden wollen, solltet ihr nicht die nehmen, die das Template wohl mitbringt (zumindest lädt es ein JavaScript dafür), sondern https://github.com/joomla-agency/plg_jooag_shariff/releases verwenden. Nimmt schon mal einigen Stress raus.

    Dieses Framework wurde zumindest früher direkt in den Templates-Ordner mitreingepackt.

    TEMPLATENAME/lib/framework/


    Es gibt auch noch ""aktuelle"" Templates, z.B. von joomlatd, die das dabei haben. Das sind soweit ich sie kenne, für Joomla-3 aufgebohrte Joomla-2.5-Templates.


    Ich persönlich halte es, sowie alle "Klone" von Stools, weitestgehend für unnötig wie Kropf, weil es hauptsächlich die index.php in alle möglichen Unterdateien aufsplittet ==> SuchSuchSuch.

    Mag sein, dass das dann für die Template-Programmierer leichter geht.


    Und dann gibt es noch was als System-Plugin, was Stools heißt. Kenn ich nicht. Hab nur gesehen, dass es JS und CSS aus dem /plugins/-Ordner lädt. Ja mittlerweile auch No-Go.

    Vielleicht dann auch für Backendeinstellungen des Templates?

    Ich schätze mal dies abwesende Plugin verursacht dann die Meldung oben.

    Ich red hier von der Free-Version.

    Wie kann ich meine Joomla-Installation überzeugen, die aktuelle Erweiterung von ExtraWatch über die alte zu installieren?

    Könnte jetzt nat. schon zu spät sein, aber die Ursache ist, dass in der Manifestdatei pkg_ExtraWatch.xml drinnen steht

    Code
    <extension type="package" version="3.3">

    statt

    Code
    <extension type="package" version="3.3" method="upgrade">

    Damit verbietet die Erweiterung selbst das neu installieren. "Der Teufel weiß..."


    Was ich rein aus Spieltrieb probieren würde. Die pkg_ExtraWatch-Joomla-3.x.zip entpacken und in der genannten Datei die o.g. Zeile entsprechend anpassen. Dann wieder zippen und nächster Versuch.


    Oder die Radikalvariante.


    In der Joomla-Datenbank in Tabelle #__extensions, alles zu extrawatch löschen, vermutlich je ein

    pkg-Eintrag

    Komponenten-Eintrag

    Plugin-Eintrag.


    Dann wie oben empfohlen, im Webspace nach extrawatch suchen.

    components/

    administrator/components/

    administrator/manifests/ (vermutlich unterordner packages/)

    plugins/system/


    und umbenennen oder löschen.

    Nutzt der Joomla Befehl „insertid()“ die MySQL Funktion "LAST_INSERT_ID()",wenn eine MySQL Datenbank genutzt wird?

    Durchsuchst du den libraries/joomla/database/-Ordner nach

    Code
    function insertid()

    , dann siehst du, was verwendet wird, eben je nach eingestelltem Datenbank-Typ (Joomla-Konfiguration).


    https://github.com/joomla/joom…es/joomla/database/driver


    MySQLi z.B.

    Code
    mysqli_insert_id($this->connection);


    Zum Rest: Ich sags mal so, "Joomla wäre Sch..., wenn es nicht in der Lage wäre, mehrere Datenbank-Prozesse sauber voneinander zu trennen bzw. diese durcheinander bringt". Joomla läuft auch auf sehr belasteten Websites mit vielen vielen vielen gleichzeitigen DB-Prozessen/Verbindungen.


    Wenn man Erweiterungen verwendet, die mehrere ermittelte insertIds bzw. DB-Prozesse wegen falscher Programmierung durcheinanderbringt, dann halt...