Ein Blog von netzhaut.de

0

Codebereiche in unserem Blog.

Codebereiche lassen sich in unserem Blog wie folgt einbinden: < /pre> Folgende Sprachen sind fuer das Syntax Highlightning moeglich: 4cs 6502acme 6502kickass 6502tasm 68000devpac abap actionscript actionscript3 ada algol68 apache applescript apt_sources asm asp autoconf autohotkey autoit avisynth awk bascomavr bash basic4gl bf bibtex blitzbasic bnf boo c caddcl cadlisp cfdg cfm chaiscript cil clojure cmake cobol coffeescript cpp-qt cpp csharp css cuesheet c_loadrunner c_mac d dcs delphi diff div dos dot e ecmascript eiffel email epc erlang euphoria f1 falcon fo fortran freebasic fsharp gambas gdb genero genie gettext glsl gml gnuplot go groovy gwbasic haskell hicest hq9plus html4strict...

0

CatalogSearch in Magento 1.4 +

In einem Magento-Shop mit Version 1.6.2.0 wurden keine Produkte gefunden trotz Reindizierung/Cache Löschen/Attribute anpassen etc. Der Grund ist, dass Core Dateien verschlimmbessert wurden. Datei: app/code/core/Mage/CatalogSearch/Block/Result.php Hier sind die Zeilen 149 und 150 auskommentiert. Diese müssen wieder einkommentiert werden. $this->getListBlock() ->setCollection($this->_getProductCollection()); Falls es dann immer noch nicht funktionieren sollte, folgende Datei anpassen: Datei: app/code/core/Mage/EAV/Model/Resource/Entity/Attribute/Option/Collection.php Hier die Funktion SetIdFilter ändern von public function setIdFilter($optionId) { return $this->addFieldToFilter(’option_id’, array(’in’ => $optionId)); } nach public function setIdFilter($optionId) { if (is_array($optionId)) { $this->addFieldToFilter(’main_table.option_id’, array(’in’ => $optionId)); } else if ($optionId != ‘’) { $this->addFieldToFilter(’main_table.option_id’, $optionId); } return $this; } Und schon funktioniert die Schnellsuche wieder,...

1

Miniatur-Bilder für Facebook definieren

Beim Posten von URLs auf Facebook gibt es die schöne Möglichkeit, ein oder mehrere Bilder zu definieren, die dann als Miniaturansicht / Vorschaubild direkt im Facebook-Post angezeigt werden. Dies realisiert man über einen Meta-Tag im Header einer HTML-Seite:  <link rel=“image_src“ href=“[Bilderpfad]“ /> Die Bilder, die hier definiert werden, müssen NICHT als Bilder in der Seite eingebunden sein. Das ist die ganze Magie, die dahintersteckt.

0

dd zum Erzeugen grosser Files

Fuer den digitalen Merkzettel, und um nicht jedesmal die Einheiten nachschlagen zu muessen: export SPARSEFILE=/SECONDARY/sparsefile.img export GBSIZE=250 dd if=/dev/zero of=$SPARSEFILE bs=1024 count=0 seek=$[1024*1024*$GBSIZE]

1

TYPO3 – Suche erweitern

Wer des öfteren mal die Funktionalität von TYPO3 mit eigenen Extensions erweitert, wird des Öfteren auf das Problem stoßen, dass bei der Erweiterung von Tabellen oder beim anlegen von Extension-spezifischen Datenbanktabellen bei der hauseigenen Suche außen vor bleiben. Hier ist es sinnvoll, der Suche mitzuteilen, es möge doch bei der Suche auch zusätzliche Felder berücksichtigen. Dies lässt sich einfach und – im Gegensatz zu IF-Abfragen – einfach über TypoScript lösen. Um der Suche die neuen Datenbank-Tabellen und/oder Felder mitzuteilen, geht man folgendermaßen vor. Standard-Wert für „Überschriften und Schlagwörter“: tt_content.search.30.dataArray.20.valueArray.10.value = pages.title-subtitle-keywords-description Standard-Wert für „Seiteninhalt“: tt_content.search.30.dataArray.20.valueArray.20.value = pages.title-subtitle-keywords-description : tt_content.header-bodytext-imagecaption Zur...

