Archive for the ‘Developers’ Category

API WRITE Endpoints are Now Available in Event Espresso 4 Core

Last week was a great week for the Event Espresso REST API – we have just released new API WRITE endpoints with create, update and delete functionality. The new WRITE endpoints make it easier to create new features and integrate with third-party services and applications.

Event Espresso 4 - API WRITE Endpoints

Easier to Create New Features

With WRITE endpoints in the Event Espresso 4 REST API, developers will find it much easier to create innovative new features for Event Espresso. In fact, we are already starting development of recurring events, and are close to releasing a beta version of the Waiting List Manager. Both of these add-ons wouldn’t be possible without the REST API.

Opening Doors to Innovation and Integration with Third-Party Services

The WRITE endpoints of the API open the door to integration’s with many third-party services. For example, developers can create software running anywhere, in any language, to create events, registrations, and transactions via the REST API, instead of being limited to only doing so from the WordPress admin or a custom plugin. With READ endpoints you can sync data from Event Espresso to other applications, but now with WRITE endpoints you can sync data from other applications TO Event Espresso.

(more…)

Posted in Development, API, EE4, Developers | No Comments »

Have You Seen Our Third-party Add-ons Page?

Have you seen our Third-party Add-ons page? If not, check it out! We have a lot of talented people in our community, so we created a place where they (you) can show off the products they have created for Event Espresso. Our Third-party add-ons page is full of solutions like Video Tutorials, an SMS Reminders add-on, a Learn Dash integration add-on, as well as themes that work well with Event Espresso.


Third Party Add ons for Event Espresso


 

If you are interested in adding your own plugin or theme to this page, you can fill out the application form here, and we will respond as quickly as possible.

Posted in Addons, WordPress Plugins, EE4, Developers, Themes, Event App, Event Marketing | No Comments »

5 Tips for Contributing to Open Source Software like Event Espresso

Many good software developers struggle and become frustrated when contributing to open source software. That’s because the skill set required for contributing to open source software is different from that required for writing closed source software.

5 Tips for Contributing to Open Source Software like Event Espresso Graphic

About three years ago we decided to put our flagship WordPress plugin, Event Espresso, on Github in order to facilitate community contributions. It has always been open source (meaning the code that runs it is viewable by anyone who downloads it), but that made it much more accessible for contributions. Since then we have received numerous pull requests (requests to have code added to it), but not all contributions were ready. The purpose of this post is to help software developers better understand how to contribute to Event Espresso, WordPress, or any open source software. (more…)

Tags: , ,
Posted in Addons, Development, WordPress Plugins, Open Source, Tips & Tutorials, Developers | No Comments »

2016 WordPress Hosting Survey

TL; DR
We want you to take our 2016 Web Hosting Survey (below).

Siteground - web hosting survey featured image

Siteground’s Jenga game

When we asked the Event Espresso community if they love their hosting company in our 2015 web hosting survey, the responses we received were somewhat enlightening. As far as Hosting Support, Server Uptime, and Hosting Features were concerned Siteground clearly came out on top. While WP Engine put up a great fight, they came in a very strong second place. InMotion did pretty well overall, coming in third.

Over the years I’ve had the pleasure of meeting many members of their respective support and development teams in real life. We’ve played oversized Jenga games, shared meals and talked shop with many of these folks at many WordCamps over the years.

Not only do all three of these web hosting companies come highly recommended, but they’re all really nice folks. I’ve seen first hand that they truly love their customers and the WordPress Community.

Are You Happy With Your Web Host?

Take the 2016 Web Hosting Survey!

Now the time has come to ask once again, who has the best web hosting in 2016?
(survey ends May 9, 2016)

This survey has expired.


Disclosure: This post contains affiliate links, which means we may receive monetary benefits if you make a purchase after clicking one of the links.

Save

Tags:
Posted in WordCamp, Development, Developers, Hosting | No Comments »

Event Espresso 4 REST API Add-on Now Available

Earlier this year we announced we started work on the EE4 REST API addon. Well its ready-for-use and now bundled with Event Espresso 4 core!

We’ve reached the first milestone which provides read access to all EE4 data. That means you can build client-side Javascript code, mobile apps, and programs  in any language (and on any server) that can read data used in Event Espresso 4.

So what’s great about the EE4 REST API and what can you do with it? Here’s a start:

  • Unlike its predecessor, the EE3 JSON API, this addon is compatible with Event Espresso 4 (not Event Espresso 3)
  • It’s built using the WordPress REST API (aka WP API). That means many plugins that work with the WP API work with it too. WP API gives the EE4 REST API a solid foundation by handling authentication, providing endpoint discovery, and supplying lots of the “behind-the-scenes” code.
  • It provides read access to all Event Espresso 4 data: events, tickets, datetimes, registrations, custom questions and answers, payment methods, and configuration data. Even Event Espresso 4 addons’ data, like from the Mailchimp Addon or the People Addon, is available by default. If we’ve missed something tell us in the github issue tracker!
  • It uses Event Espresso’s models system for querying the database. This gives API clients nearly as much querying abilities as server-side plugins. Here are some of the crazier queries we thought of: (more…)

