• Skip to primary navigation
  • Skip to main content
  • Skip to footer
  • Store
  • Support
  • Theme Documentation
  • My Account
  • Cart

9seeds

Building Custom WordPress Solutions | Plugin Development

 
  • Custom Development
  • Themes
  • Plugins
  • About
  • Contact
  • Blog

News

Updating WP Chargify: Revisiting a Custom Plugin Built Long Ago

Posted on May 13, 2015

chargify-wp-cover

5 years ago, Jason Glaspey came to us wanting to use Chargify to manage recurring subscriptions for his paid members. At the time there was no plugin available for WordPress to connect with Chargify. Jason hired us to build a custom plugin for his specific needs. He also generously allowed us to make it available for free to all on the WordPress Plugin Directory.

Over the years Chargify has made lot of changes to their service. While Jason had sponsored the original plugin he moved on and the plugin sat idle for quite a while. Chargify recognized the importance of the plugin being updated and reached out to us to do a complete overhaul.

We were excited to take on the project. It was great to be given the opportunity to revisit code we wrote so long ago. We were able to update the plugin with all the latest Chargify features as well at the latest best coding practices.

Chargify was delighted with the results and wrote a nifty post on it where you can read about all the new functionality here.

Thanks to 9seeds great work on our plugin, using WordPress and Chargify together has never been easier!” ~Britton Gwaltney, Chargify – Director of Sales

Building custom plugins for hire like this is one our favorite services. If you need a custom plugin developed or just need to streamline a function please contact us! We’ll be happy to help you, too.

 

Continue Reading

