• Skip to main content
  • Skip to footer

nSiteful Web Builders

Building a Better Web - One Site at a Time.

  • Home
  • About
    • Testimonials
    • Resources
    • Partner With Me
    • Frequently Asked Questions
  • Web Sites
  • Online Marketing
  • WordPress Support
    • Customized WordPress Training
    • 60-for-60 Sessions
  • Web Applications
  • Blog
    • At-A-Glance
    • Blog Articles Grouped by Category
    • Case Studies
    • General
    • Portfolio
    • Reviews
    • Snippets
    • Techniques
  • Contact
    • Purchase Retainer Consulting Hours
    • About Retainer Consulting Hours
    • Book a Meeting with Jeff
    • Tell Me About Your Web Project
    • nSiteful Newsletter Archives
    • nSiteful Rewards
You are here: Home / Partner With Me

Partner With Me

By Jeff Cohan
nSiteful Web Builders, Inc.
Last Updated: December 8, 2023

This message is for fellow WordPress web developers and designers who are interested in exploring opportunities for collaboration.

Some of the best web projects I’ve ever undertaken have been collaborations with people I’d ordinarily consider competitors: fellow web designers and developers whose skillsets and interests complemented mine, and vice versa. I’d like to be involved in more such projects; hence this presentation.

We don’t (can’t) do everything.

Many of us who hang the shingle of web designer or web developer advertise bundles of services. We list among those services: marketing, branding, copywriting and copyediting, site maintenance, email marketing, search engine optimization, and so on.

As we evolve in our practices, however, both our personal interests and the natural arcs of our careers — the kinds of projects we’ve taken on, sometimes simply by the luck of the draw — lead us to specialize and seek work in some service areas more than others. Although we might leave the old shingles hanging, we’ve left by the wayside some of the skills and services advertised on them.

Successful collaborations depend on the right mix of skills and the right chemistry. My brief resume and bio may provide some clues as to what our chemistry might be, but I’m not foolish enough to think that that’s enough. What I can and will try to convey on the written page is a description of those aspects of web development that most float my boat, the things I’m “best at” and/or focus on the most. My hope is that some of you will do the same and that when we examine the Venn diagrams of our respective specialties, we’ll find opportunities to put our heads and efforts together so as to mutually benefit our clients and ourselves.

My Current Focus (What I Do Best)

I divide my focus areas as follows, in no particular order:

  1. Custom Post Types
  2. Membership Websites
  3. Advanced Forms
  4. Advanced CSS
  5. Plugin Integration

Custom Post Types (CPTs)

Once I started creating my own custom post types (together with custom fields and custom taxonomies), I started seeing — and implementing — use cases for them everywhere.

Brief Overview of Custom Post Types

Virtually everything that comprises a WordPress website is a post (small “p”) of some type. Out of the box, the two basic WordPress post types — Pages and Blog Posts (unfortunately and ambiguously named “Posts”) — are very similar. Yes, there are differences, but fundamentally they have titles, authors, and free-form content.

Whether you use a pagebuilder, the Gutenberg block editor, or the classic editor in either visual or text mode, you’re adding content into a free-form box. It’s the “free-form” nature of the WordPress editor that makes it great for home pages and lousy for other types of content.

Not every type of content should be a page or post.

Not every type of content lends itself to being a Page or a Blog Post, and this is where the custom post types (CPTs) come in. You know the examples that are most often put forth:

  • products
  • movie or book reviews
  • recipes
  • events
  • staff directories
  • testimonials
  • frequently asked questions
  • and so on

In essence, almost any type of structured content that consists of multiple data elements (in the case of movie reviews, those could include genre, release date, studio, director, actors, and so on) and that should be displayed in a consistent format is a likely candidate for a custom post type.

You’re not going to want to create a separate page for every movie you review and to remember the sequence and styling of all data elements — and to then update the master listing of movies and the navigation menu every time you add a new movie. This is where custom post types and the WordPress template hierarchy come into play and shine.

