endlich: einfache Anführungszeichen in WordPress

30. November 2010

Jetzt hab ich mich endlich bequemt, das mal zu googeln. WordPress macht aus einem Anführungszeichen ein anderes Zeichen und damit sämtliche meiner Codeschnipsel unbrauchbar für copy&paste. Das ganze lässt sich folgendermaßen ändern:

1. die functions.php im aktuellen Theme öffnen
2. folgenden Code einfügen:

  1. remove_filter('the_content', 'wptexturize');

Das war’s schon. Jetzt kann man meinen Code auch einigermaßen vernünftig kopieren.

Die Anleitung hab ich hier gefunden, Punkt 6 “Using Normal Quotes Instead of Curly Quotes“.

tinymce popup: Scrollbars anzeigen

29. November 2010

Ich habe ein kleines Plugin für tinyMCE geschrieben und hatte das Problem, dass das Popup Fenster nicht ausreichte, die Scrollbars allerdings fehlten. Nach kurzer Recherche das Ergebnis:

  1. ed.addCommand("mceimageEditor", function() {
  2. Screenw = Math.round(screen.width * 8/10);
  3. Screenh = Math.round(screen.height * 8/10);
  4. ed.windowManager.open({
  5. file: url + "/imageEditor.php?eid=1",
  6. width: Screenw,
  7. height: Screenh,
  8. scrollbars: "yes"
  9. });
  10. });

Class ‘CakeLog’ not found in…

09. November 2010

Aus irgendeinem Grund kriegte ich diese Meldung nach einem Umzug von cakePHP auf einen anderen Server. Die Lösung: in cake\libs\cake_log.php

  1. if (!defined('DISABLE_DEFAULT_ERROR_HANDLING')) {
  2. set_error_handler(array('CakeLog', 'handleError'));
  3. }

ändern in

  1. if (!defined('DISABLE_DEFAULT_ERROR_HANDLING')) {
  2. $cakeLog =& CakeLog::getInstance();
  3. set_error_handler(array(&$cakeLog, 'handleError'));
  4. }

Lösung gefunden auf dieser Seite.

Menüpunkten fortlaufende Klassennamen geben

04. November 2010

Danach hab ich nun schon öfter gesucht und bin jetzt zufällig drauf gestoßen. Ich möchte Listenelemente mit Klassennamen fortlaufender Nummerierung generieren. Das klappt so:

  1. lib.subMenu.1.NO {
  2. allWrap = <li class="sm{register:count_HMENU_MENUOBJ}">|</li>
  3. allWrap.insertData = 1
  4. }

Damit haben meine Listenelemente die Klassennamen sm1, sm2, …
Praktisch.

Eine andere Variante: man gibt den Listenelementen Klassennamen anhand ihrer IDs:

  1. lib.subMenu.1.NO {
  2. allWrap = <li class="sm{field:uid}">|</li>
  3. allWrap.insertData = 1
  4. }

Tadaah!

Dateigröße bei Dateiverweisen

04. November 2010

Ich wollte den Dateiverweisen eine Datei hinzufügen und bekam die Meldung: “file exceeds limit”. Und – es geschehen noch Zeichen und Wunder – die google Recherche brachte mich direkt zu einem hilfreichen Beitrag.
Um das Limit aufzustocken, öffnet man die typo3conf/extTables.php und fügt dort diese Zeile hinzu:

  1. $GLOBALS['TCA']['tt_content']['columns']['media']['config']['max_size'] = 10485760;

Danke an den Forenuser wurzl für einen der ersten hilfreichen Typo3 Forenbeiträge, den ich je gesehen habe.

von MySQL nach MSSQL

03. November 2010

Es ist das GRAUEN. Ich hatte eine MySQL Datenbank und sollte die in ein MSSQL Datenbank System übertragen. Natürlich klappt das nicht so ohne weiteres, eh klar. Da ich wenig Ahnung von MSSQL habe, hab ich mal improvisiert und dabei folgende Schritte ausgeführt:

  • Einen Datenbankexport in phpmyadmin ausgeführt. SQL-Kompatibilitätsmodus: MSSQL.
  • alle “IF NOT EXISTS” entfernt
  • MSSQL mag offensichtlich weder “unsigned” noch Größenangaben für int. Also aus int(10) -> int gemacht, alle unsigned ersatzlos rausgelöscht.
  • Foreign Keys mit einem Statement nach erstellen der Tabelle ersetzt:
  1. ALTER TABLE "tabellenname"
  2. ADD CONSTRAINT fk_name FOREIGN KEY(name_id)
  3. REFERENCES tabelle2(id);
  • AUTO_INCREMENT=33 durch “id” int IDENTITY(33,1) NOT NULL ersetzt
  • Bei den INSERTS alle datetime Werte durch folgendes ersetzt: Convert (datetime,  ‘2010-10-18 16:33:52’, 20)

Tadah! Und nach stundenlanger Bastelei schon hatte ich Tabellen mit Daten drin. Tragischerweise hab ich keine Ahnung, ob sich der Aufwand gelohnt hat, oder ich am Ende doch was falsch gemacht habe. Auf jeden Fall wurde aus

  1. CREATE TABLE IF NOT EXISTS "articles" (
  2. "id" int(10) unsigned NOT NULL,
  3. "author_id" int(10) unsigned NOT NULL,
  4. "newsletter_id" int(10) unsigned NOT NULL,
  5. "title" varchar(45) default NULL,
  6. "content" text,
  7. "modified" datetime default NULL,
  8. "created" datetime default NULL,
  9. PRIMARY KEY ("id"),
  10. KEY "fk_articles_authors" ("author_id"),
  11. KEY "fk_articles_newsletters1" ("newsletter_id")
  12. ) AUTO_INCREMENT=6 ;

am Ende

  1. CREATE TABLE "articles" (
  2. "id" int IDENTITY(59,1) NOT NULL,
  3. "author_id" int NOT NULL,
  4. "title" varchar(45) default NULL,
  5. "content" text,
  6. "modified" datetime default NULL,
  7. "created" datetime default NULL,
  8. PRIMARY KEY ("id")
  9. );
  10. ALTER TABLE "articles"
  11. ADD CONSTRAINT fk_articles_authors FOREIGN KEY(author_id)
  12. REFERENCES authors(id);

*schluchz*