WordPress: ausklappbares Sub-Menu ‚aufbocken‘ und gestalten

Für WordPress gibt es neben den kostenflichtigen ‚Premium Themes‘ auch eine sehr große Anzahl kostenloser Themes – man muss ja nicht immer gleich ein eigenes WordPress Theme entwickeln. Ich nehme beispielsweise gerne das Theme Twenty Twelve als Ausgangspunkt für die Entwicklung eines neuen Themes. Daher beziehe ich mich erstmal auf die Struktur, wie sie  Twenty Twelve zu finden ist. Zumindest bei Twenty Thirteen verhält sich das Sub-Menu allerdings identisch – und auch bei vielen anderen Themes ist vermutlich dieselbe Struktur zu finden.

Wie auch immer. Zur Sache: Das Sub-Menu von Twenty Twelve (und vermutlich vieler weiterer frei verfügbarer / kostenloser WordPress-Themes) ist an sich zwar schon schön und gut, aber manchmal will man es in Ruhe gestalten – und dann kann es etwas lästig sein, wenn es immer nur bei Mouse-Over (hover) zu sehen ist.

Wordpress Submenu style cssDer Rechte-Maustaste-Trick kann schon ein wenig helfen, um beispielsweise mit Firebug die Details des Sub-Menus zu erkunden: Klickt man mit der rechten Maustaste auf eines der ausklappten Menu-Elemente, bleibt das Sub-menu stehen. Das erleichtert zwar das lesen der verantwortlichen Style-Anweisungen, aber spätestens beim nächsten Reload ist das Sub-Menu wieder eingeklappt. manchmal möchte man die Unternatigation am liebsten wie ein Auto ‚aufbocken‘ und drunter kriechen, ohne dass sie sich gleich wieder einklappt.

Ich habe gerade mal wieder zu viel Zeit damit verbracht, die Stelle im CSS-Stylesheet zu finden, die für das Ausklappen (und Einklappen) des Sub-Menus verantwortlich ist. Daher will ich hier kurz dokumetieren, wo diese Stelle zu finden ist – und wie man den Rollover-Effekt vorübergehend deaktivieren kann, damit man in Ruhe die Sub-menu-Punkte gestalten kann.

In Stylesheet des WordPress-Themes Twenty Twelve ist im Bereich für Bildschirme > 600px eine Style-Anweisung für die Unordered List <ul> der zweiten Ebene zu finden. Diese bezieht sich auf das Sub-Menu:

.main-navigation li ul {
        margin: 0;
        padding: 0;
        position: absolute;
        top: 100%;
        z-index: 1;
        height: 1px;
        width: 1px;
        overflow: hidden;
        clip: rect(1px, 1px, 1px, 1px);
    }

Die Style-Anweisung läßt den gesamten Sub-Menu-Container (ul) auf 1×1 Pixel schrumpfen – und durch overflow: hidden; wird verhindert, dass überstehende Bestandteile zu sehen sind.

Ein paar Zeilen weiter unten wird diese Style-Anweisung bei hover aufgehoben – das Menu ist dann zu sehen:

    .main-navigation ul li:hover > ul,
    .main-navigation ul li:focus > ul,
    .main-navigation .focus > ul {
        border-left: 0;
        clip: inherit;
        overflow: inherit;
        height: inherit;
        width: inherit;
    }

Wenn man nun in der ersten Style-Anweisung die Details zu Höhe und Breite und Overflow ausklammert, sind die Sub-Menus auch im Default-Zustand zu sehen und man kann sich in Ruhe mit dem Design der nun ausgeklappten Unternavigation befassen:

.main-navigation li ul {
        margin: 0;
        padding: 0;
        position: absolute;
        top: 100%;
        z-index: 1;
       /* height: 1px;
        width: 1px;
        overflow: hidden;
        clip: rect(1px, 1px, 1px, 1px); */
    }

MacBook Pro HDMI Fernseher-Farben-Fehler [Lösung]

In den letzten Jahren diente uns ein iMac als DVD-Player und um zum beispiel YouTube-Videos auf unserem Fernseher, einem SONY Bravia zu gucken. Hat dank einer kleinen Adapterkette auch immer alles gut funktioniert. Nun sollte das relativ neue 15″ MacBook Pro (Retina) an den Fernseher angeschlossen werden – und ein kurioses Problem trat auf: die Farben sind ‚durchgedreht‘.

MacBook Pro HDMI Fernseher-Farben FehlerDie eigentliche Verbindung zwischen rMBP und SONY Fernseher war einfach herzustellen: das rMBP hat einen eigenen HDMI Ausgang. Kabel einstecken, fertig. Auf dem Fernseher war auch umgehend ein Bild zu sehen – allerdings eben mit besagtem Farb-Fehler: das Fernsehbild sah aus, als wären Schwarz- und Weiss-Töne durch Magenta / Pink und Hellblau ersetzt worden. Ziemlich psychedelisch! Als ob der Fernseher einen eingebauten Solarisationsfilter hätte.

Das Internet scheint voll mit Tipps und Tricks und Empfehlungen zu diesem oder einem ähnlichen Problem zu sein: manche meinten, das Kabel wäre wohl kaputt – das konnten wir aber ausschliessen ,weil dasselbe Kabel ja mit der Kombination iMac-TV tadellos funktionierte. Andere empfahen, das Display zu kalibrieren – oder den Alpha-Wert anzupassen. Für uns stellte sich die Lösung des Problems letztendlich als ziemlich einfach dar: die Retina-Auflösung des MacBook Pro scheint sich nicht mit der Auflösung des fernsehers zu vertragen.