Many CPT plugins were both too much and not enough.

In my early WordPress days I didn’t hesitate to use third-party plugins for such custom post types. But the programmer in me (I had built dynamic database-driven websites in php and MySQL for seven years prior to using WordPress) soon realized and was bothered by the fact that many such plugins were simultaneously too much and not enough. By including way more functionality than I or my clients would ever use, such plugins contributed to code bloat and, what’s worse, made it confusing and difficult for my clients to use them. At the same time, some of these custom post type plugins lacked some very basic features. (Why, for example, can’t I find an FAQ plugin that has a field for “Question Summary”?)

Here’s a compilation of my blog articles about custom post types.

My Process for Creating CPTs

I originally used GenerateWP to generate the code for registering custom post types and custom taxonomies. Once I’d developed a fairly extensive library of CPT code, however, I started using the highly sophisticated (sic) method of copy-paste-replace to clone one set of PHP functions to another set.

I place my code in the /wp-content/mu-plugins/ folder.

The functions that register the CPT and taxonomies are saved in a file named in this format:
cpt-{cpt_name}.php
Example: cpt-books.php

The functions that control the front-end display of the CPT are saved in a file named in this format:
cpt-{cpt_name}-functions.php
Example: cpt-books-functions.php

I use ACF Pro for custom fields. This allows me to create simple, user-friendly forms that make it easy for my “civilian” clients to update their websites.

[TOC]

Membership Websites

If I could build nothing but membership websites for the rest of my career, I would, and I’d be a happy camper!

There are many types of membership websites, but most fall into one or both of two general categories:

  • Community Websites:
    Membership is based on common preexisting affiliations (places of worship, homeowners’ associations, alumni associations, etc.). These sites offer features typical of social networks, where members can interact with each other (like on Facebook). Content and functionality is restricted to logged-in members.
  • Content Restriction:
    Membership is based on common interests in the content and functionality of the website itself. While social networking elements may exist within these membership sites, the primary goal of such sites is to restrict “premium” content to those who have obtained membership — whether they paid for it or not.

Over the years, I’ve developed many sites of both types.

My First Membership Website Project: A Collaboration with a Colleague

The first was a hybrid (WordPress/custom) membership site for the Union Lawyers Alliance (“ULA”) of the AFL-CIO — a site I started building ten years ago in collaboration with a web designer I met on LinkedIn. It was exactly the kind of project I talked about at the beginning of this presentation and that’s a model for partnerships I continue to seek. My partner in that project, Tom, who worked and lived where the ULA was headquartered, had been invited to respond to an RFP to consolidate the ULA’s two legacy websites into one using WordPress. Tom was a WordPress designer in search of a developer. Long story short, our skillsets were nicely complementary, our chemistry was sympatico, and our joint RFP response won the contract.

WordPress Membership Plugins I’ve Worked With

Since then, I’ve used these WordPress membership plugins: s2Member, WishList Member, Ultimate Member, Directories Pro, GeoDirectory, Members, and MemberPress.

Nowadays, my go-to solution for membership websites that focus on content restriction is MemberPress. It is robust, comprehensive, and intuitive. Technical support is excellent. And the options for monetizing membership sites with MemberPress are virtually limitless. One of the most promising use cases for membership sites is the ability to offer online courses — for which I use MemberPress with its Courses add-on.

Go here for a compilation of my blog articles about membership websites.

[TOC]

Advanced Forms

Forms, and particularly advanced forms, have been a specialty of mine for some time. Before my WordPress days, I built all my forms in php and MySQL. Nowadays, in WordPress sites, I primarily use Gravity Forms, although I’ll still create custom forms in php when appropriate.

Forms are the engine that drive user interactivity on the web. We see them everywhere — they are the meat of eCommerce websites and online surveys, and simple versions of forms are common on “Contact Us” pages.

