Support » Allgemeine Fragen » Probleme mit Pluginmenü-Übersetzungen

  • Folgendes faszinierendes Problem:
    Ich bin gerade dabei einige Plugins (ehemals WPMUDEV) zu übersetzen und auch anzupassen, da ich diese bei vielen Projekten schon Jahrelang verwende.
    Dabei hab ich einige Plugins die verlieren einen Teil ihrer Funktionen sobald man den Namen der Dashboard-Menüs ändert oder übersetzt.
    Ich bin noch relativ neu in der Materie und bringe mir derzeit selbst PHP und Javascript bei, daher wäre eine verständliche Beschreibung des Problems toll.
    In einem Plugin hab ich eine Dokumentation gefunden die einen Hinweis liefert und zwar spricht diese von einem WordPress Bug der beim übersetzen des Plugin Admin-Menüs auftreten soll, weswegen die extra betont man solle das Dashboard-Menü nicht umbenen.
    Mein größtes Sorgenkind hier ist MarketPress – Sobald man das Menü „Store Settings“ übersetzt funktioniert das hinzufügen von Produktattributen zwar beim Produkt selbst, im Store Settings Untermenü „Attribute“ allerdings nicht mehr, weder kann dann ein neues Attribut hinzugefügt werden, noch vorhandene bearbeitet.
    Selbiges bei CoursePress, ich bekomme allerdings auch über die Browser-Webmastertools keine Hinweise, keine Fehlermeldungen, auch das Debugging zeigt nichts an.

    • Dieses Thema wurde geändert vor 1 Woche, 2 Tage von Der N3rd.