Folgendes hat dann das Problem behoben:

  • in den Systempräferenzen > Bildschirme > Auflösung von 1360 x 768 zu 1080i ändern
  • optional: Bildschrime nicht „spiegeln“

Und schon waren die Farben auch auf dem Fernseher normal.

WordPress Widget-Anzeige regeln (nicht auf der Startseite anzeigen)

Mithilfe der sogn. Widgets läßt sich in WordPress vieles einfach in der Seitenleiste einblenden. Manchmal ist das aber auch ein bisschen zu einfach und will oder muss man die Widget-Anzeige beschränken. Zwei Plugins können einfache Abhilfe schaffen.

Das Problem, das zunächst eigentlich kein Problem ist: WordPress bietet in der aktuellen Version eine Reihe vorgefertigter Widgets an, die sich einfach ‚auf allen Seiten‘ anzeigen laasen. Häufig kommen im Laufe der Zeit individuell erstellte Widgts hinzu – und einige Plugins bringen ihre eigenen Widgets mit. Viele dieser Widgets können sehr hilfreich sein, um schnell und einfach eine informative WordPress-Seite zu erstellen – aber sollten langfristig immer alle Widgets wirklich auf allen Seiten angezeigt werden?

  • Neueste Blog-Einträge
  • Letzte Kommentare
  • Tag-Cloud mit den beliebtesten Schlagwörten
  • Suche-Funktion
  • Links zu Social-Media-Profilen
  • Links zu anderen, befreundeten Webseiten.
  • Shop-Kategorien
  • Beliebte Inhalte
  • etc.

Die Widget-Vielfalt kann natürlich verlockend sein und dazu führen, dass die Seitenleiste (sidebar) mit Widgets vollgepackt wird. Das führt dazu, dass die Seitenleiste überfrachtet wirkt und unübersichtlich wird – kurz gesagt: die UX (User Experience) geht den Bach runter. Und früher oder später wird man dann gezwungen sein, den Widget-Zoo zu bändigen, damit die Seite auch weiterhin attraktiv und nutzerfreundlich bleibt.

Das soll nicht bedeuten, dass nun gleich reihenweise mühevoll eingebettete Widgets abgeschaltet werden müssen, nur um die Seite übersichtlicher zu machen. Stattdessen sollte man sich daran setzen, die Struktur des Blogs / der Webseite zu optimieren. Es ist ja auch nicht unbedingt sinnvoll, immer „alles“ anzubieten. Beim durchklicken der Webseite wird der Nutzer ggf. ‚betriebsblind‘ und die mühevoll platzierten Widgets werden quasi unsichtbar.

Widget-Struktur trifft Informationsarchitektur

Stattdessen sollte man sich seine Widget-Sammlung vornehmen und strukturieren. Überlegen Sie sich, welche Widgets Sie an welcher Stelle benötigen: auf welchen Seiten / in welchen Kategorien / auf welchen Seiten-Typen ist welches Widget am sinnvollsten platziert. Was hilft dem Nutzer an welcher Stelle weiter – und was sollte eher an einer anderen Stelle angezeigt werden.

Zum Glück gibt es natürlich auch für dieses Problem eine halbwegs einfache Lösung, die in Form eines Plugins daher kommt – bzw. in Form von zwei Plugins. Mithilfe des Plugins Widget Logic lässt sich (wie der Name schon andeutet) eine Logik definieren, nach der Widgets angezeigt werden – oder eben nicht.

Widget-Anzeige nach Pfad regeln am Beispiel ‚Neueste Blog-Einträge überall ausser auf der Startseite anzeigen‘

Das Plugin Widget Logic ist ziemlich flexibel und wer ein wenig PHP beherrscht, kann so ziemlich alle möglichen und unmöglichen Bedingungen formulieren, nach denen Widgets angezeigt oder verborgen werden sollen. In den meisten Fällen dürfte das nicht nur ‚zu viel des Guten‘ sein, sondern auch ein gewissen Sicherheitsrisiko beinhalten: Nutzer mit Zugriff auf die  Widget-Administration könnten theoretisch schädlichen Code einfügen, der dann von WordPress direkt umgesetzt wird.

Wordpress Widget-Anzeige steuern

Widget-Anzeige beschränken: „Letzte Einträge“ nicht auf der Startseite anzeigen

Hier kommt das zweite Plugin Widget Logic by Path zum Einsatz: damit lässt sich die Logik, nach der Widgets angezeigt oder verborgen werden, auf Pfade beschränken. In den meisten Fällen dürfte das vollkommen ausreichend sein.

Ein Beispiel: mithilfe des Kürzels <all paths except> werden die nachfolgenden Seiten bzw. Pfade von der Anzeige ausgeschlossen. Wenn auf <all paths except> also <home> folgt, wird das Widget-Anzeige auf der Steitweise unterdrückt, auf allen anderen Seiten und in allen Beiträgen wird das Widget aber weiterhin angezeigt.

Hier die Direkt-Links zu den oben genannten Plugins:

 

In 10 Schritten das Blog-Einkommen vertausendfachen

Es ist Wochenende – und mir ist zu warm. Eine gute Gelegenheit also, um endlich mal den Artikel zu schreiben, den ich schon immer schreiben wollte: wie man sein Blog-Einkommen vertausendfachen kann… theoretisch.

