Hallo,
ich benötige für den Offline Modus eine zusätzliche Textzeile in der offline.php.
Diese soll- über die Konfiguration im Backend editierbar sein.
- mit Joomfish übersetzt werden (bereits gelöst)
Wenn ich nun die config_site.php im Backend unter administrator/components/com_config/views/application/tmpl erweitere wird mir auch die zuvor manuell in der configuration.php im Stammverzeichnis gesetzte $var angezeigt.
Allerdings geht diese Einstellung beim Speichern wieder verloren.
Was muss ich noch beachten, bzw. wo liegt der Denkfehler?
Hier meine vorgenommenen Änderungen bzw. Ergänzungen:
configuration.php im Stammverzeichnis der Joomla-Installation:
Code:
...
var $offline_title = 'Gesellschaft mit beschränkter Haftung';
in der config_site.php im Ordner administrator/components/com_config/views/application/tmpl folgende Einfügung:
Code:
<tr>
<td valign="top" class="key">
<span class="editlinktip hasTip" title="<?php echo JText::_( 'Offline Message' ); ?>::<?php echo JText::_( 'TIPIFYOURSITEISOFFLINE' ); ?>"><?php echo JText::_( 'Offline Message' ); ?></span>
</td>
<td><textarea class="text_area" cols="60" rows="2" style="width:400px; height:40px" name="offline_message"><?php echo $row->offline_message; ?></textarea>
</td>
</tr>
<tr>
<td valign="top" class="key">
<span class="editlinktip hasTip" title="<?php echo JText::_( 'Offline Titel' ); ?>::<?php echo JText::_( 'TIPTITLE' ); ?>"><?php echo JText::_( 'Offline Title' ); ?></span>
</td>
<td><textarea class="text_area" cols="60" rows="1" style="width:400px; height:20px" name="offline_title"><?php echo $row->offline_title; ?></textarea>
</td>
</tr>
Hat jemand einen Tipp?
Hier der fehlende Teil zur Lösung des Problems.
Es muss noch eine Adaption in der application.php unter administrator/components/com_config/controllers vorgenommen werden.
In meinem Fall war das dann die folgende Ergänzung, angefügt nach der Definition der $offline_message (ggf. suchen).
Der Code lautet:
Code:
$offline_title = JRequest::getVar( 'offline_title', '', 'post', 'string' );
$offline_title = JFilterOutput::ampReplace( $offline_title );
$offline_title = str_replace( '"', '"', $offline_title );
$offline_title = str_replace( "'", ''', $offline_title );
$config->setValue('config.offline_title', $offline_title);
Damit geht nun auch das speichern der Änderungen innerhalb des neuen Feldes einwandfrei.
Bleibt noch zu erwähnen, dass die Ausgabe des neuen Textes etc. noch in die offline.php im Stammverzeichnis des genutzten templates eingebaut werden muss.
Dies erfolgt in meinem Beispiel durch den Code
Code:
<?php echo $mainframe->getCfg('offline_title');?>
Der Vollständigkeit halber kann man dann noch eine Beschreibung (Tooltip) für den Begriff in der Sprachdatei im Backend einfügen.
Hierzu TIPTITLE in die entsprechende Sprachdatei der com_config.ini einfügen.
Gruß
Some1new
Lesezeichen