Ansicht von 9 Antworten - 1 bis 9 (von insgesamt 9)
  • Moderator Bego Mario Garde

    (@pixolin)

    Wie übersetzt du denn? Wohl kaum auf https://translate.wordpress.org?

    Nein, da ich die Plugins natürlich teilweise anpassen und ändern, sowie natürlich auch genau kennenlernen will, übersetze ich sie direkt im Quellcode. Was aber keinen Unterschied macht, auch wenn ich den entsprechenden Menüeintrag über eine .pot übersetze setzen die Funktionen einfach aus, solang bis das Menü wieder seinen alten Namen hat. Moment, ich mach fix Copy&Paste:

    add_menu_page( __( 'Shopeinstellungen', 'mp' ), __( 'Store Settings', 'mp' ), $cap, 'store-settings', create_function( '', '' ), ( version_compare( $wp_version, '4.8', '>=' ) ) ? 'dashicons-admin-settings' : mp_plugin_url( 'ui/images/psecommerce-icon.png' ), '99.33' );

    Das Problem tritt genau dann auf ( in allen Plugins wo ich das hab) sobald man das zweite „Store Settings“ ändert, egal ob im Quellcode oder in einer egal welche Sprache.pot. Meist scheinen Javascript Aktionen gestört zu werden aber halt nur einzelne. Das seltsame ist halt das Store Settings sonst nicht mehr vorkommt, weder als Dateiname noch irgendwo im Code selbst. Auch die entsprechenden dazugehörigen Dateien hab ich alle durchforstet, Slugs verglichen alles….
    Das einzige das ich reproduzieren konnte war einfach: Name wieder auf Original genau an dem Punkt und schon erscheint zum Beispiel auf der entsprechenden Adminseite im Store Settings Untermenü aufmal die Metabox mit den Optionsmenü wenn man auf „Neues Attribut“ klickt. Ändert man genau diesen Eintrag ist es einfach weg, der Slug alles bleibt gleich, nur die Metabox wird nicht geladen, kein Error, kein Nix. Aber es gibt auch nirgends mehr, weder in den Javascripts noch PhP oder CSS Dateien ein weiteres „Store Settings“.

    Hallo,
    wie sollen wir das nachvollziehen, wenn uns das Plugin nicht zur Verfügung steht? – Ich habe gerade mal kurz recherchiert und konnte keine Quelle finden, wo das Plugin frei erhältlich ist.
    Auf der folgenden Seite wird das Plugin für 15$ angeboten.
    Vielleicht wendest du dich direkt an den Entwickler und bietest gleichzeitig deine Hilfe für eine Übersetzung des Plugins an.
    Viele Grüße
    Hans-Gerd

    Moderator Bego Mario Garde

    (@pixolin)

    add_menu_page( __( 'Shopeinstellungen', 'mp' ), … ist ja auch nicht „im Sinne des Erfinders“.

    __( 'some-text-string', 'domain' ) ist eine Übersetzungs-Funktion von WordPress, mit der die Zeichenkette some-text-string mit Hilfe der Übersetzung für die Sprach-Domain domain übersetzt wird. Diese Funktion gibt dann return 'irgendeine-zeichenkette' zurück, wenn eine Übersetzung vorliegt. Möchtest du die Funktion tatsächlich patchen, wäre

    add_menu_page( 'Shopeinstellungen', …

    korrekt – zuminest bis das beim nächsten Update überschrieben wird.

    Updates dafür wird es keine mehr geben, WPMUDEV hats eingestellt und auch von WordPress selbst runter. Deswegen lerne ich jetzt auch wie man Plugins schreibt 🙂
    Ich möchte die meisten von diesen Plugins modernisieren und wieder zurückbringen, wie gesagt nutze sie schon ewig bei vielen Projekten und es gibt keine wirklich brauchbaren Alternativen dazu. Und ich hab herausgefunden das mir das auch richtig Spaß macht (auch wenn es unheimlich umfangreich ist was man da alles lernen muss).
    Bego, super danke für den Hinweis, nur funktioniert es nicht.. Problem bleibt bestehen 🙁
    Der Quellcode ist hier zu finden:

    • https://github.com/wpmudev/marketpress
    • Betreffendes File ist includes / admin / class-mp-store-settings-admin.php im Bereich der Zeile 110.
      Ihr seid einfach Klasse und Hilfsbereit, glaub hab mich total richtig entschieden meinen Fokus auf WordPress zu legen, alle anderen CMS haben nicht mal im Ansatz so eine flotte und Hilfsbereite Community sondern gehen Leute, die versuchen sich da als Quereinsteiger reinzufuchsen, meist von oben herab an, weswegen ich mich lang gesträubt hab hier nachzufragen…. total unberechtigt die Angst wieder nur Blöde Kommentare wie: Lern Coden zu lesen.

      Die Version an der ich arbeite kann hier gratis (wollte es weiterhin als Open-Source anbieten) geladen werden:

    • https://n3rds.work/wp-update-server/?action=download&slug=psecommerce
    • Aber ich denke mal ich werde nicht herumkommen noch mehr PHP zu wälzen und diese Menü-Erstellung komplett neu zu organisieren, oder? Nur versteh ich nicht woher der Fehler kommt, normal sollte sich doch alles am Slug, sprich dem angegebenen „store-settings“ orientieren, nicht nach dem Menü-Titel, das tut es ja auch, klicke ich auf den „Attribut hinzufügen“ Button auf der Adminseite, so lädt er in beiden Fällen auch die richtige Seite mit identen slug. Nur das halt bei Menütitel „Shopeinstellungen“ einfach nix passiert und keine Metabox für Attribute erscheint, bei „Store Settings“ aber schon. Angezeigt wird als url in beiden Fällen aber immer https://domain.xy/wp-admin/admin.php?page=store-settings-productattributes&action=mp_add_product_attribute

    • Diese Antwort wurde geändert vor 1 Woche, 1 Tag von Der N3rd.
    • Diese Antwort wurde geändert vor 1 Woche, 1 Tag von Der N3rd.
    Moderator Bego Mario Garde

    (@pixolin)

    Fehlerhaft zu programmieren, weil ein Plugin nach aktuellem Stand nicht mehr aktualisiert wird, ist der falsche Weg. Vielleicht soll irgendwann jemand die Wartung übernehmen und stößt dann auf solche undokumentierten Besonderheiten. Kannst du für dich selber machen, klar – nur gebe ich dazu in einem Supportforum keine Anleitung.

    … nur funktioniert es nicht.

    … ist so ziemlich die ungünstigste Rückmeldung. Was funktioniert nicht? Wie äußert sich das? Was sollte funktionieren? Wo ist dein Problem dabei und was hast du bisher versucht, um das Problem zu lösen?

    total unberechtigt die Angst wieder nur Blöde Kommentare wie: Lern Coden zu lesen.

    Da hast du wohl etwas falsch verstanden. Hier bieten dir AnwenderInnen Hilfe zur Selbsthilfe. Du bekommst WordPress und viele Plugins und Themes kostenlos zur Verfügung gestellt, kannst sie nutzen wie du magst und auch an deine Wünsche anpassen. Das bedeutet aber nicht, dass wir die Anpassung für dich vornehmen. Echt blöd, ich weiß, aber Grundvoraussetzungen wie „Read the fine manual“ und „Lern Code zu lesen“ haben auch hier Gültigkeit.

    Hast Du Falsch verstanden:
    Eben um nicht Fehlerhaft zu Programmieren frage ich ja nach, ich bin auch nur auf das Problem gestoßen weil ich die Plugins Zeile für Zeile durchgehe und es war eben nicht Dokumentiert, jetzt halt schon, weil ichs gefunden habe. Ich möchte auch nicht das mir jemand das schreibt, ich versuche zu verstehen woher dieser Fehler kommt um ihn selbst zu beheben.
    Das bringt uns zum WAS funktioniert nicht? – Es funktioniert schon, nur das Problem bleibt schlicht das selbe, ob diese Variante oder Deine – sobald ich Store Settings auf Shopeinstellungen umschreibe setzt die Funktion zur Attributsbearbeitung auf der Admin-Seite aus.
    add_menu_page( 'Shopeinstellungen', 'Shopeinstellungen', $cap, 'store-settings', create_function( '', '' ), ( version_compare( $wp_version, '4.8', '>=' ) ) ? 'dashicons-admin-settings' : mp_plugin_url( 'ui/images/psecommerce-icon.png' ), '99.33' );
    Wie gesagt ich kann nur sagen das ich selbiges Problem inzwischen bei mehreren Plugins hatte.
    Da kann man Read the fucking Manual oder Lern Code zu lesen bis zum abwinken, bei einem solchen Problem, den selbst nach WordPress Codex (ganz so blöd bin ich nicht) wäre die Erstellung eines Admin-Menüs so auch korrekt.
    Ev. liegt es ja nicht an dieser Zeile, aber ich finde auch kein Javascript oder eine andere Datei die sich auf den Menütitel statt den Slug bezieht. Deswegen frage ich nach, vlt. hat jemand eine Idee oder was ähnliches schon gehabt und kann mir n Stups in die richtige Richtung geben.

    Hallo,
    das wird schwierig sein, weil wir uns in dem Fall ebenfalls mit dem Source auseinandersetzen müssen und das kostet halt (manchmal je nachdem wie das kommentiert ist viel) Zeit. Da wir (eine Handvoll Leute) hier alle in unserer Freizeit Usern neben unseren eigenen Projekten helfen wollen, ist das nicht so einfach, dafür ein Zeitfenster freizuschaufeln.
    Daher würde ich dir empfehlen, dass du z. B. das Buch von Onno Gabriel „Entwicklung von WordPress Plugins“ oder von David Remer „WordPress für Entwickler“ anschaffst. Das Buch Von Onno Gabriel ist ziemlich kompakt, während das Buch von David Remer ausführlicher darauf eingeht.
    Viele Grüße
    Hans-Gerd

    Danke Hans, die hab ich schon auf Kindle genauso wie etliche zu PhP, CSS, HTML, Javascript^^ Wobei Onno Gabriel wirklich sehr kompakt ist und mal gar nicht für einen Einsteiger geeignet, den hab ich erst nach dem ich alle anderen durch hatte verstanden :). Und klar, das verstehe ich, ich hab auch genug selbst zu tun. Deswegen sag ich ja, ist erstaunlich wie schnell und hilfsbereit man hier dennoch Feedback bekommt, ich dachte nur vlt. ist das schon mal jemand selbst untergekommen bei einem Plugin und hat einen Anhaltspunkt wo der Fehler in etwa zu finden ist oder einen fixen Quick&Dirty Hack dafür, eben weil schon mal gehabt und so gelöst.

Ansicht von 9 Antworten - 1 bis 9 (von insgesamt 9)