Vorab schon mal eine kleine Warnung: dieser Artikel ist nicht ganz ernst gemeint  – aber zwischen den Zeilen ist natürlich  trotzdem die eine oder andere Wahrheit zu finden. Viel Vergnügen!

Also. Vielleicht betreiben Sie ja einen Blog, mit dem Sie Geld verdienen? Oder Sie haben sich zumindest schon mal mit dem Gedanken befasst, mit bloggen Geld zu verdienen? Gut. Ich auch. Ich muss gestehen, dass ich sozusagen seit Jahren im Internet Geld verdiene – allerdings nicht vorwiegend über Anzeigen. Aber das ist hier nicht das Thema.

Wenn man also mit einer Webseite Geld verdienen möchte, gibt es verschiedene Möglichkeiten – die einfachste ist vermutlich das Schalten von Anzeigen – zum Beispiel von Google Adsense Anzeigen.

Wie vielleicht bereits bekannt ist, handelt es sich bei Adsense Anzeigen (meistens) um PPC-Anzeigen – also um Pay-Per-Click – man bekommt also pro Klick eine gewisse Vergütung auf seinem Adsense-Konto gutgeschrieben.

Die Höhe der EInnahmen aus solchen PPC-Anzeigen kann stark variieren. Um sich ein Bild zu machen, wie hoch die Einnahmen sein könnten, muß mann lediglich folgende Formel verwenden:

Monatliche Einnahmen = Klicks pro Monat x Prämie pro Klick

Damit hätten wir nun zwar eine Formel, aber immer noch zwei Unbekannt: die Anzahl der Klicks pro Monat, und den pro Klick behalten Betrag. Macht aber nichts – das ganze soll hier ja sowieso nur exemplarisch durchgerechnet werden. Jetzt kommen wir mal langsem zum spannenden Teil:

Wie kann ich jetzt mein Blog-Einkommen vertausendfachen?

Die Antwort liegt in der Kraft der 2! Wir folgen einfach der binären Reihe – und können es rein theoretisch recht einfach schaffen, das Blog-Einkommen Um den Faktor 1000 zu erhöhen. Um den Faktor 1024 um ganz genau zu sein. Alles, was wir benötigen, sind 10 Schritte, in denn wir das Blog-Einkommen jeweils verdoppeln. Und das ist durchaus möglich. Hier ein Beispiel für 10 Schritte, mit denen das Blog-Einkommen ver-1024-facht werden könnte. Exemplarisch nehmen wir mal an, sie verdienen zurzeit 1Euro pro Tag – am Ende der 10 Maßnahmen sollten sie eine Idee davon haben, wie Sie Ihr Blog-Einkommen theoretisch auf über 1000 Euro pro Tag steigern können.

1. Suchmaschinenoptimierung = besser gefunden werden = mehr Besucher

Verdoppeln Sie die Anzahl der Besucher, indem Sie Ihre Seiten optimieren. Dieser Ansatz wird auch ‚Inline Marketing‘ genannt. Sehen Sie sich Ihren Blog bzw. Ihre Webseite genau an. Analysieren Sie , wie sie bisher gefunden wurden – und setzen Sie die Maßnahmen um, von denen Sie sich eine bessere Auffindbarkeit erhoffen. Ergänzen und erweitern Sie alte Artikel mit Zusatzinformationen und Bildern. EIne Verdoppelung der Besucherzahl bedeutet theoretisch eine Verdoppelung der Klicks – und schon haben wir das Blog-Einkommen theoretisch auf 2 Euro pro Tag verdoppelt.

2. ‚Mehr Geld pro Klick‘ durch Optimierung der Umgebung / wertvolle Keywörter

Manche Anzeigen generieren 1 cent pro Klick – andere generieren 1 Euro pro Klick – das kommt ganz auf die ‚Umgebung‘ an. Wenn Sie in Ihrem Blog beispielsweise über Versicherungen oder Hotels berichten, dürften die Einnahmen pro Klick höher sein, als bei einem Blog über Modelleisenbahnen. Aber selbst einen Blog über Modelleisenbahnen kann man aufwerten: warum nicht über eine Reise berichten, die man unternommen hat? In Ihrem Adsens-Konto finden Sie die Angabe zu den CPK – das sind die Cost Per Kilo – oder auf Deutsch: Euro pro 1000 Seitenaufrufe. Durch die entsprechende ‚Umgebung‘ sollte es möglich sein, die CPK zu verdoppeln – und schon haben wir das Blog-Einkommen theoretisch auf 4 Euro pro Tag verdoppelt.

3. Besucherzahl verdoppeln durch Mehrsprachigkeit

Beherrschen SIe eine zweite Sprache? Super! Dann können SIe relativ ‚einfach‘ die Besucherzahlen theoretisch verdoppeln, indem Sie alle Inhalte zweisprachig anbieten. Und schon haben wir das Blog-Einkommen theoretisch auf 8 Euro pro Tag verdoppelt.

4. Blog-Einnahmen durch zweites Thema / zweiten Themenblog verdoppeln

Alter Witz: Was ist besser eine Webseite? Antwort: Zwei Webseiten!

Aber im Ernst: natürlich läßt sich die Rechweite und somit die Anzahl der Besucher erhöhen, wenn man nicht nur eine, sondern zwei Webseiten betreibt. Dabei muss es sich ja nicht gleich um vollkommen unterschiedliche Themen handeln. Manchmal können zwei Lesergruppen nah an einem Thema sein, und dennoch handelt es sich um zwei Lesergruppen. Und schon haben wir das Blog-Einkommen theoretisch auf 16 Euro pro Tag verdoppelt.

