Nachnamen in der Navbar anzeigen

    • Offizieller Beitrag

    Ich wurde schon öfters gefragt ob man in der WHMCS Six Navbar "Hallo, Herr/Frau XY" anzeigen lassen kann statt "Hallo, Frank". Da WHMCS die ganze Navbar leider von Hooks abhängig macht, ist ein einfaches anpassen des Templates wie bei WHMCS 5 nicht möglich. Hierzu möchte ich euch aber gerne einen Hook zur Verfügung stellen.


    • Erstellt eine php Datei mit folgendem Inhalt:
    • kopiert die Datei nach /includes/hooks/
    • passt in der Kundensprachdatei den String 'helloname' entsprechend an z.B. Hallo Herr/Frau

    Das war's.

    • Offizieller Beitrag

    Denis habe es eben versucht es klappt wunderbar ! Es währe aber noch schöner wenn der ''HERR oder FRAU'' Bereich sich auch automatisch anpassen würde bzw könnte.?

    Machbar ist auch das, allerdings musst du dafür noch etwas mehr machen, WHMCS weiß ja nicht ob der Kunde männlein oder weiblein ist.
    Du müsstest also ein Custom Kundenfeld anlegen wo der Kunde dann bei der Registrierung angibt ob er Herr oder Frau ist (als Drop Down wie man es von vielen Shops und Kontaktformularen kennt). Wenn du das hast, kannst du den Hook entsprechend erweitern das er das Custom Feld ausliest und den Wert entsprechend ausgibt.


    Allerdings gibt WHMCS die Customfileds im Bestellform und auf der Rechnung, wenn ich mich gerade recht erinnere, irgendwo unterhalb der Kontaktdaten gesammelt aus. Hier müsste mal also im Cart und der Rechnung auch noch Anpassungen vornehmen damit es korrekt aussieht.

    • Offizieller Beitrag

    Da ich den Code oben ja schon angefangen habe, führe ich das Herr/Frau "Problem" kurz zuende. ;)


    • Im WHMCS Adminbereich ein Custom Client Field erstellen, als Drop Down mit den Select Options Herr,Frau (Leider kann WHMCS die options noch nicht übersetzen)
    • Nachdem Ihr das Feld gespeichert habt geht Ihr mit der Maus über den grauen Translate Button, kopiert den Link in einen Texteditor und merkt euch die id, alternativ könnt ihr auch in der WHMCS DB tblcustomfields schauen um die ID herauszubekommen
    • Dann ändert Ihr den Sprachstring helloname in der Sprachdatei auf "Hallo, " um
    • Dann erstellt Ihr eine php Datei mit folgendem inhalt:
    • in Zeile 8 ersetzt Ihr die 10 mit der ID eures Feldes
    • ladet das ganze nach /includes/hooks hoch

    Hinweis: Der Wert Herr bzw. Frau wird nur bei Neuspeicherungen angelegt. D.h. Bei Neubestellungen klappt es, bei Bestandskunden müsst Ihr die Anrede erst im Kundenprofil des Kundens speichern ansonsten wird bei Ihm nur "Hallo, Meier" angezeigt.

  • Ist es möglich, dieses Custom Client Field in der clientregister.tpl und clientareadetails.tpl vor dem Namen anzeigen zu lassen, ohne dass andere Custom Client Field´s drunter stehen? Sozusagen mehrere benutzerdefinierte Felder an unterschiedlichen Stellen. Hoffe man versteht, was ich will :/

    • Offizieller Beitrag

    Ja das sollte möglich sein.


    Kopier in der clientareadetails.tpl folgendes an die gewünschte Stelle

    Code
    {foreach from=$customfields key=num item=customfield}
       {if $customfield.id == '10'}
         <div class="form-group">
           <label class="control-label" for="customfield{$customfield.id}"> {$customfield.name}</label>
              <div class="control">
                 {$customfield.input} {$customfield.description}
               </div>
          </div>
       {/if}
    {/foreach}


    wobei du in Zeile 2 die ID deines Feldes einträgst.
    und bei den eigentlichen Customfields ersetzt du den Block durch folgendes:


    wobei du auch dort in Zeile 2 die 10 durch deine eigene ID ersetzt. Damit wird das Customfield im eigentlichen Customfield Block übersprungen.

    • Offizieller Beitrag

    Hier nervt niemand, soweit ich helfen kann helfe ich gerne. Ja im Cart wäre das auch sinnvoll.


    Die folgenden Codebeispiele basieren auf den Standard_Cart von WHMCS 6.3.
    Suche in der Checkout.tpl nach


    und ersetze es durch

    in Zeile 8 (des Codebeispiels die ID anpassen).
    nun füge

    an die gewünschte Stelle ein. Hier in Zeile 3 bitte die ID anpassen.