I AM LISTENING TO
|
WHAT I LIKE
  • en
  • de
BLOG FILTER

Using WordPress as a headless system, is nothing new. You can easily build out your own REST API or use the long available HTTP REST API 1.0+ for WordPress.

But with the new HTTP REST API 2.0+ its getting really easy to build out your own REST API Namespace and assign routes for all your JSON needs.

The new REST API will make its appearance in WordPress 4.4, but you can start now by adding the plugin to your system. When the plugin detects 4.4+ it will only load functionality not already present in the core.

A ROUTE

A route tells the API to respond to a given request with a specific function (endpoint). This adds the permalink structure to WordPress so that your functionality can be accessed via an url like this: http://yourdoman.com/wp-json/yourplugin/v1/myfunction/your_parameter 

THE ENDPOINT

The Endpoint is the callback handled by the route. Each endpoint can have additional parameters attached:

  1. custom permissions
  2. default values
  3. sanitization callback
  4. validation callback
  5. field requirements and more

RETURN VALUE

The return values from the endpoint are converted into JSON. You can use the WP_REST_Response object , this wraps normal body data and allows you to return a custom status code.

Really powerful stuff, that makes it easy to detach WordPress and the actual client using the data provided by it.

You can read more about it here.

Enjoy coding …

readmore

Flarum is new elegant next-generation forum software. It provides a touch optimized two pane layout with floating composer.

The backend runs on PHP/MySQL.

Flarum

readmore

Javascript Error tracking is becoming more and more important, with applications moving to the client. Many service providers already offer a variety of extensive error tracking solutions for a price. These providers help to get around browser limitations and get the most out of errors.

Depending on your budget, that might not always be an option and not always needed.

To the rescue comes ErrorBoard, that provides a basic interface to track window.onerror events. Requires Node.js, NPM and a free port.

Here the window.onerror,  how I set it up for now:

Enjoy coding …

readmore

This often comes up, when you work with jQuery and try to do a simple $(“#YourElementID”).trigger(“click”); or similar.

Enjoy coding …

readmore

This video should give you a good idea what the addon can actually do.

In my last article I gave you a rough overview of the features & requirements. Here some more details and additions:

  1. Added the fixed header & footer container to the admin interface. You can add special padding, to the top and bottom, through the fullpage settings and make room for them. These are standard content containers, that can hold any Visual Composer content or row setup.
  2. Added automatic menu, which adds links to each section as they are created. Link title matches the section title.
  3. Define section and slide anchors, which are reflected in the browser history.
  4. Sections and Slides can have different backgrounds, providing nice effect options. I added an image background to Section 1 and semi-transparent background colors to the Slides.
  5. Fullpage.js configuration is fully integrated and working. The system sets defaults for a quick start.
  6. Fullpage.js CSS override has been added, but is not complete yet. Added code editor.
  7. Fullpage.js Events have been added and are fully functional. These events are triggered after load, after slide load, after leaving a slide and other events.
  8. iScroll can be seen in Section 2. Added resize handling and configuration options. Still need to do some minor tweaks.
  9. iScroll custom scrollbars are on my list, but not sure I will add these yet.
  10. Prebuild Templates will be added, so that you can quickstart your design. Visual Composer 4.5+ provides some nice new options.
  11. Visual Composer requirement will be 4.5+.
  12. The admin provides a nice color separation for all components and count for slides & sections.

The addon is mostly done. I am finalizing the main admin area this week and will do a final cleanup next week, for the first beta release.

Many people have asked me for a release date. I currently plan to have a fully working Beta in the next 2-3 weeks. Will offer the Addon to a small closed group of customers first, before I think about other release options. I think I will offer between 20-30 slots for the beta run. If you are interested let me know.

Regards
Alexander

Updates

  1. Quickly choose which section / slide to load, when the page is opened.
    cubicFusion_VC_Fullpage_Bchoose
  2. The addon is injecting its own page template, to make sure that the main container is clear of any theme related margins or padding. As soon as the Fullpage container is added to the layout, the template gets selected dynamically.
  3. 21.06.2015 – updating to latest fullPage.js version (2.6.6) and adding new options and changes
  4. 13.08.2015
    – beta has been delayed due to my vacation & an accident I am recovering from. This is still just a side project ;)
    – updating to latest fullPage.js version and adding new options to admin
    – updating to latest Visual Composer version
  5. 03.09.2015
    – moving to Visual Composer 4.7
    – finalizing the admin area
  6. 14.01.2016
    – moving to Visual Composer 4.9x
    – fullpage.js version update
    – iScroll update
    – admin /front-end cleanup … getting close :)
  7. 17.02.2016
    – works pretty flawless by now
    – plugins are updated
    – admin complete, working on some minor cosmetics
    – not sure yet about distribution :) … my current projects come first!
  8. 07.03.2016
    – adding version / requirement checks for all linked libs
    – moved to VisualComposer 4.10
    – fullPage.js version bumped to 2.7.8
    – final cleanup of all areas on the way