5. Mehr Besucher durch externe Verlinkung / Link-Partnerschaften

Es wird derzeit mal wieder viel über SInn und Unsinn von Link-Partnerschaften diskutiert. Mancher Autor äußert die Vermutung, dass Link-Partnerschaften eher kontraproduktiv seien und von Suchmaschinen bzw. von Google sogar bestraft würden. Das mag sein, wenn es sich bei den vermeintlichen Link-partnern um reine Link-Farmen handelt und/oder das Thema der Partnerseite vom Thema der eigenen Webseite grob abweicht.

Ich halte von solchen Sprkulationen nur wenig – hauptsache, man ist beim Aufbau von Link-Partnerschaften ehrlich. Mein Tipp: verlinken Sie Seiten, die Ihnen thematisch bzw. inhaltlich gefallen und von denen Sie meinen, dass diese für Ihre Leser einen Mehrwert bieten. Sie können auch eine Linkliste anlegen – also eine eigene Seite einrichten, auf der Sie themenverwandte Seiten aufführen. Scheuen Sie sich nicht, die Betereiber der von Ihnen verlinkten Seiten zu kontaktieren – vielleicht ergibt sich ein Rück-Link. Dadurch ergeben sich gleich drei Vorteile: Sie positionieren sich und Ihre Seite und generieren gleichzeitig zusätzliche Inhalte. Zudem besteht die Möglichkeit, durch Rück-Verlinkung die Suchmaschinenpatzierung zu verbessern (‚SEO‘)  und gleichzeitig zusätzliche direkte Besucher über die verlinkenden Seiten zu bekommen.

Und schon haben wir das Blog-Einkommen theoretisch auf 32 Euro pro Tag verdoppelt.

6. Überschriften optimieren für eine bessere CTR

Auch dieses Thema wird immer wieder aufgegriffen: Überschriften schreiben ist eine Kunst! Bei Zeitungen ist man sich dessen schon lange bewusst – doch im Internet haben Überschriften eine noch viel größere Bedeutung. Wenn jemand Ihre Seite in den Suchergebnissen aufgeführt wird ist sind Überschrift und Teasertext das einzige, was Auskunft über den zu erwartenden Inhalt bietet. Die Überschrift ist damit ‚Klick-entscheidend‘.

Versuchen Sie, in der Überschrift den zu erwartenden Inhalt kurz und prägnant zu skizzieren. Verwenden Sie wichtige Keywörter – aber vermeiden Sie reine Auflistungen von Keywörten. Letztendlich entscheidet der Leser, und nicht die Suchmaschine, ob Ihre Seite angeklickt wird.

Über die Optimierung von Überschriften sollte es möglcih sein, die Klickrate bzw. Click-Through-Rate (CTR) zu verdoppeln. Und schon haben wir das Blog-Einkommen theoretisch auf 64 Euro pro Tag verdoppelt.

7. Reichweite erhöhen durch Social Media und Newsletter

Geben Sie Ihren Besuchern die Möglichkeit, Ihre Inhalte zu abonnieren. So machen Sie aus einmaligen Besuchern wiederkehrende Besucher. Und jeder dieser Besucher ist ein potenzieller Multiplikator.

internet Blog-EinkommenWordPress bringt bereits ein wichtiges Grundelement mit: alle neu erscheinenden Artikel können in der Regel über den eingebauten RSS-Feed abonniert werden. Allerdings wird RSS heute eher selten genutzt.

Legen Sie für Ihre Webseite / für Ihren Blog Social-Media-Profile an: Twitter, Facebook, Google+, Instagram – die Auswahl ist groß. Begleiten Sie jeden neuen Artikel mit einem eigenen Eintrag in den angelegten Profilen, Jeder Abonnent ist ein potenzieller Multiplikator.

Bieten Sie einen Newsletter an. Es gibt verschiedene kostenloste WordPress-Plugins, über die sich recht einfach ein Newsletter einrichten lässt.

Über die Nutzung von Social Media Plattformen und das Verschicken von Newslettern sollte es möglich sein, die Anzahl der Besucher zu verdoppeln. Und schon haben wir das Blog-Einkommen theoretisch auf 128 Euro pro Tag verdoppelt.

8. Anzeigen besser positionieren / Partnerprogramme / Affiliate-Programme

Probieren Sie verschiedene Anzeigen-Design aus. Spielen Sie mit der Platzierung. Manche Designs und Platzierungen funktionieren besser, als andere.

Affiliate- und andere Partnerprogramme können zusätzliche EInnahmen generieren. Manche Partnerprogramme zahlen überraschend hohe Vergütungen. Sehen Sie sich bei verschiedenen Anbietern um, probieren Sie verschiedene Programme aus.

Über Affiliate- und andere Partnerprogramme sollte es möglich sein, die Blog-Einnahmen zu verdoppeln. Und schon haben wir das Blog-Einkommen theoretisch auf 256 Euro pro Tag verdoppelt.

9. Anzahl der Artikel verdoppeln

Der neunte Punkt ist vielleicht der schwierigste – aber auch der einfachste: sie verdoppel die Anzahl der Leser, indem die Anzahl der Inhalte verdoppeln. Also anstatt beispielsweise zwei Artikeln pro Woche schreiben Sie künftig vier Artikel pro Woche.

