Kontaktformular lässt sich nicht aufrufen

  • Hallo zusammen,


    auf meiner Webseite https://www.segelclub-hattinge…x.php/der-verein/vorstand kann (bzw. konnte) man über die "Kontakt" Buttons das Kontaktformular der betreffenden Person aufrufen, um ihr eine Nachricht zu schreiben. Bei einigen Kontakten habe ich vorrübergehend eine E-Mailadresse als mailto Link hinterlegt. Aber zum Beispiel beim zweiten Kontakt "Thomas H." sollte das Formular aufgerufen werden. Stattdessen landet man auf der Startseite.


    Die Webseite existiert schon Jahre und lange funktionierte alles. Ich glaube, dass das Kontaktformular seit Joomla 3.7.0 nicht mehr funktioniert. Ich setzte darauf, dass eines der bereits vergangenen Joomla Updates Abhilfe schaffen würde. Das war aber bislang nicht der Fall.


    Mir fällt auf, dass in der URL, die beim Mouseover angezeigt wird, www.segelclub-hattingen.de/ind…/27-vorstand/4?Itemid=101 "contact" doppelt vorkommt. Ist das richtig so?
    Im Editor habe ich diese URL angegeben: index.php?option=com_contact&view=contact&id=4&catid=27 Rufe ich diese URL direkt über den Browser auf, kann ich das Kontaktformular öffnen. Also liegt es am Editor? Oder den suchmaschinenfreundlichen URLs?

  • Wenn du das ?Itemid=101 in der URL entfernst, dann wird das Kontaktformular korrekt angezeigt. Dauert allerdings etwas lang.
    Hast du es schon einmal mit neu anlegen versucht?
    Dann würde ich mir mal die SEO-Einstellungen anschauen! Also einen Punkt mehr aktivieren! In diesem Zusammenhang: Existiert die .htaccess ?
    Ansonsten: "DB reparieren"-Button klicken oder "Menüpunkte wiederherstellen"!
    Alles ein wenig geraten.

  • Danke für die schnelle Antwort.


    Ich habe kurz mal SEO deaktiviert, danach ließ sich gar kein Link mehr auf der Homepage aufrufen.


    Den Link habe ich nochmal neu angelegt, da gibt es jedoch keine Änderung.


    Meine SEO Einstellungen sehen so aus:
    SEO: Ja
    URL Rewrite : Nein
    Dateiendung anfügen : Nein
    Unicode Aliase : Nein
    Soll ich davon etwas ändern?


    Unter Erweiterungen >> Verwalten >> Datenbank habe ich auf "Reparieren" geklickt, aber auch hier hat sich nichts getan:



    Im Root Verzeichnes habe ich eine .htaccess im Joomla Verzeichnis eine htaccess.txt

  • Wenn du SEO im Backend deaktiviert hast und keine htaccess.txt im Joomla-Root liegt, dann sollte es funktionieren. Eventuell mal die Caches leeren!
    Natürlich wirkt sich eine übergeordnete .htaccess auch auf dein Joomla aus. Wäre die Frage, was dort drin steht.


    Was passiert, wenn du "URL Rewrite" auch aktivierst und deine htaccess.txt gleichzeitig in .htaccess umbenennst? (Eventuell auch hier die Caches leeren)

  • Ich habe SEO mal deaktiviert und die htaccess.txt vorrübergehendend entfernt, den Cache geleert. Generell funktionierten die Links, die Kontaktlinks jedoch nicht. Es hängt immernoch itemid101 dran.


    URL Rewrite und SEO habe ich dann aktiviert, und die htaccess.txt in .htaccess umbenannt, den Cache geleert. Bei allen Links erscheint dann 500-Internal Server Error. Praktisch ist nur die Startseite aufzurufen.


    Nach dem itemid101 Problem habe ich mal gegooglt und einen Patch gefunden, der aber in meiner contacts.php schon drin war:
    https://github.com/nvyush/joom…0f82a15e9770?diff=unified


    Aber ich suche mal weiter

  • In plugins/content/contact/contact.php soll laut Fix in Zeile 65 stehen:

    Code
    require_once JPATH_ROOT . '/components/com_contact/helpers/route.php';


    Bei mir stand da:

    Code
    JLoader::register('ContactHelperRoute', JPATH_SITE . '/components/com_contact/helpers/route.php');


    Ansonsten stimmt meine contact.php mit dem Fix überein. Aber auch diese Änderung brachte keine Besserung.


    Update:
    Ich sehe gerade, dass diese Änderung auch unter dem Github Link unter Commits "Replacing require_once with class loader " zu finden ist. Meine Datei war dann also schon so, wie vorgesehen.


    Danke für deinen Vorschlag Astrid. Die Fehlermeldung ist nun zwar weg, aber ich erhalte beim Klicken auf Links einfach nur weiße Seiten.

  • Also die Raute hast du entfernt (wie von Astrid beschrieben)?
    Hast du auch mal in die übergeordnete .htaccess geschaut, was da möglicherweise eingetragen ist.


    BTW: Eine htaccess.txt brauchst du nicht extra entfernen. Ist eine reine Textdatei ohne jegliche Auswirkungen auf den Server.

  • Ich habe die htaccess im FTP Stammverzeichnis gelöscht (war wohl auch eine Joomla .htaccess, die ich vielleicht mal dorthin kopiert hatte) und im Joomla Ordner die .htaccess überprüft, dass

    Apache Configuration
    RewriteEngine On
     RewriteBase /


    nicht auskommentiert ist. Trotzdem kriege ich weiße Seiten, wenn ich URL Rewrite aktiviere. Ich verstehe auch nicht, warum soll URL Rewrite mir Abhilfe verschaffen können?


    Eine umständliche Abhilfe wäre jetzt die Links einfach direkt im SEO Format hinzuschreiben. Da ich das ganze nicht beruflich, sondern als Freizeitvergnügen mache, werde ich diese "Pfusch-Lösung" wohl so ausführen. Ich las, dass bei Joomla 3.8 ein neues Routing eingeführt werden soll. Vielleicht hilft mir das dann nochmal weiter..

  • Trotzdem kriege ich weiße Seiten,


    Siehst du eine weiße Seite oder einen HTTP Fehler 500?


    Ich verstehe auch nicht, warum soll URL Rewrite mir Abhilfe verschaffen können?


    Weil nach Aktivierung der RewriteEngine unter Umständen die Angabe der RewriteBase erforderlich ist. Mit der RewriteBase definierst du, von welchem Verzeichnis aus die RewriteRule greifen soll.

  • Zitat

    Eine umständliche Abhilfe wäre jetzt die Links einfach direkt im SEO Format hinzuschreiben. Da ich das ganze nicht beruflich, sondern als Freizeitvergnügen mache, werde ich diese "Pfusch-Lösung" wohl so ausführen. Ich las, dass bei Joomla 3.8 ein neues Routing eingeführt werden soll. Vielleicht hilft mir das dann nochmal weiter..


    Bitte nicht weinen. Joomla und die mitgelieferte .htaccess funktionieren sehr gut miteinander, zumindest, wenn die Seite bei einem "gängigen" Hoster liegt. Manchmal muss man mit ein- und auskommentieren der Funktionen spielen, aber wenn mod_rewrite auf dem Server eingestellt ist, geht es immer. So meine Erfahrung. Mit vielen Hostern und Joomlas.


    Im Backend im entsprechenden Menü siehst du die Non-Sef URL des Kontaktes, versuche mal, diese als externen Link ins Menü zu werfen. Mit Doppelklick markieren, dann einen neuen Menüpunkt damit anzulegen.


    Geht nicht gibt's nicht.

  • Der Anbieter ist 1&1. Die 1&1 Hilfe besagt, dass mod_rewrite dort standardmäßig aktiv sei.


    Wenn ich url-rewrite in Joomla einschalte, erhalte ich beim Klicken auf Links auf der Startseite nur weiße Seiten, keine Fehler 500 Meldung.


    Ich kann es natürlich nicht ausschließen,dass ich irgendeinen anderen doofen Fehler gemacht habe. Aber wenn, dann sehe ich ihn im Augenblick nicht...


    Vielen Dank für eure Hilfe auf jeden Fall.