Child Plugins Concept for WordPress: Create Child Themes for Your Plugin!

If you develop a plugin that is introducing additional post types, you mostly need to add templates, css, images, functions etc. to the WordPress system.

Basically, you would put these into the plugin’s directory. But when it comes to customization for your clients, where to put those modified templates, functions or assets? You don’t want alter your plugin files or additions to your plugin folder as it won’t be able to update the plugin, safely.

Next place is the theme’s directory. Put some filter or action hooks into the theme’s functions.php, append CSS to the theme’s CSS or custom.css and load some additional files into the theme’s directory. But this will fail if you need to update the theme or – even worse – the client clicks on “update theme” on his own. On many themes out there, all your changes will be lost! Hopefully, you have already backed up your latest changes…

One thing helps against this issue: Get your plugin-specific modifications into the theme’s core itself. But your plugin’s name has to be WooCommerce or bbPress to be integrated into a wide set of themes!
As you will see, I go one step further than WooCommerce:

Over the past 2 years facing these problems, I developed another concept:

Weiterlesen →

WordPress Website für Inplace Personaldienstleistungen, Hamburg

Startseite inplace-hamburg.com

Im Auftrag der Inplace Personalmanagement GmbH in Hamburg, habe ich die technische Umsetzung der Websites-Relaunches http://www.inplace-hamburg.com/ und http://www.inplace-development.de/ durchgeführt.

Design und Projektleitung wurden von Inken Petersen, Ubercreative, die Frontendanpassungen von Claudia Böhm, pixelkommastrich übernommen.

Die technische Basis bildet eine WordPress Multisite-Installation mit dem WordPress-Theme Enfold.
Als Spezialanpassungen habe ich die Mitarbeiter-Profile und die Seminare mit Hilfe von Custom-Post-Types und Custom-Meta-Fields umgesetzt. Die Teammitglieder werden zudem mit Fotos in einem Slider auf Basis des FlexSliders von WooThemes auf den Startseiten aufgelistet.

Startseite inplace-hamburg.com

Startseite inplace-hamburg.com

Startseite Inplace-Development.de

Startseite Inplace-Development.de

WP-ImmoMakler: WordPress OpenImmo Immobilien-Makler Plugin

knoes-immobilien.de

In Kooperation mit der Agentur Siket & Heser, Gießen, habe ich den OpenImmo Immobilen-Import und die Darstellung der Objekte für die Website von Knös Immobilien, Eltville am Rhein mit dem eigens entwickelten WordPress OpenImmo Importer Immobilien-Makler Plugin WP-ImmoMakler umgesetzt.

Das Plugin integriert sich nahtlos in jede WordPress-Installation und kann bei mir angefordert werden. Als Dienstleistung biete ich die Installation, wunschgemäße Anpassung oder auch Erstellung einer kompletten Immobilienmakler-Website an.
Füllen Sie bei Interesse bitte das Kontaktformular auf der Plugin-Seite aus.

WordPress filter hook: log and debug WP_Http requests

This WordPress filter hooks into WP_Http::_dispatch_request() to write all request and response details into a logfile.
It logs all HTTP requests (GET, POST, HEAD) that are sent and received by the WP_Http class, e.g. explicitly via $wp_http_object->request() or via wp_remote_request() or wp_remote_get() or wp_remote_post() or wp_remote_head().
The hook is useful for logging while debugging WordPress plugins that connect to other servers.

See also:
WordPress Plugin API Documentation: Filters
WordPress Function Reference: add_filter

Set a custom HTTP User-Agent in Perl with WWW::Mechanize

This is how you can dynamically set a custom HTTP User-Agent for your Perl requests to fake a device or browser for testing purpose or getting a device-specific version of a website.
WWW::Mechanize supports setting a custom user-agent with the constructor and after this gives a choice of 6 pre-defined basic user-agents ( $mech->agent_alias() ), only.

The following code demonstrates how to dynamically change the user-agent on a Mechanize object.