Spätestens hier sollten Sie mißtrauisch geworden sein: Wenn Sie alle zuvor genannten Punkte umsetzen wollten, müssten SIe künftig also doppelt so viele Artikel auf zwei Webseiten in jeweils zwei Sprachen schreiben. Jeder Artikel sollte eigentlich auch doppelt so umfangreich und somit ungefähr doppelt so aufwändig sein, wie vor der ‚Optimierung‘. Das hat aber logischer weite zufolge, dass sich auch Ihr Arbeitsaufwand entsprechend erhöht. Wenn Sie zu Beginn des Experiments nur 2 Stunden pro Woche Zeit in Ihre Webseite inverstiert haben, sind wir jetzt durch die eben genannten Verdoppelungen bereits bei wenigstens 2x2x2x2x2 = 32 Stunden pro Woche!

Wie dem auch sei – über eine Verdoppelung der Inhalte sollte es möglich sein, die Blog-Einnahmen zu verdoppeln. Und schon haben wir das Blog-Einkommen theoretisch auf 512 Euro pro Tag verdoppelt.

10. …

Damit wären wir zwar eigentlich nicht nicht am Ende der zehn Punkte Liste angekommen, aber ich denke, Sie haben das Prinzip verstanden, um das es mir hier ging: Theoretisch lassen sich Blog-Einnahmen natürlich erhöhen – und theoretisch vermutlich auch vertausendfachen. Jeder einzelne Schritt mag einfach erscheinen. In der Summe kann das ganze aber recht aufwändig werden – Stunden, Tage, Wochen harter Arbeit.

Nach den oben aufgeführten neun Punkten wäre ja nun eigentlich auch nur noch ein Schritt nötig, um auf ein Blog-Einkommen von über 1000 Euro pro Tag zu kommen. Diesen letzten Punkt verkneife ich mir aber. Vielleicht haben Sie ja selber eine gute Idee, wie Sie Ihr Blog-Einkommen vertausendfachen? Ich bin gespannt…

OpenOffice hängt: „Fenster erneut öffnen?“ [Lösung]

Habe gerade per Ferndiagnose die OpenOffice-Installation (Mac OS X) eines lieben Kunden aus einer Endlosschleife befreit. Wir haben das ganz vor ca. einem Jahr schon einmal machen müssen, diesmal will ich die nötigen Schritte zum ‚reparieren‘ kurz dokumentieren. Dann kann ich mir das nächste mal die kleine Web-Recherche vielleicht sparen.

Die Situation stellte sich wie folgt dar: OpenOffice (unter Mac OS) ist geöffnet und läßt sich nicht schließen, Das führt dann zu dem Problem, dass sich der Computer nicht herunterfahren bzw. ausschalten läßt. Stattdessen erscheint die Fehlermeldung: „OpenOffice wurde zuletzt beim Öffnen von Fenstern unerwartet beendet. Möchten Sie versuchen, die Fenster erneut zu öffnen?“

Es werden zwei Optionen angeboten: „erneut öffnen“ und „nicht erneut öffnen„. Diese lassen sich zwar  anklicken, aber es ergibt sich daraus keine Problemlösung. Schlimmer noch: ein bereits geöffnetes Text-Dokumet läßt sich nicht schließen, OpenOffice lässt sich nicht beenden, der Computer läßt sich nicht ausschalten. Nur ein 3-Sekunden ‚Klick‘ auf den Ein-Aus-Knopf hilft – aber auf Dauer ist das natürlich keine Lösung.

Kurze Anleitung zur Problem-Lösung:

versteckte Menü-Auswahl Library Mac OS

versteckte Menü-Auswahl ‚Library‘ in MacOS

Ganz offensichtlich: OpenOffice hängt fest. Eine kurze Internet-Recherche liefert eine Fülle von Lösungsansätzen, teilweise wird empfohlen per Terminal / Konsole das Problem zu beheben. Das kann ich gerne mal ‚vor Ort‘ machen, aber das ist keine Lösung, die ich meinem Kunden per Telefon zumuten will.

Stattdessen funktionierte hier (erneut) folgende Vorgehensweise, bei der lediglich eine korrupte Datei bzw. ein Unterverzeichis im Verzeichnis „Library > Saved Application State“ gelöscht werden muß:

  • OpenOffice sofort beenden: Tasten [alt]+[cmd]+[esc] drücken, dann OpenOffice aus der Liste auswählen und „sofort beenden“ klicken („force quit“)
  • im Finder oben in der Menüleiste den Punkt „Gehe zu“ anwählen („Go“)
  • Daraufhin wird zusätzlich der Auswahlpunkt „Library“ sichtbar – diesen dann auswählen
  • Im Verzeichnis „Library“ das Verzeichnis „Saved Application State“ suchen und öffnen
  • Im Verzeichnis „Saved Application State“ das Unterverzeichnis „org.openoffice.script.savedState“ suchen und komplett in die Tonne den Papierkorb werfen.
  • Papierkorb leeren –  Unterverzeichnis „org.openoffice.script.savedState“ löschen

Nach dieser 1-Minuten-Prozedur ließ sich OpenOffice ohne Probleme und ohne Fehlermeldungen öffnen. Geöffnete Dokumente ließen sich wie gewohnt auch wieder schließen, OpenOffice ließ sich beenden, der Computer ohne Fehlermeldung ausschalten. Fertig ist die Hütte.