readmore

How do I choose the right JavaScript framework for my next single-page application project?

A question I have asked myself over and over again.

There are countless options these days, that claim to be the ultimate solution to all our developments needs.

USED BEFORE

I have build applications with

  1. Angular
  2. Backbone
  3. Ember.js
  4. Knockout
  5. Ampersand.js
  6. Rivets

TRIED BEFORE

I have looked at

  1. Polymer
  2. React
  3. and many other solutions out there.

And I seem to be evaluating new options every week :)

ANSWERS ?

The only answer I can give you is that :

  1. None of them will fit any of your projects perfectly.
  2. None of these will cover all project areas to your personal satisfaction.
  3. None of these will prevent you from errors and the need for unconventional solutions.

In the end its a matter of personal taste and project requirements. We only have limited resources to finish a project and find solutions to unsolved problems in a timely fashion (yes this always happens). Go out and play :) Also take  a look at TodoMVC, which might help you to decide. No guarantees !

Over the past few month I have evaluated all the things that I used in the past. I  started stripping it all down to a bare set of essentials, that have been following me for a long time. There are solutions that just fit and require no replacement.

GOING SOLO

So my answer for the perfect framework, is a set of solid singular solutions that have proven themselves over the years. Working solo or together in harmony.

 Like a painter I want to choose my own brushes and color mixture. Programming is an art that needs freedom.  A freedom that can often be limited by a too strictly defined framework. Structure is important, but it should never dictate the options you have to fulfill your project goals and limit you.

I will be covering some of those tools here in coming articles.

I will talk about:

  1. MVC
  2. DOM manipulation
  3. Templates
  4. Data-Binding
  5. Directives
  6. Routing
  7. Observables for Arrays and Objects
  8. Modules
  9. Dependency Loading
  10. Utility solutions

…enjoy coding

readmore

When the defer attribute is present in the script tag, it specifies that the script is executed when the page has finished parsing. A requirement that is enforced by Google for example (Page-Speed ranking).

Currently the WordPress wp_enqueue_script provides no easy way to add new attributes, but there is a way around that :)
The below hack / filter needs to be added to your theme function.php. The filter should be your preferred solution, as the clean_url filter has been deprecated.

Make sure that your website / theme is still loading after adding these changes. If needed you can add more exceptions, as I did for jQuery.

Hack for WordPress before 4.1

 Filter for WordPress 4.1+ 
Updated: 26.04.2015 – using clean Regexp

 Browser Support

  1. All modern browsers
  2. Support in IE9 is flaky, as the execution order isn’t guaranteed.
  3. Can I use

readmore

Compressing your content saves bandwidth and improves render time, particular on devices with slow internet connections. Compression allows your web server to provide smaller file sizes that load faster for your visitors. Compression of your HTML and CSS files with gzip typically saves around 50 to 70 % of the file size.

Check if GZIP Compression is active on your website

  1. HTTP Compression test
  2. Check GZIP Compression

Adding GZIP Compression via your htaccess (Apache)

Adding GZIP Compression on NGINX

Adding GZIP Compression via a WordPress Plugin

A good candidate is the WP Far Future Expiration Plugin ,which not only activates GZIP compression but adds file expiration for various static file types.
Link

Check speed improvement before and after

  1. GTmetrix
  2. Google Pagespeed
  3. Pingdom Tools
  4. YSlow

readmore

As part of our complete network upgrade, portalZINE.TV gets a complete facelift as well. The whole website has been streamlined in preparation for the new season.

portalZINE TV

readmore

“Holland America Line Reisprofile Test” provides an interface for customers to find out which cruise type they are.
By sliding the images you are choosing your preferences and define your cruise type, which allows you to get an individual set of cruises sent to you.

readmore