Some forms are easy to make, using basic HTML, online form builders, or plugins for platforms like WordPress. But there are other applications for Web forms — including some applications for which you might not initially think a form is the answer — that require a custom solution with custom programming.

Read about the custom Online Ordering System I built for Hayes Shutters.
Read about the Contract Generator I built for Eaton Academy.

For WordPress websites, I have been using Gravity Forms since 2013. The extensions that come with my Gravity Forms developer license and my Gravity Perks and GravityView licenses make it possible to accomplish almost anything in the area of form processing. Sometimes, however, the requirements for a particular form — even within a WordPress website — are better addressed with custom code. In cases like this, I seamlessly integrate custom forms into a WordPress template.

Go here for a compilation of my blog articles about web forms.

[TOC]

Advanced CSS

I became smitten with CSS when I discovered the CSS Zen Garden project in May of 2008. Holy cow! As someone whose first web page layout system (circa 1994) was HTML tables, I was blown away by the capabilities and promise of CSS. The evolution of web browsers and the CSS specification has only deepened my respect for the technology and humbled me in my quest to master it.

Even as WordPress page builders and the maturing of Gutenberg have made it possible to create stunning stuff, the need to understand CSS and write effective CSS markup is greater than ever. In my experience, “civilian” website owners and even some WordPress designers don’t know enough or care to know enough about CSS to solve problems they thought those WYSIWYG element setting controls would avoid.

Setting responsive breakpoints according to common desktop/tablet/phone footprints — which is how many themes, page builders, and block plugins address the responsiveness issue — is so 2012. Media query breakpoints should be based on the actual content and not on arbitrary device size assumptions. Doing responsive design correctly requires informed trial and error assisted by the latest browser developer tools.

So, despite my initial fears that page builders and Gutenberg would put people like me out of work (hyperbole, yes), the reality has been quite the opposite. A large segment of WordPress website owners still prefer the classic editor — which, after all, looks and acts like a word processor — and leave it to their web designers and developers to dress things up using their knowledge of HTML and CSS.

Go here for a compilation of my blog articles about CSS.

[TOC]

Plugin Integration

Selecting and implementing third-party plugins — even free ones — isn’t as simple a matter as it may seem.

The sheer volume of available plugins makes the selection process daunting. Then, one must consider real and potential plugin conflicts, frequency of updates, responsiveness to support requests, and the number and quality of the other plugins the authors have developed and maintain. These are factors I pay attention to constantly.

Knowing about and being able to detect plugin conflicts is one thing; integrating plugins with other plugins and systems is another thing. There’s just no substitute for extensive testing and experimenting here. For example, membership sites pose unique challenges for integrating with email marketing systems.

Think about it: A good membership system needs to communicate with an email marketing system so that website members’ statuses (e.g., pending, subscribed, expired), are automatically updated in the email marketing system. (After all, you don’t want to send renewal solicitations to active members or thank-you notes to expired ones.) There are lots of good email marketing systems. MailChimp is one of them, but it’s not necessarily “the best” on all dimensions. However, I’ve standardized on using MailChimp with MemberPress because of how reliably they integrate with each other.

In the case of many of my favorite free plugins, I’ve upgraded to the paid version of them, and, with very few exceptions, I let my clients use my licensed versions. This saves my clients time and money.

All said, eighteen-plus years of evaluating, configuring, and using WordPress plugins of all types should make me better than the average bear in this department.

[TOC]

In Conclusion

Thanks for listening. If you think we might be a good fit for collaborating on a website project for one or more of your clients or prospects, let’s get the ball rolling.

Testimonials From Partners

I have known Jeff Cohan through the Atlanta WordPress Community for the last few years. Jeff is long time programmer and web-developer. He is a wealth of information on most subjects. Jeff is my go-to web developer person for when I am in a quagmire of some sort.

Jeff’s experience with programming and with WordPress, his knowledge about running a web development business and his common sense is vast and much appreciated.

Call Jeff if you have a project and want to work with someone that will follow up and communicate in an adult fashion. You can count on Jeff Cohan to say what he’ll do and do what he says.