Posted in Home Page, Addons, Open Source, API, EE4, Developers | 8 Comments »

Third-party Add-ons Directory Launched

third-part-addonsGreat News! We’ve recently launched a new Third-party Add-ons directory on our website. So now Event Espresso 4 customers can explore an ever growing selection of plugins, and themes from third-party developers.

TL;DR

Be sure to check out the new Third-party Add-ons directory! If you’re a developer, the EE4 Github repo is now public, be sure to submit your add-ons.

Short Backstory About Our Event Ticketing & Registration Framework

As we were building out the Event Espresso 4 core event ticketing and registration framework for WordPress, we took extra time to make sure it was as extendable, and scalable as possible. With many hours of  very careful planning, and development, we were able to build in hundreds of action hooks, and filters throughout the core Event Espresso 4 codebase. Therefore exposing an enormous amount of data, and WordPress accessible endpoints throughout the EE4 framework. Leaving Event Espresso 4 wide open for developers to build great new extensions, and features on top of.

Exciting, right?

Get Noticed!
Developers submit your add-ons to our Third-party Add-ons Directory.

The Directory

Well, as time progressed, we started seeing more and more developers getting involved, and asking about promoting their theme’s, and/or plugins somewhere on the Event Espresso website. However, we didn’t really have a place for developers to promote their new extensions. So, I went ahead and built a small directory for third-party developer’s to promote their add-ons.

The add-on directory has actually been available for a while, but I got busy with WordPress security updates, testing and documenting new features (Multiple Event Registration and Promotions), and never got around to telling anyone about it, until now.

What add-ons are we launching with?

So far I’ve added three popular themes, two gateways, and a plugin integration.

Also, it’s TOO EARLY to promise anything right now, but it sounds like there might be an integration with a popular affiliate plugin, and maybe even a redesigned calendar widget. So be sure to keep your eyes peeled for new stuff from other third-party developers.

third-party-addons-page

 

Public Github Repository Now Open

OctocatIn other news, we’ve recently opened up our Event Espresso 4 Github repository to the general public. Since then we’ve seen an influx of new developers, who are starting to build exciting new integrations for Event Espresso 4. Any developer with an account on Github.com can now download and install the EE4 Core Plugin on their development sites, without having to purchase a support license. This means that WordPress plugin and theme developers can now build add-ons for EE4 much faster than ever before.

Calling all WordPress Plugin & Theme Developers

Say what!?!? Did you hear the great news above, about our Github repository going public? And now you want to know how to get started developing add-ons for Event Espresso 4, right?

Start learning about developing for Event Espresso on our Developer Resources page, right away!

Submit Your Add-on!

Submitting a new add-on to our repository is easy, and will help your add-on get noticed by thousands of Event Espresso customers. Just fill out the form at the bottom of the Third-party Add-ons page to get started.

Have an idea for an add-on?

If you have an idea for a new feature/plugin/theme, or are currently developing an add-on to integrate with Event Espresso 4, please be sure to post about it in the comments below, or use the Github Issue Tracker to let us know.

We are look forward to seeing what you will come up with next!

Tags: , , ,
Posted in Home Page, Addons, News, Technology Partners, EE4, Developers, Themes | No Comments »

Developers Corner: Datetime System improvements coming with (tentatively) EE 4.8

Hey folks, there are some significant improvements coming to the EE4 date and time system with Event Espresso 4.

Note, these improvements will impact any custom code and/or third party add-ons that utilize the Event Espresso Datetime system.  So developers will want to take note of them and prepare your code for these changes as soon as possible.

Summary of Changes

As we improve systems in Event Espresso 4, our goal is to make them simple, clear, and as flexible as possible; these datetime improvements do just that. Here’s a summary of these improvements, but please see the Important Changes to EE_Datetime System coming to EE article on the Developer Portal for complete details:

1. Dates continue to be saved in the database in mysql format (Y-m-d H:i:s) and UTC+0.  Nothing changes there.

2. Dates live within the models and model objects as PHP DateTime objects.

3. Any unixtimestamps coming into the EE Date Time system are considered to be a true unixtimestamp (time()) and not a timestamp with the calculated offset that current_time('timestamp') provides.

4. Formats are now required for when instantiating EE_Base_Class objects with date time strings that are not a unixtimestamp.

5. New helpers are available for setting up strings for date related queries.

6. New EE_Base_Class helper for displaying localized date.

7. Extensive unit test coverage

When will these improvements be released?