7

Caching kurzlebiger Inhalte (z.B. News)

Ein typischer Fall, in dem Kunden und Entwickler das Caching von TYPO3 bisher verfluchten, war die Nutzung eines Plugins wie tt_news, bei dem sich die anzuzeigenden Datensätze zwar geändert hatten, die Aktualisierung des Caches aber erst nach Ablauf dessen Gültigkeitszeitraums  erfolgte. (Die Möglichkeit, generell den Cache zu deaktivieren, ist böse und wir daher nicht näher betrachtet). Über die Einstellung TCEMAIN.clearCacheCmd auf der Seite, die die Datensätze enthält, ließ sich zwar der Cache einzelner (oder aller) Seiten bei Änderungen invalidieren, jedoch ist dies nicht wirklich sinnvoll und praktikabel: Man muss entweder die Liste der Seiten-IDs pflegen oder mittels „all“ den Cache...

0

TYPO3 Core Dokumentation

Mit dem neuen Release haben sich auch wieder ein paar Dinge geändert bzw. kamen neue Dinge hinzu. Folglich wurden auch einige der Core-Dokumentationen aktualisiert. Nachdem die PDFs davon nicht mehr ganz so schnell und einfach aus dem Repository runtergeladen werden können, habe ich mal eine Liste der Dokumente samt PDF-Verlinkung zusammengestellt. Kurz noch die Erklärung von typo3.org, wie die Dokumente allgemein einzusortieren sind: These documents are related to the core of TYPO3 and address the built in functionality of TYPO3. They are designed to provide you with in-depth information. Each Core Manual addresses a particular process or function and how...

1

TYPO3-Scheduler integrieren

Die Integration des integrierten Schedulers in TYPO3 ist denkbar einfach. Zu allererst benötigt der Scheduler einen Benutzer, als der er seiner Aufgabe nachgehen kann. Der Benutzername ist hartcodiert und TYPO3-weit als _cli_scheduler vorgegeben. Dieser Benutzer braucht (in der Regel) keine besonderen Berechtigungen, er muss schlicht und ergreifend existieren (auch das vergebene Passwort ist dahingehend irrelevant). Er darf NICHT mit Administrator-Rechten arbeiten. Ist der Benutzer angelegt, ist die TYPO3-seitige Arbeit schon erledigt. Was nun noch fehlt, ist der Cronjob selbst. Für Linux (ob und wie dies auch mit anderen Betriebssystemen realisierbar ist, gilt es zu prüfen) ist das Vorgehen zum Anlegen...

0

Colspan/Rowspan in CType: table

Das Problem Tabellenzellen kommt nicht mehr allzu häufig vor aber hin und wieder doch. Mit der RTE Tabelle nicht das Problem aber die Tabelle an sich nicht sehr gut zum bearbeiten. In der contenttable ist dies so gut wie unmöglich. Aber es gibt eine funktionierende Lösung: Man nehme die Extension th_exttableservice und aoe_advancedtable.  Da aoe_advancedtable die eigene CSS-Klasse nicht mit übernimmt muss noch folgendes Snippet eingefügt werden. $acctables_class = $this->pi_getFFvalue($this->cObj->data[‚pi_flexform‘], ‚acctables_tableclass‘); $tableClass = ‚contenttable contenttable-‚.$type; if ($acctables_class) { $tableClass.= ‚ ‚.$acctables_class; } $table->setTableAttribute(‚class‘,$tableClass); Und schon kann man Tabellen zusammenfassen. Auf dieser Seite ist noch eine Beschreibung wie es funktioniert. Quellen aoe_advancedtable (als...