Hallo,
ich möchte den wrap "<div class="tx-macinasearchbox-pi1">".
Um diese Extensiuon wegbekommen. Im Objektbrowser kann man dies nicht einstellen, wo kann ich das ändern, dass er den wrap weglassen soll?
Danke sehr
Hallo,
ich möchte den wrap "<div class="tx-macinasearchbox-pi1">".
Um diese Extensiuon wegbekommen. Im Objektbrowser kann man dies nicht einstellen, wo kann ich das ändern, dass er den wrap weglassen soll?
Danke sehr
Hi,
also ich würde Ihn lassen, das erleichtert dir die Formatierung mit CSS.
Gruss
Ford
Auch Hi!
ich wollte auch den <div>-Wrap entfernen, da ich die Suche in eine Listennavigation packen möchte. Allerdings zerhaut der DIV das ganze layout.
In der Datei EXT:macina_searchbox/ext_typoscript_editorcfg.txt lässte sich ein Eintrag für das Wrap in z. B.
plugin.tx_macinasearchbox_pi1.CSS_editor.exampleWrap = <hr /><strong>Plugin: "tx_macinasearchbox_pi1"</strong><hr /><li class="suchen"> | </li>
ändern. Allerdings tut sich im Quelltext gar nix. Weiterhin wird der DIV als Wrap angelegt. Ein Versuch mit
plugin.tx_macinasearchbox_pi1.wrap = <li class="suchen" | </li>
blieb ebenso erfolglos. Allerdings wird im ExtensionManager angezeigt, dass die Dateien geändert wurden. Wird der Eintrag evtl. noch woanders stehen und zu ändern sein?
Danke und Grüße
Max
Hallo Max,
such mal in der _pi1.php Datei nach pi_wrapInBaseClass und entfern den Aufruf
georg
Hallo Georg,
erstmal vielen Dank für Deine Hilfe! allerdings wird so die komplette Searchbox nicht ausgegeben.
Anstattdessen habe ich in der Datei .../typo3/sysext/cms/tslib/class.tslib_pibase.php die Funktion pi_wrapInBaseClass kopiert, in pi_wrapInBaseLi umbenannt und den Code für die Funktion wie folgt geändert:
/**
* Wraps the input string in a <li> tag with the class attribute set to the prefixId.
* All content returned from your plugins should be returned through this function so all content from your plugin is encapsulated in a <div>-tag nicely identifying the content of your plugin.
*
* @param string HTML content to wrap in the li-tags with the "main class" of the plugin
* @return string HTML content wrapped, ready to return to the parent object.
*/
function pi_wrapInBaseLi($str) {
$content = '<li class="'.str_replace('_','-',$this-">prefixId).'">
'.$str.'
</li>
';
if(!$GLOBALS['TSFE']->config['config']['disablePrefixComment']) {
$content = '
<!--
BEGIN: Content of extension "'.$this->extKey.'", plugin "'.$this->prefixId.'"
-->
'.$content.'
<!-- END: Content of extension "'.$this->extKey.'", plugin "'.$this->prefixId.'" -->
';
}
return $content;
}
Dann habe ich einfach in der .../ext/macina_searchbox/pi1/class.tx_macinasearchbox_pi1.php
den Funktionsaufruf geändert in:
// buid content from template + array
$content = $this->cObj->substituteMarkerArrayCached($template, array(), $markerArray , array());
return $this->pi_wrapInBaseLi($content);
}
Je nachdem, wie man die class.tslib_pibase.php ändert, können also auch andere Tags als Wrap eingesetzt werden.
Beim klonen der Funktion unbedingt darauf achten, dass das Endflag richtig gesetzt wird, sonst geht gar nix mehr!
[/b]
Nachtrag: Möchte man wie ich das Suchfeld neben die horizontale Navigation mit in eine <ul> packen, so muss man das <form>-Element auch mit style="display:inline" versehen, da sonst eine Zeilenumbruch gemacht wird!