elena

    More by elena

    Finding Work/Life Balance as a Remote Worker

    Posted on June 12, 2014

    We’ve all said it 1000 times, “I love what I do because I can do it from anywhere.” It’s the dream of pretty much every developer… travel the world and work from exotic locations. But if you’ve ever tried it, you’ve probably figured out that it’s a LOT of work.

    At 9seeds, we all work remotely. Most of us work from home offices, co-working facilities or the occasional coffee shop. But, one of the guys on our team, Jon Brown, just spent 4 months traveling the globe and working along the way. Other than some challenges with scheduling times to chat, you’d almost not have noticed he wasn’t sitting at home working.

    This past weekend at WordCamp Orange County, Jon gave a talk where he discussed finding the work/life balance as a remote worker. It was a great session and made me realize two things; 1) It IS a lot of work, 2) It sounds like the hard work is absolutely worth the effort!

    Continue Reading

    john

      More by john

      Finding Focus

      Posted on June 2, 2014

      In late December we were wrapping up our biggest quarter to date as a company. As we all took some time off for the holidays, it gave us time to take a serious look at the product side of our business. We had a small number of premium plugins that we made available for sale, and several other free plugins that we were also maintaining. As we headed in to the new year, we wanted to make sure that our time and energy was being spent wisely. As I’m sure you can relate to, when we pulled back the curtains, we realized that we were definitely spread thin.

      When you’re evaluating what projects to keep and which to kill, you have to take a lot in to consideration. Income, potential income, investments in both time and money, and one of the most important elements that I think we lost sight of, personal interest in the project. Even though we were working hard one of our projects, our passion for the product itself, just like Elvis, had left the building.

      Throwing away a lot of work
      In early February we made a decision that should have been made much earlier. We decided to stop developing the WP Event Ticketing plugin. The finial decision was easy to make. Getting to the point of making the decision wasn’t as easy.

      We had spent countless hours over the previous 2-3 years building the plugin, including a complete rewrite that we’d been working on for much of the past year. The thought of throwing that all away was painful. So painful that it kept us from making the final decision for more than a month after we already knew what the right thing to do was. But then…

      Revelation time
      Have you ever gone to bed thinking about a problem and had the answer hit you so hard at 3 in the morning that you sit bolt upright in bed and shout, “Booya, Bitches!” OK, maybe that’s not what you shouted, but I’m pretty sure that’s what I shouted.

      I was forced awake with a single thought:

      Every minute we spend writing code, answering a support ticket or even thinking about the Event Ticketing plugin is one more minute that we are not focusing on our clients or the other products.

      That was it. The switch had been flipped. When I got to my desk I made the, now very easy, call to shut it all down. It felt like a weight had been lifted.

      You’re never done cleaning house
      That moment of clarity has come in handy a few times since then. But none more so than when we received an email asking if we would be interested in selling the WP Affiliate Manager plugin. Honestly, it wasn’t something we had given much thought to. But here we were faced with an opportunity to narrow our focus once again.

      Previous to 9seeds, I spent a decade working for a company that made the bulk of it’s income from affiliate marketing. The affiliate plugin seemed like a natural fit for us to build. But, affiliate marketing isn’t something we do much of these days, so there has been a decline in the amount of energy we’ve put in to the affiliate plugin recently. After some serious consideration, we came to the conclusion that selling WP Affiliate Manager was too good an opportunity for everybody involved that we simply couldn’t pass it up.

      The new owners have a list of short and long term goals for the product that will breath new life in to it. We are excited to see where they take it.

      Time to focus
      As I’ve mentioned in previous posts, Time Tracker is a product that I use literally every single day. It’s a tool we use internally for tracking time we spend working on client projects. We have a nice long list of features and enhancements that we want to add to the plugin. With the sale and transfer of Affiliate Manager complete, I’m thrilled for the additional time that we’ll be able to dedicate to it.

      One question we get asked a lot regarding Time Tracker is if there is a demo of the product they can try out before they purchase. It feels really good to finally be able to answer Yes! You can head over to http://timetrackerdemo.com/ to try out the plugin.

      If you have any questions or feature requests regarding Time Tracker, we’d love to hear from you.

      Continue Reading

      john

        More by john

        Time Tracker version 1.5.2

        Posted on February 8, 2014

        I was surprised to see that it had been more than 3 months since the last time I wrote about Time Tracker. That’s a shame because there’s been a lot going on with the plugin. Since last I wrote we’ve released 5 updates with a whole bunch of new functionality. Here’s a list of what’s new in Time Tracker.

        • Create/save invoice for hours worked
        • View/delete past invoices
        • New tabbed settings page
        • Option to send an email to site admin when new hours are entered by contractors
        • Option to display all projects to contractors (rather than on a case-by-case basis)
        • Summary of hours by contractor on ‘Create Invoice’ page
        • Default projects created when new clients are added

        We’ve been getting some great feedback from our users and we’ve got a number of features in the works. If you’ve got a feature you’re looking for, let us know and we’ll get it on the list.

        And if you haven’t done so already, purchase your license here.

        Continue Reading

        john

          More by john

          End of Life for Event Ticketing

          Posted on February 5, 2014

          It started with a question. I asked Justin, “Are you still excited about working on Event Ticketing?” He didn’t even have to answer. When it took him more than 2 seconds to answer, I knew he was looking for the right way to let me down easy.

          We spent the next 30 minutes talking about it, trying to rationalize keeping the plugin around. But ultimately, I explained it like this: “At the moment, the Event Ticketing plugin is a mediocre product. Since you are the person doing 90% of the development, if you aren’t excited about the project, there is no way we will ever make the plugin anything other than mediocre.”

          And with that, be both knew what we had to do.

          Today we are announcing the End of Life of both:

          – WP Event Ticketing (version 1.3.3)
          – Event Ticketing for WP (version 2.0.1)

          We did not make this decision lightly. It’s actually been on my mind for the past couple months. But after an increase in support requests starting coming in and the realization that it could be weeks or even months before we could get a couple key issues fixed, the writing was on the wall and I knew it was time to pull the plug.

          If you’re a developer and you would like to pick up where we left off and get Event Ticketing ready for prime time, the code can be found on github.

          Genesis Simple Headers

          And while we’re killing of plugins, he have also decided to remove Genesis Simple Headers from the WordPress repo.

          This plugin was something I wrote quickly to serve a very narrow purpose. I released it thinking “hey, maybe this will be useful for a couple people.” Then it was downloaded more than 30,000 times. Yikes!

          We finally decided to remove it thanks to two key factors;
          a) StudioPress started adding the header functionality to the bulk of their new themes
          b) With the release of Genesis 2.0, it would take a sizable amount of work to make GSH compatible

          With less themes needing our plugin, spending the time to fix the plugin’s issues just seems silly. So by having the plugin available in the repo, we’re causing frustration for new users.

          What about current users?

          If you’re currently using one of the plugins above without issue, our decision to stop development will not affect you immediately. Your current plugin will not automatically cease to function. However, as WordPress continues to release new versions, there is no guarantee that the plugin will continue to function and you may need to seek an alternative solution.

          Continue Reading

          john

            More by john
            • Prev
            • Page 1
            • Interim pages omitted …
            • Page 3
            • Page 4
            • Page 5
            • Page 6
            • Page 7
            • Interim pages omitted …
            • Page 13
            • Next

            Footer

            Get in Touch

            • New Project Inquiry
            • Product Support and General Inquiry
            • Store Purchase Terms and Conditions
            • Store FAQ
            • Cookie Policy
            • Privacy Policy

            Our Services

            • Custom WP Development
            • Theme Store
            • Plugin Store

            WordPress Plugins for Sale

            • Time Tracker
            • Authorize.net SIM Gateway

            WordPress Plugins for Free

            • Simple Calendar
            • WP Chargify
            • Facebook
            • Twitter
            • LinkedIn
            • WordPress
            • GitHub

            Copyright 2025 | 9seeds, LLC

            Like nearly all websites this one uses cookies too. Like most users we think consent banners like these are a dumb solution, but it's what we've got until new laws are passed. We use cookies on our website for remembering your preferences, for example if you're logged in or what is in your cart. We also use 3rd party cookies for analytics so we know what pages on the site are most popular. By clicking “Accept”, you consent to the use of ALL the cookies.
            Do not sell my personal information.
            Cookie SettingsAccept
            Manage consent

            Privacy Overview

            This website uses cookies to improve your experience while you navigate through the website. Out of these, the cookies that are categorized as necessary are stored on your browser as they are essential for the working of basic functionalities of the website. We also use third-party cookies that help us analyze and understand how you use this website. These cookies will be stored in your browser only with your consent. You also have the option to opt-out of these cookies. But opting out of some of these cookies may affect your browsing experience and may even preclude you being able to login to the website.
            Necessary
            Always Enabled
            Necessary cookies are absolutely essential for the website to function properly. These cookies ensure basic functionalities and security features of the website, anonymously.
            CookieDurationDescription
            __stripe_mid1 yearThis cookie is set by Stripe payment gateway. This cookie is used to enable payment on the website without storing any patment information on a server.
            __stripe_sid30 minutesThis cookie is set by Stripe payment gateway. This cookie is used to enable payment on the website without storing any patment information on a server.
            cookielawinfo-checkbox-advertisement1 yearSet by the GDPR Cookie Consent plugin, this cookie is used to record the user consent for the cookies in the "Advertisement" category .
            cookielawinfo-checkbox-analytics1 yearSet by the GDPR Cookie Consent plugin, this cookie is used to record the user consent for the cookies in the "Analytics" category .
            cookielawinfo-checkbox-necessary1 yearSet by the GDPR Cookie Consent plugin, this cookie is used to record the user consent for the cookies in the "Necessary" category .
            cookielawinfo-checkbox-others1 yearSet by the GDPR Cookie Consent plugin, this cookie is used to store the user consent for cookies in the category "Others".
            cookielawinfo-checkbox-performance1 yearSet by the GDPR Cookie Consent plugin, this cookie is used to store the user consent for cookies in the category "Performance".
            Functional
            Functional cookies help to perform certain functionalities like sharing the content of the website on social media platforms, collect feedbacks, and other third-party features.
            Performance
            Performance cookies are used to understand and analyze the key performance indexes of the website which helps in delivering a better user experience for the visitors.
            Analytics
            Analytical cookies are used to understand how visitors interact with the website. These cookies help provide information on metrics the number of visitors, bounce rate, traffic source, etc.
            CookieDurationDescription
            _ga2 yearsThe _ga cookie, installed by Google Analytics, calculates visitor, session and campaign data and also keeps track of site usage for the site's analytics report. The cookie stores information anonymously and assigns a randomly generated number to recognize unique visitors.
            _gid1 dayInstalled by Google Analytics, _gid cookie stores information on how visitors use a website, while also creating an analytics report of the website's performance. Some of the data that are collected include the number of visitors, their source, and the pages they visit anonymously.
            CONSENT2 yearsYouTube sets this cookie via embedded youtube-videos and registers anonymous statistical data.
            Advertisement
            Advertisement cookies are used to provide visitors with relevant ads and marketing campaigns. These cookies track visitors across websites and collect information to provide customized ads.
            CookieDurationDescription
            VISITOR_INFO1_LIVE5 months 27 daysA cookie set by YouTube to measure bandwidth that determines whether the user gets the new or old player interface.
            YSCsessionYSC cookie is set by Youtube and is used to track the views of embedded videos on Youtube pages.
            yt-remote-connected-devicesneverYouTube sets this cookie to store the video preferences of the user using embedded YouTube video.
            yt-remote-device-idneverYouTube sets this cookie to store the video preferences of the user using embedded YouTube video.
            Others
            Other uncategorized cookies are those that are being analyzed and have not been classified into a category as yet.
            CookieDurationDescription
            cookielawinfo-checkbox-functional1 yearThe cookie is set by GDPR cookie consent to record the user consent for the cookies in the category "Functional".
            SAVE & ACCEPT
            Powered by CookieYes Logo