PS: hier die Diskussion im OpenOffice-Forum, die mir bei der Lösung des Problems weitergeholfen hat: „„Fenster wiederherstellen“ – keine Reaktion

Bilder per CSS entsättigen (Graustufen-Farbe-Rollover-Effekt)

Das entsättigen von Fotos kann als Rollover-Effekt zum Beispiel für Vorschaubilder (z.B. Thumbnails) verwendet werden. Der Wechsel von der Grau- zur Farbversion ist dabei subtiler, als beispielsweise ein Zoom oder das ändern der Transparenz (opacity). Insbesondere wenn man die Vorschaubilder nicht komplett entsättigt und den Rollover-Effekt mit einer zeitlichen Verzögerung (Transition) versieht.

Dieser Effekt kann über die CSS3-Funktion „filter“ bereits von den meisten aktuellen Browsern dargestellt werden Allerdings verträgt sich „filter“ leider wieder mal nicht mit dem Internet Explorer – zumindest nicht mit der aktuellsten IE-Version 11 – und auch nicht mit der 10er Version und mit Edge. Microsoft hat beim Internet Explorer ab Version 10 die früher funktionierende Anweisung filter: gray leider über Bord geworfen. Man könnte die Entsättigung nun zwar mit einer JavaScript-Datei auch für IE10+ erzwingen, aber das spare ich mir erst mal.

Auch Firefox < V.35 unterstütze die Anweisung filter nicht. Wenn man den Entsättigungs-Effekt nun wenigstens für alle anderen halbwegs aktuellen Browser einsetzen möchte, kommt man also wieder einmal um einen entsprechenden Workaround nicht drumherum. Allerdings ist dieser Workaround eher einfach zu implementieren. Man benötigt lediglich ein SVG-Bild, das den Entsättigungs-Effekt für frühere Version von Firefox (4 – 34) bereitstellt. Hier nun die Details – möglicht kompakt:

Die Farbfotos, die zunächst als Schwarz-Weiss-Bilder dargestellt werden sollen, sind hier exemplarisch mit der Klasse „desaturate“ (also Engl. „entsättigen“) ausgezeichnet.

<img src="/bilder/farbfoto.jpg" class="desaturate thumbnail">

Für fast alle Browser gibt es nun also eine CSS-Anweisung, um ein Bild zu entfärben:

.desaturate {
    filter: grayscale(100%); /* Standard */
    -webkit-filter: grayscale(100%); /* Webkit */
    filter: url(/elements/grayscale.svg#desaturate); /* Firefox 4-34 */
    filter: gray;  /* IE6-9 */
    -webkit-filter: grayscale(1); /* Old WebKit */
}

Bei Maus-Rollover (:hover) soll das Bild als ursprüngliche Farb-Version dargestellt werden – also werden in einer zweiten CSS-Anweisung die vorher gesetzten Filter aufgehoben:

.desaturate:hover {
    filter: grayscale(0%);
    filter: none;
    -webkit-filter: grayscale(0); /* Old WebKit */
}

Die SVG-Datei ist ja eigentlich kein Bild, sondern eine Sammlung von Vektoren, die im XML-Format gespeichert werden. Daher kann dieses „Bild“ auch einfach mit einem Text-Editor erzeugt und an passender Stelle gespeichert werden. Hier der Inhalt:

<svg version="1.1" xmlns="http://www.w3.org/2000/svg">
    <filter id="desaturate">
    <feColorMatrix type="matrix" values="0.3333 0.3333 0.3333 0 0  0.3333 0.3333 0.3333 0 0
0.3333 0.3333 0.3333 0 0 0  0  0  1 0"/>
    </filter>
</svg>

Hier noch schnell der Link zur Übersicht bei Can I Use, bei welchen Browsern die CSS-Filter funktionieren:
http://caniuse.com/#search=filter

Und hier weiterführende Lektüre zum Thema:

WordPress als CMS: eigene Seiten-Typen definieren

WordPress ist ja nicht nur ein großartiges Werkzeug, um relative unkompliziert einen Blog oder eine News-Seite zu installieren. Man kann WordPress inzwischen auch so weit anpassen, dass es sich als Content Management System nutzen läßt. Allerdings muß ich gleich vorweg sagen, daß es mich ein wenig nervt, daß bei WordPress die Inhaltstypen ‚Page Types‘ genannt werden, und nicht ‚Content Types‘.

Das suggeriert, dass in WordPress eigentlich alles einer ‚Seiten-Matapher‚ folgen würde – was ich generell begrüßen würde. Allerdings gibt es bereits einen Seitentypen „Seiten“ – und das stiftet ein wenig Verwirrung. Denn sowohl „Seiten“ als auch „Einträge“ sind Seiten-Typen. Aber das führt jetzt vielleicht zu weit.

Was macht WordPress zu einem Content Management System?

Für mich ist die Möglichkeit, eigenständige Seitentypen definieren zu können vermutlich  das wichtigste Kriterium, das WordPress zu einem CMS macht. Wenn man unterschiedliche Inhalts-Typen oder Daten-Typen verwalten möchte, kommt man nicht darum herum, sie unterschiedlich zu behandeln. Jeder Inhalts-Typ hat seine ganz speziellen Eigenschaften. Eine Webseite für ein Plattenlabel hat beispielsweise Seiten zu Bands, Seiten zu Alben, Seiten zu einzelnen Songs. Oder auch Seiten mit allgemein gehaltenen Informationen zum Laben – zum Beispiel Info-Seiten.

Wordpress: eigene Seiten-Typen definieren

WordPress: Übersicht des Seiten-Typen „Info-Page“

Unterschiedliche Inhaltstypen sind häufig vor allem einfach unterschiedliche Daten-Typen. Um diesen Daten Bedeutung geben zu können, sollten sie entsprechend unterschiedlich behandelt bzw. gehandhabt werden können. Und das ist nur dann möglich, wenn das CMS auch wirklich unterschiedliche Daten- bzw. Inhaltstypen unterschiedlich behandeln kann. Als Folge können dann Inhaltstypen jeweils ihr eigenes Template, ihr eigenes Layout, ihr eigene ‚Gestalt‘ haben.

Eigene Seiten-Typen-Templates in WordPress definieren

Grundsätzlich lassen sich in WordPress eigene Seitentypen auf zwei Arten definieren: entweder über die functions.php Datei des Themes, oder über ein eigenes Plugin. Es gibt zahlreiche Plug-ins, die neue Seitentypen zur Verfügung stellen – und zahlreiche Themes, die ihre eigenen Seitentypen mitbringen. Aber letztendlich ist es vermutlich die eleganteste Vorgehensweise, wenn man genau den Seitentypen definiert, den man gerade benötigt.

In folgenden Blog-Einträgen werde ich auf beide Methoden näher eingehen. Hier und jetzt will ich aber nur eine kurze Einführung in das Thema bieten und in einer kurzen Einleitung zeigen, wie man ganz einfach selbst einen Inhaltstypen definieren kann. Grundsätzlich sind nur zwei Schritte notwendig: zuerst muß eine entsprechnede Funktion definiert werden. Dann muß diese Funktion initialisiert werden, um WordPress den neuen Inhaltstypen zur Verfügung zu stellen. Hier ein Beispiel:

Schritt eins: des Inhaltstypen in einer Funktion beschreiben

Der folgende Code muß einfach der Datei functions.php des aktuell installierten Themes hinzugefügt werden:

function my_custom_content_type() {
$labels = array(
 'name'               => 'Custom-Info-Pages',
 'singular_name'      => 'Custom-Info-Page',
 'menu_name'          => 'Info-Pages',
 'name_admin_bar'     => 'Info-Page'
};

$args = array(
 'labels'              => $labels,
 'public'              => true,
 'exclude_from_search' => false,
 'publicly_queryable'  => true,
 'show_ui'             => true,
 'show_in_nav_menus'   => true,
 'show_in_menu'        => true,
 'show_in_admin_bar'   => true,
 'menu_position'       => 5,
 'menu_icon'           => 'dashicons-admin-appearance',
 'capability_type'     => 'post',
 'hierarchical'        => false,
 'supports'            => array( 'title', 'editor', 'author', 'thumbnail', 'excerpt', 'comments' ),
 'has_archive'         => false,
 'rewrite'             => array( 'slug' => 'custom-info' ),
 'query_var'           => true
 );

register_post_type( 'custom_content_type', $args );#
 // flush_rewrite_rules();
 }

add_action( 'init', 'my_custom_content_type', 0 );

In einem zweiten Schritt können wir dem Theme eine neue Template-Datei für den eben definierten Inhaltstypen hinzufügen. Diese wird dann automatisch geladen, um Inhalte dieses Typs anzuzeigen. Zunächst genügt es vollkommen, wenn die Datei „single.php“ als Kopie unter neuem Namen „single_custom_content_type.php“ abgespeichert und in das Theme-verzeichnis des Servers geladen wird. Diese wird allerdings nur dann die passenden Inhalte laden können, wenn in dieser Datei folgende Zeile angepasst wird.

Schritt zwei: Initialisierung der Funktion / des Inhaltstypen:

In der Datei  „single_custom_content_type.php“ anstelle von diesem Code-Schnippsel:

<?php get_template_part( 'content', get_post_format() ); ?>

…sollte mit folgendem Code-Schnippsel ersetzt werden:

<?php get_template_part( 'content', 'custom_content_type' ); ?>

…und fertig ist die Laube…

Vorteile von eigenen Seiten-Typen

Sogar ohne eigene Felder und ohne zusätzliche Style-Definitionen etc. ergeben sich umgehend folgende Vorteile:

  • Der Pager / die Blätterfunktion erkennt den neuen Inhaltstypen. Innerhalb eines Inhaltstypen läßt sich so direkt von Seite zu Seite blättern, ohne dass unterschiedliche Inhalte miteinander vermischt werden.
  • Die Navigationsleiste des Administrationsbereichs bekommt automatisch neue Funktionalitäten: mit einem Klick lassen sich alle Inhalte gleichen Typs übersichtlich auflisten und neue Seiten dieses Types hinzufügen (siehe Abbildung oben).
  • Seiten des neuen Inhaltstypen teilen sich alle dasselbe Stammverzeichnis, das im Code oben unter ’slug‘ bzw. unter  „rewrite“ angegeben wird. Dies gibt den Seiten Bedeuteung, sowohl für Nutzer, die die Seite aufrufen und die URL sehen, als auch für Suchmaschinen. Ausserdem können alle Seiten dieses Typs übersichtlich in einer  Web-Statistiken (z.B. PiWik) miteinander verglichen werden.

Inhaltstypen für bereits bestehende Seiten ändern

Häufig sieht die Situation ja so aus: man hat bereits eine WordPress-Installation mit einigen Einträgen und Seiten – unter Umständen hat man bereits viele Seiten. Dann kommt man irgendwann auf die Idee, dass es praktischer wäre, einige der Seiten einem neuen, eigenen Inhaltstypen zuzuordnen. Das ist dan des kleinen Plugins Post Type Switcher (wordpress.org/plugins/post-type-switcher/) relativ einfach machbar. Man muß das Plugin nur installieren und aktivieren und schon bekommt man für alle Seiten eine kleine Dropdown-Auswahl, über die sich der Seitentyp nachträglich ändern läßt. Und natürlich gibt es auch eine Möglichkeit, per Massen-Aktualisierung gleich meherere Seiten auf einemal einem neuen Inhaltstypen zuzuordnen. Und bei Fragen: einfach fragen!

Links individuell per css stylen

ein weiterer Notizbucheintrag: wie ist die korrekte css-Formatierung für Links. Klingt jetzt erst mal vielleicht trivial, aber wenn es so trivial ist, dass man jedes mal die Suchmaschine anwirft, dann wird’s eben Zeit für einen Notizbucheintrag…

Also – es geht um folgendes:

<a href=“#“ class=“class1″>Linktitel1</a>
<a href=“#“ class=“class2″>Linktitel2</a>

der CSS-Code für die verschiedenen Link-Zustände sieht dann so aus:

<style>
<!--
/* class1 */
 a.class1:link {
  }
 a.class1:visited {
  }
 a.class1:hover {
  }
/* class2 */
 a.class2:link {
  }
 a.class2:visited {
  }
 a.class2:hover {
  }

 //-->
</style>

memory_limit per htaccess manuell einstellen

Manche Server-Prozesse brauchen mehr Rechenpower, als die Standardeinstellungen des Servers hergeben. Zum Beispiel verlangt die Zusammenstellung der Jahresansicht im Statistik-Tool Piwik nach deutlich mehr Memory, als  beispielsweise bei all-inkl voreingestellt ist.

Wenn man seine Webseite auf einem sogn. Shared-Server laufen hat, sind die Möglichkeiten häufig begrenzt. Man kann zwar beim Support nachfragen, ob die das Memory-Limit nicht vielleicht ein wenig hochschrauben können, aber meistens stößt man damit auf taube Ohren. Verständlich: schließlich teilen sich duzende, manchmal hunderte Kunden bzw. Webseiten die Rechenleisung eines Shared-Servers.

Anders bei sogn. Managed-Servern. Das man bei diesem Hosting-Modell der einzige Kunde ist, kann man fröhlich das Memory-Limit hochschrauben. Das kann man für jeden Webspace, für jede Domain oder auch für jedes Verzeichnis einzeln definieren. Dafür genügt es, einen kleinen Eintrag in der htaccess-Datein hinzuzufügen, mit dem man das  memory_limit manuell einstellen kann. Hier exemplarisch die Einstellung für ein memory_limit von 265MByte:

php_value memory_limit 256M

Damit riskiert man zwar, dass andere Prozesse bzw. der ganze Server vorübergehend etwas langsamer läuft – aber wenn es sich nur um die monatliche Zusammenfassung der Zugriffsstatistik handelt kann man das schon mal machen.

Dreamweaver hängt beim Öffnen eines Dokuments [Lösung]

Problem:

Man versucht ein Dokument (PHP) in Dreamweaver zu öffnen, aber Dreamweaver hängt fest. Es dauert zwischen 30 Sekunden und mehreren Minuten, bis der ‚Feuerball‘ verschwindet und man PHP-Datei ansehen und bearbeiten kann (meines Wissens nach betrifft das Problem vor allem Dreamweaver CS5 und Dreamweaver CS5.5).

Lösung:

Man muss die Funktion „Resolve To IP Address“ von Hand deaktivieren.

Lösungsweg:

  1. Dreamweaver beenden
  2. Das Library-Verzeichnis des angemeldeten Beutzers öffnen. Wenn das Library-Verzeichnis des angemeldeten Beutzers nicht zu sehen ist die ALT-Taste gedrückt halten und in der Menüleiste über „Gehe zu“ das Verzeichnis „Library“ („Bibliothek“?) aufrufen und dann ins Verzeichnis „Preferences“ wechseln („Präferenzen“?).
  3. Hier sollte die Datei „Adobe Dreamweaver CS5 Prefs“ bzw. „Adobe Dreamweaver CS5 Prefs“ zu finden sein – diese mit einem Texteditor (TextEdit) öffnen.
  4. Im Bereich [REMOTE DOWNLOAD] muss die Zeile „resolveremoteurltoipaddress=FALSE“ hinzugefügt werden…vorher:
    [REMOTE DOWNLOAD]
    remotedownloadcachesize=50
    remotedownloadallow=TRUE

    nachher:
    [REMOTE DOWNLOAD]
    remotedownloadcachesize=50
    remotedownloadallow=TRUE
    resolveremoteurltoipaddress=FALSE

…Datei speichern – und das wars dann – Dreamweaver sollte nun ohne Probleme und ohne Feuerball oder andere Verzögerungen jede noch so sehr verlinkte PHP-Datei öffnen. Viel Vergnügen!

Den Lösungsweg habe ich hier auf den Hilfeseiten von Adobe gefunden:
helpx.adobe.com/dreamweaver/kb/hang-opening-document-dreamweaver-cs5.html