Mit diesem REDAXO AddOn kann man globale Strings in eine Datenbank-Tabelle speichern und per PHP-Methode auslesen. Es ist ein modifiziertes opf_lang AddOn und ist nützlich wenn man Wörter/Sätze aus Templates und Modulen herausziehen will um diese änderbar für Kunden/Redakteure zu machen. Sehr nützlich auch bei mehrsprachigen Websites.
Features:
* Einen String kann man über die Methode `rex_string_table::getString($key)` oder alternativ über die Funktion `rex_getString($key)` auslesen
* Zusätzliche automatische Ersetzung nun auch über die OUTPUT_FILTER Methode einstellbar (siehe `settings.inc.php`). Die Keys werden dann im eigenen Code so notiert: ###key###. In der String Table aber nur so: key (also ohne die Start- und Endzeichen)
* Mehrsprachigkeit wird berücksichtigt
* Nicht-Admins dürfen den String-Key nicht ändern
* Prio änderbar über Drag'n Drop inkl. coolem On/Off Switch
Weitere Infos auf GitHub:
https://github.com/RexDude/string_table
Bugtracker:
https://github.com/RexDude/string_table/issues
Download:
http://www.redaxo.org/de/download/addons/?addon_id=1024
Hallo,
Wir haben in letzter Zeit festgestellt, dass die Kommunikation via Slack viel schneller und zielführender ist als ein Beitrag im Forum. Aufgrund der neuen und besseren Möglichkeiten der Kommunikation haben wir uns entschlossen das Forum nur noch als Archiv zur Verfügung zu stellen. Somit bleibt es weiterhin möglich hier nach Lösungen zu suchen. Neue Beiträge können nicht mehr erstellt werden.
Wir empfehlen, für deine Fragen/Probleme Slack zu nutzen. Dort sind viele kompetente Benutzer aktiv und beantworten jegliche Fragen, gerne auch von REDAXO-Anfängern! Slack wird von uns sehr intensiv und meistens "rund um die Uhr" benutzt
Selbst einladen kannst Du dich hier: https://redaxo.org/slack/
Wir haben in letzter Zeit festgestellt, dass die Kommunikation via Slack viel schneller und zielführender ist als ein Beitrag im Forum. Aufgrund der neuen und besseren Möglichkeiten der Kommunikation haben wir uns entschlossen das Forum nur noch als Archiv zur Verfügung zu stellen. Somit bleibt es weiterhin möglich hier nach Lösungen zu suchen. Neue Beiträge können nicht mehr erstellt werden.
Wir empfehlen, für deine Fragen/Probleme Slack zu nutzen. Dort sind viele kompetente Benutzer aktiv und beantworten jegliche Fragen, gerne auch von REDAXO-Anfängern! Slack wird von uns sehr intensiv und meistens "rund um die Uhr" benutzt
Selbst einladen kannst Du dich hier: https://redaxo.org/slack/
String Table AddOn
Zuletzt geändert von RexDude am 15. Mär 2017, 02:07, insgesamt 8-mal geändert.
Re: [v1.3.2] String Table AddOn
### Version 1.3.2 - 01. August 2013
* Line Breaks in den Strings werden jetzt berücksichtigt und auch in der String-Auflistung korrekt angezeigt
* Line Breaks in den Strings werden jetzt berücksichtigt und auch in der String-Auflistung korrekt angezeigt
Re: [v1.4.0] String Table AddOn
Hi
Ich habe mittlerweile die OUTPUT_FILTER Methode wieder integriert. Man kann diese über die settings.inc.php einstellen. Wichtig ist die Keys ohne ### in die String Table zu schreiben. Im den Templates/Modulen etc. dann bitte mit ### oder je nachdem was man für Start- und Endzeichenketten verwenden will.
Und per Kurzschreibweise rex_getString($key) kann man den String nun auch ausgeben.
### Version 1.4.0 - 27. August 2013
* Paginierung der Stringliste vorerst "deaktiviert", da es zu Problemen kam mit der Drag n' Drop Sortierung.
* `rex_getString($key)` als Kurzschreibweise zu `rex_string_table::getString($key)` hinzugefügt
* Ist der String des Keys leer oder ist der Key nicht vorhanden, wird ein Platzhalter inkl. Span und der CSS-Klasse `string-table-key` angezeigt. Im Frontend können diese Platzhalter dann per CSS optisch aufgewertet werden.
* Auto Replace Methode hinzugefügt um die Keys automatisch ersetzen zu lassen (standardmäßig abgeschaltet). Einstellung der Start- und Endzeichenkette ebenfalls möglich. Die Keys ganz normal in die String Table schreiben: key. Im eigenen Code (Templates/Module) dann so: ###key### (bzw. je nach gewählter Start/Endzeichenkette)
* `settings.inc.php` hinzugefügt mit Einstellungsmöglichkeiten für das AddOn
Ich habe mittlerweile die OUTPUT_FILTER Methode wieder integriert. Man kann diese über die settings.inc.php einstellen. Wichtig ist die Keys ohne ### in die String Table zu schreiben. Im den Templates/Modulen etc. dann bitte mit ### oder je nachdem was man für Start- und Endzeichenketten verwenden will.
Und per Kurzschreibweise rex_getString($key) kann man den String nun auch ausgeben.
### Version 1.4.0 - 27. August 2013
* Paginierung der Stringliste vorerst "deaktiviert", da es zu Problemen kam mit der Drag n' Drop Sortierung.
* `rex_getString($key)` als Kurzschreibweise zu `rex_string_table::getString($key)` hinzugefügt
* Ist der String des Keys leer oder ist der Key nicht vorhanden, wird ein Platzhalter inkl. Span und der CSS-Klasse `string-table-key` angezeigt. Im Frontend können diese Platzhalter dann per CSS optisch aufgewertet werden.
* Auto Replace Methode hinzugefügt um die Keys automatisch ersetzen zu lassen (standardmäßig abgeschaltet). Einstellung der Start- und Endzeichenkette ebenfalls möglich. Die Keys ganz normal in die String Table schreiben: key. Im eigenen Code (Templates/Module) dann so: ###key### (bzw. je nach gewählter Start/Endzeichenkette)
* `settings.inc.php` hinzugefügt mit Einstellungsmöglichkeiten für das AddOn
Re: [v1.5.0] String Table AddOn
### Version 1.5.0 - 14. Januar 2014
* `rex_string_table::getString()` Methode bzw. `rex_getString()` Funktion um folgende Parameter ergänzt: `$fillEmpty = true` (steuert ob ein Platzhalter bei einem leeren String angezeigt wird) und `$clang = -1` (steuert die Sprache des Strings, damit kann man z.B. einen sprachunabhängigen String nutzen der für alle Sprachen gleich sein soll)
* Mini-Codebeispiel zur Readme hinzugefügt (API)
* `rex_string_table::getString()` Methode bzw. `rex_getString()` Funktion um folgende Parameter ergänzt: `$fillEmpty = true` (steuert ob ein Platzhalter bei einem leeren String angezeigt wird) und `$clang = -1` (steuert die Sprache des Strings, damit kann man z.B. einen sprachunabhängigen String nutzen der für alle Sprachen gleich sein soll)
* Mini-Codebeispiel zur Readme hinzugefügt (API)
Re: [v1.5.0] String Table AddOn
Hallo RexDude,
auf der Suche nach einem Addon, welches Global Strings usw. ersetzt bin ich auf dieses Addon gestoßen. Allerdings bekomm ich immer einen PHP-Error, wenn ich versuche einen Eintrag zu "adden".
Grund dafür dürfte die index.inc.php Zeile 144 sein
Die Methode getStringCount() scheint nicht zu existieren bzw. hab ich die in den Classes auch nicht gefunden. Möchte das Addon gerne testen und ggf. einsetzen.
Mach ich wieder mal was flasch, oder ist das ein Bug?
LG
Robert
auf der Suche nach einem Addon, welches Global Strings usw. ersetzt bin ich auf dieses Addon gestoßen. Allerdings bekomm ich immer einen PHP-Error, wenn ich versuche einen Eintrag zu "adden".
Grund dafür dürfte die index.inc.php Zeile 144 sein
Code: Alles auswählen
$form->addHiddenField('priority', rex_string_table::getStringCount() + 1);
Mach ich wieder mal was flasch, oder ist das ein Bug?
LG
Robert
Re: [v1.5.1] String Table AddOn
Schon blöd wenn man zwar ein Methodennamen ändert aber nicht ebefalls auf die Verwendung achtet und dort den Namen auch korrigiert Danke Robert für den Bugreport Wenn dir noch was auffällt, kannst auch gern auf GitHub ein Issue eröffnen...
### Version 1.5.1 - 23. Januar 2014
* Fixed: Bug beim Hinzufügen von einem neuen String, thx@robo
### Version 1.5.1 - 23. Januar 2014
* Fixed: Bug beim Hinzufügen von einem neuen String, thx@robo
Re: [v1.5.1] String Table AddOn
Super!
Danke für den schnellen Bugfix.
Tolles Addon - ist alles da was ich brauche.
Nur noch eine Kleinigkeit am Rande: Hab selbst ein Addon nur mit Datepicker und Colorpicker (beide jQuery-UI) im Gepäck. Sortable und alles andere ist nicht dabei (wegen Performance hab ich mir gedacht). In der Klasse class.rex_prio_switch.inc.php wird ja in Zeile 157 mit
geprüft, ob die UI bereits irgendwie greifbar ist, wenn ja dann wird 'jquery-ui.min.js' nicht eingebunden . Leider funktioniert so - ohne Anpassung das Sortable natürlich nicht. Ich hab den Grund ja bereits gefunden und alles zum Laufen gebracht, aber ich denke, daß dies für den einen oder anderen ebenfalls von Interesse sein könnte...
Schöne Grüße und danke für alles!
Robert
Danke für den schnellen Bugfix.
Tolles Addon - ist alles da was ich brauche.
Nur noch eine Kleinigkeit am Rande: Hab selbst ein Addon nur mit Datepicker und Colorpicker (beide jQuery-UI) im Gepäck. Sortable und alles andere ist nicht dabei (wegen Performance hab ich mir gedacht). In der Klasse class.rex_prio_switch.inc.php wird ja in Zeile 157 mit
Code: Alles auswählen
if (!jQuery.ui) { ... }
Schöne Grüße und danke für alles!
Robert
Re: [v1.6.0] String Table AddOn
### Version 1.6.0 - 25. Oktober 2014
* Updatefähigkeit für REDAXO 4.6 hergestellt. Einstellungen werden jetzt im Data-Ordner gespeichert.
* Updatefähigkeit für REDAXO 4.6 hergestellt. Einstellungen werden jetzt im Data-Ordner gespeichert.
Re: [v1.6.1] String Table AddOn
### Version 1.6.1 - 03. Dezember 2014
* Addon-Name in Settings-Datei ausgelagert. Bei einem Update muss die settings.inc.php im Data Ordner einmal gelöscht werden.
* Addon-Name in Settings-Datei ausgelagert. Bei einem Update muss die settings.inc.php im Data Ordner einmal gelöscht werden.
Re: [v1.6.2] String Table AddOn
### Version 1.6.2 - 01. März 2016
* Hinweis in die Readme aufgenommen: "Es ist möglich während man sich in der Editieransicht befindet die Sprachen umzuschalten!"
* Automatischer Focus auf das Schlüssel-Textfeld in der Edit-Ansicht wenn leer
* PHP7 Compat
* Hinweis in die Readme aufgenommen: "Es ist möglich während man sich in der Editieransicht befindet die Sprachen umzuschalten!"
* Automatischer Focus auf das Schlüssel-Textfeld in der Edit-Ansicht wenn leer
* PHP7 Compat
Re: [v1.6.2] String Table AddOn
HI,
ist es auch möglich die Ersetzung auf xForm Formulare (xForm Eingabe Modul) anzuwenden?
Postleitzahl ersetzen mit
Danke. Grz. Chris.
hmm ... so wie ich das nun sehe, müsste ich das xForm Formular dann in php zusammenbauen und dort die string-table Platzhalter einfügen ...
ist es auch möglich die Ersetzung auf xForm Formulare (xForm Eingabe Modul) anzuwenden?
Code: Alles auswählen
text|plz|Postleitzahl:*|
Code: Alles auswählen
echo rex_getString('plz-text');
hmm ... so wie ich das nun sehe, müsste ich das xForm Formular dann in php zusammenbauen und dort die string-table Platzhalter einfügen ...
- runstop64
- Beiträge: 369
- Registriert: 23. Okt 2012, 21:34
- Wohnort: Hamburg
- Kontaktdaten: Website Facebook Twitter
Re: [v1.6.2] String Table AddOn
du kannst in den Settings die automatische Ersetzung einschalten und mit arbeiten
Code: Alles auswählen
###platzhalter###
Re: [v1.6.2] String Table AddOn
Nochmal *doof* nachgefragt... wo genau?Settings die automatische Ersetzung einschalten
Danke. Chris
Re: [v1.6.2] String Table AddOn
ähm.. okay.
config.inc.php
config.inc.php
Code: Alles auswählen
// default settings (user settings are saved in data dir!)
$REX['ADDON']['string_table']['settings'] = array(
'addon_name' => 'String Table',
'auto_replace' => true,
'key_start_token' => '###',
'key_end_token' => '###'
);
Re: [v1.6.2] String Table AddOn
hmm...
scheint aber nicht zu ersetzen:
Ausgabe:
... ###string_table_plz###
Danke. Chris
scheint aber nicht zu ersetzen:
Code: Alles auswählen
text|plz|###string_table_plz###|
... ###string_table_plz###
Danke. Chris
Re: [v1.6.2] String Table AddOn
Hi.
kann es drehen und wenden wie ich will. (einfach mal ins Modul-Ausgabe gepackt) liefert auch "Das ist ein Blubber."
Eingabe im String Table AddOn:
Schlüssel: blubber
Wert: Das ist ein Blubber.
mit ###blubber### im Form als Platzhalter erhalte ich bei 'auto_replace' => true
NICHTS! (<label> </label>bleibt leer)
Egal wie:
Schlüssel: blubber
Wert: Das ist ein Blubber.
oder
Schlüssel: ###blubber###
Wert: Das ist ein Blubber.
*grmpf* (hab auch auf leerzeichen geachtet!) ...
Ich denke das es einfach daran liegt, das es in der Modul Eingabe (XForm Formbuilder) sich befindet.
*binzudoof* ...
kann es drehen und wenden wie ich will. (einfach mal ins Modul-Ausgabe gepackt)
Code: Alles auswählen
echo rex_getString('blubber');
Eingabe im String Table AddOn:
Schlüssel: blubber
Wert: Das ist ein Blubber.
mit ###blubber### im Form als Platzhalter erhalte ich bei 'auto_replace' => true
NICHTS! (<label> </label>bleibt leer)
Egal wie:
Schlüssel: blubber
Wert: Das ist ein Blubber.
oder
Schlüssel: ###blubber###
Wert: Das ist ein Blubber.
*grmpf* (hab auch auf leerzeichen geachtet!) ...
Ich denke das es einfach daran liegt, das es in der Modul Eingabe (XForm Formbuilder) sich befindet.
*binzudoof* ...
- runstop64
- Beiträge: 369
- Registriert: 23. Okt 2012, 21:34
- Wohnort: Hamburg
- Kontaktdaten: Website Facebook Twitter
Re: [v1.6.2] String Table AddOn
Seltsam,
bei mir wird es problemlos in den XForm-Formularen ersetzt. Den Code habe ich auch nochmal gecheckt, String Table wartet, bis alle Addons eingebunden wurden und ruft dann den EP OUTPUT_FILTER auf.
Hast Du mal verglichen, was ausgegeben wird, wenn der String in String Table nicht angelegt ist? Eine leere Ausgabe weist eigentlich darauf hin, dass die Ersetzung durchläuft. Der String ist in allen Sprachen mit einer Ausgabe versehen?
Was mir eben noch auffällt: Hast Du die Settings in der config.inc.php geändert oder in der settings.inc.php im Data-Ordner? Die Einstellungen im Data-Ordner überschreiben die default-Werte aus der config.inc.php
bei mir wird es problemlos in den XForm-Formularen ersetzt. Den Code habe ich auch nochmal gecheckt, String Table wartet, bis alle Addons eingebunden wurden und ruft dann den EP OUTPUT_FILTER auf.
Hast Du mal verglichen, was ausgegeben wird, wenn der String in String Table nicht angelegt ist? Eine leere Ausgabe weist eigentlich darauf hin, dass die Ersetzung durchläuft. Der String ist in allen Sprachen mit einer Ausgabe versehen?
Was mir eben noch auffällt: Hast Du die Settings in der config.inc.php geändert oder in der settings.inc.php im Data-Ordner? Die Einstellungen im Data-Ordner überschreiben die default-Werte aus der config.inc.php
Re: [v1.6.2] String Table AddOn
HI,
hab alles überprüft. string-table ersetzt mir hier leider nichts (bleibt leer).
Hab das xOutputFilter Addon nun am laufen, da gehts...
*strange*... schade das Rudi sich hier nicht mehr meldet...
Grz. Chris
hab alles überprüft. string-table ersetzt mir hier leider nichts (bleibt leer).
Hab das xOutputFilter Addon nun am laufen, da gehts...
*strange*... schade das Rudi sich hier nicht mehr meldet...
Grz. Chris
Re: String Table AddOn
Geht bei mir leider auch nicht. Nutzte davor opf_lang und nach Update auf 4.7.3 eben String_Table.
Kein ersetzen bei auto_replace => true. Weder im Addons, noch im Data-Ordner.
Kein ersetzen bei auto_replace => true. Weder im Addons, noch im Data-Ordner.