Right now all the changes are found in the FET-3456-promotions-spco branch of Event Espresso 4.  This branch is currently available on our Pre-release Channel (prc) (sign up via your account page) for those who wish to try it out.  We strongly encourage developers to checkout the branch via github and make sure any of your custom code and/or custom add-ons work with the new improvements.

For existing Event Espresso 4 users, we have already updated all our core add-ons that are impacted by these improvements so they work both with the current datetime system and the new datetime system.  So you should see no impact when we release this on the stable channel.

Have any questions or feedback? You can leave a comment below, post in the forums, or even create an issue in Github.

Posted in News, Development, EE4, Developers | No Comments »

Do You Love Your Hosting Company?

event-espresso+heart+digital-ocean

We all remember the first website we built; or if you’re building your first website now then you won’t forget it. I wish someone would have shared their hosting experience with me long ago so that we could have avoided some of the challenges we’ve had trying to find the right hosting for Event Espresso and Event Smart. In light of sharing what we’ve learned, here is our website hosting journey. We hope you will share your hosting story too so other people can learn and have a better experience.

The success of my business is largely dependent upon my websites remaining operational and performing well. If a site doesn’t perform well, it brings in less revenue, revenue that is used to pay the hosting bill, the team salaries, and more. With so much riding on the performance and reliability of the sites, it only makes sense that the platform I choose to host my sites on is one of the most important decisions I can make for my business. If the sites consistently have troubles due to the hosting infrastructure, the business will suffer.

Pippin on You should love your hosting company.

Our Hosting Journey

Everyone seems to have a story about their website hosting company. Either you love them, hate them, or have dated them all. This is our brief hosting story.

Chomping at the bit with HostGator

We began our hosting with HostGator because Seth had a reseller account that he used for his freelance clients. Event Espresso began like any other new project (boot strapped) so we didn’t spend a lot on hosting. We wanted to prove we had a good idea and that we could pay our bills before investing in unnecessary infrastructure. Over time, we needed additional processing power so we grew from a virtual machine to a dedicated server. The power of a dedicated server was sufficient for a time. However, HostGator eventually had a lot of service interruptions (sometimes for nearly a full day). I think we were paying less than $200 per month for a dedicated server with the technical specifications we needed, but the service up-time was falling. The interrupted service cost us far more in lost revenue than it cost in hosting fees. We knew we needed to find a better, more reliable host…

Trial and Error by FireHost

At the same time that we started looking for a new host for Event Espresso, we knew we wanted to choose a host with the infrastructure that could support Event Smart. We knew we would need firewall protection, scalability options, redundancy options, etc.

We knew of a specialized “WordPress hosting” company that used the FireHost infrastructure as their core service, so we thought it would be a good fit for our needs. We signed for two servers with FireHost: one for EventEspresso.com and one for EventSmart.com. For both servers, our hosting fees went from $200 per month to about $900 per month. We kind of expected those fees for a more scalable infrastructure, but we also expected things to work better than they did. For the most part, EventEspresso.com worked alright with FireHost. But we had a LOT of problems with the FireHost WAP (web application firewall) and WordPress multisite while trying to build EventSmart.com. We even tried their Advanced WAF but it didn’t work well enough either. In order to give us the service level we needed, FireHost was going to have to buy a new WAF appliance and charge us an additional $1,500 per month. So our hosting fees were going to go from $200 with HostGator to $2,500 with FireHost, and that’s even before we started scaling servers and building in redundancies. FireHost clearly was not going to work for us.

Learning to Swim in the DigitalOcean

Our experience with FireHost taught us a lot. We better understood our needs (especially for Event Smart), and we better understood the server management side of hosting (not the hardware). At this same time, a more simple cloud hosting service began called DigitalOcean. DigitalOcean is designed for developers who want or can manage their own servers. They keep things simple in that they limit most of their responsibility to keeping the server on and the datacenter secure. Users (we) are responsible for server configuration, WAF security, server updates, etc. (and I have to say Darren has done a great job at learning and handling this transition). They also use SSD disks which are usually faster than standard disks. This means that we can spin up a new server for as little as $5 – $640 per month. This gave us the option to control the server configuration, firewall protection, etc. for as little as $5 per month. And, if we wanted the top-rated plan it would still be less than it cost with FireHost!

This became a win-win for us. We now have more autonomy, higher up-time, built-in redundancies (especially for Event Smart) and more scaling options than we ever thought we would. We now run 10 VPS servers for less than $200 per month! We have individual servers for testing sites, EventEspresso.com, internal blogs, several servers forEventSmart.com (redundant databases with Hyperdb, etc.), servers just to collect and store backups, etc.

Needless to say, we love Digital Ocean! There have been small hiccups here and there (a few internal network interruptions), but these interruptions have been only momentary inconveniences. We HAPPILY use DigitalOcean to host EventEspresso.com and EventSmart.com (our cloud-based SaaS event registration and ticketing platform). We don’t claim to be server experts, but for the most part we don’t have to worry about the interruptions or cost that existed with our prior hosts.