Judi Knight
President
New Tricks

Jeff has been a great collaborator in helping me develop my custom membership sites with MemberPress & WordPress. With Jeff’s technical expertise, I am able to bring my complex membership ideas to life. He’s thoughtful, efficient, and always finds smart solutions. Jeff is the kind of developer you want in your back pocket when you need to stretch the capabilities of your membership sites.

Natasha Votypka
NV Studios

I submitted a testimonial in 2003. I had nothing but glowing praise for Jeff at that time. Now that I’ve had several more years of experience working with him, all I can say is that my earlier testimonial was right on the money. JEFF IS AWESOME! He recently reengineered my site to make it easier to update and expand. Not only am I thrilled with the results, I can’t say enough good about the process. I can’t imagine there being a web developer out there who does a better job than Jeff of blending technical know-how with common sense and a commitment to satisfying clients’ needs.

Steve Levinson
President
Behavioral Dynamics, Inc.

Jeff Cohan is awesome! He has a gift for clean, uncluttered design that’s driven by logic and carefully crafted to wear well over time — not just to make a good first impression. At every turn in the design process, Jeff looks through the eyes of prospective website visitors to see what they’re looking for, and he makes sure that nothing will keep them from finding it.

Jeff is a joy to work with. An excellent listener who is open, flexible and responsive to his clients’ needs and concerns, Jeff applies his impressive expertise in a delightfully relaxed and relaxing way. The end result is that when Jeff delivers that shiny new website that you’ve always wanted, you can have absolute confidence that there’s as much quality "under the hood" as there is where you can see it.

Steve Levinson
President
Behavioral Dynamics, Inc.

Footer

Background

Web Sites | WordPress Support | Web Applications.

Formally trained in liberal arts and education (I have a B.A. in Government from Harvard and studied Secondary Education at Rutgers Graduate School), I have honed my skills in the communication arts and sciences as a teacher, trainer, instructional designer, writer, photographer, calligrapher, helpdesk manager, database programmer, and multimedia developer.

(I've also been a group counselor, waiter, bartender, bicycle messenger boy, computer salesman, carpenter's helper, financial analyst, and school board president.)

Tech

Systems since 1983.
Web sites since 1994.
PHP since 2001.
WordPress since 2007.

Contact

Book Meeting
770-772-5134
Email Jeff
Send Money
All Ways

Copyright 2026, nSiteful Web Builders, Inc.

Cookies Consent
To provide the best experiences, we use technologies like cookies to store and/or access device information. Consenting to these technologies will allow us to process data such as browsing behavior or unique IDs on this site. Not consenting or withdrawing consent, may adversely affect certain features and functions.
Functional Always active
The technical storage or access is strictly necessary for the legitimate purpose of enabling the use of a specific service explicitly requested by the subscriber or user, or for the sole purpose of carrying out the transmission of a communication over an electronic communications network.
Preferences
The technical storage or access is necessary for the legitimate purpose of storing preferences that are not requested by the subscriber or user.
Statistics
The technical storage or access that is used exclusively for statistical purposes. The technical storage or access that is used exclusively for anonymous statistical purposes. Without a subpoena, voluntary compliance on the part of your Internet Service Provider, or additional records from a third party, information stored or retrieved for this purpose alone cannot usually be used to identify you.
Marketing
The technical storage or access is required to create user profiles to send advertising, or to track the user on a website or across several websites for similar marketing purposes.
  • Manage options
  • Manage services
  • Manage {vendor_count} vendors
  • Read more about these purposes
View preferences
  • {title}
  • {title}
  • {title}
https://iframe.mediadelivery.net/embed/392008/42d18bc1-2adc-4741-b733-053d08d09c32
https://vz-000c5976-3ab.b-cdn.net/42d18bc1-2adc-4741-b733-053d08d09c32/play_720p.mp4

Receive occasional emails from Jeff