Note: HostGator and FireHost may have improved their services since we were customers. You are welcome to try (or continue to use) their services.

Share your hosting story

Using a host you LOVE or HATE? Want to share your website hosting story with others? Please fill out this survey and we’ll share the results in a future blog post OR use the comments section below to go into detail.

Tags:
Posted in Open Source, Technology Partners, Developers, Hosting | 5 Comments »

Developer’s Guide to Payment Methods for Event Espresso 4.6+

Welcome! Let’s take a brief look at the payment methods as of Event Espresso 4.6.

In the Beginning…

In the old days of Event Espresso (EE3), all of the “payment gateways” (as we called them, then) were included in the core Event Espresso file system, which made the overall file size rather large and unwieldy over time. Some gateway folders ended up weighing in at around 2 – 3 megabytes each!

One of the many reasons we rebuilt Event Espresso 4 (EE4) from the ground up, was to make the gateway system more modular. So, in the beginning, we decided to build a simple payment gateway interface, that included only four of our most popular online payment gateways from EE3.  This approach allowed us to ship a working product, or rather a Minimum Viable Product (MVP), while allowing our developers time to fine tune Event Espresso and rebuild the entire gateway system.

Get Noticed!
Developers submit your add-ons to our Third-party Add-ons Directory.

Fast Forward to Event Espresso 4.6

We’ve now finished the “Gateway Rewrite”, or GWRW as we called it, in Event Espresso 4.6 and things are looking pretty sweet for Event Espresso gateway developers. We are now taking the approach of renaming “payment gateways” to “payment methods” in Event Espresso 4.6.

Payment Methods are now modular, and can be developed as an Event Espresso add-on. This allows us to keep EE4 core code and files lightweight, while providing our developers, as well as any third-party developers more flexibility to add new features, without lots of bloat.

As of  Event Espresso 4.6, developers are now invited to start developing new gateways, by following our in-depth payment method documentation.

Getting Started!

Ok, so you’re ready to build your own payment method? Head over to the EE4 Payment Method Development page on our developer documentation website.

Don’t forget, in order to give you a head-start, our developer’s have created an Add-on Skeleton that has  two working payment methods in it: one onsite and the other offsite. Of course neither actually communicates with a Payment Gateway, that’s what you’re going to do by following our gateway documentation!

The skeleton add-on is located in the event-espresso-core/tests/mocks/addons/new-payment-method. Currently the “tests” folder isn’t included by default in order to reduce plugin size, so you’ll need to get it from our github repo.

How Does the New Payment Method System Work?

In Event Espresso 4.6+, payment methods are PHP classes and associated files that take care of accepting payments from customers. They  define a form for its settings, possibly a form for billing information which can be displayed during Single Page Checkout, and possibly a gateway class which takes care of communicating with a payment gateway (eg Paypal.com) to actually transfer funds from the customer to you. They fall into 3 general categories:

  • ONSITE (where the customer enters their billing info directly on your site, and your site transfers billing data to the payment gateway directly),
  • OFFSITE ( where the customer is redirected to the payment gateway, enters their billing info, and then returns to your site afterwards), and
  • OFFLINE (where payment is marked to occur offline without a separate payment gateway).

Payment methods are more narrow in scope than EE Modules, and are generally placed in an EE4 Add-on. If you are building your own Payment Method as an add-on, please feel free to use our sample “New Payment Method” Add-on. For details, see the section Using the New Payment Method Add-on Skeleton section of our documentation.

What’s Next?

So, you’ve created a new gateway, and now you want to release it to the Event Espresso 4 community? First you need to decide if you want to sell and support the gateway, release it for free with limited support, or just keep it to yourself. Here’s some helpful tips on where to go next:

  • Selling & Supporting Your Custom Gateway – The best option is to list the plugin for sale on your website, using a shopping cart system, such as Easy Digital Downloads or eJunkie. Once the plugin is available on your website, please let us know so we can list it for you.
  • Release for Free With Limited Support – There are a few possible options. The easiest is to just release the plugin on Github. If you want other Event Espresso and WordPress users to find it easier, you can post it on WordPress.org plugin repository. Once you’ve uploaded it to one, or both of these locations, please let us know so we can list it on our website for you.
  • Keep it to Yourself – This is by far the easiest option, but no one else benefits from your hardwork 🙁

Wrapping Up

We hope that our gateway documentation works as a helpful guide to incorporating your own payment methods in Event Espresso 4. If you have technical questions, please feel free to post in our support forums. Developers with access to Event Espresso on Github can post questions there.

Tags: ,
Posted in Home Page, Development, EE4, Developers, Payment Methods | 3 Comments »

Do NOT follow this link or you will be banned from the site!