CiviCRM Entity is a Drupal module which greatly enhances CiviCRM integration with Drupal. This module exposes many CiviCRM entities as true Drupal entities. That means that almost any module can use Drupal entities. As a result, these modules can access and manipulate CiviCRM data directly from within Drupal via Drupal’s Entity API. This includes many commonly used modules such as Views, Rules, Search API, Entityqueue, Entity Reference, and many more.
CiviCRM Entity was originally developed by Eileen McNaughton from Fuzion. Skvare was an early adopter of version 1.0 where we implemented the Rules integration and quickly realized that this was a powerful and essential tool for most CiviCRM implementations that integrate with Drupal. We reached out and collaborated on the development towards the 2.0 branch, with features that were important to Skvare’s clients.
Released last year, the 2.0 branch of CiviCRM Entity has many new features including:
almost 20 CiviCRM entities, such as Contact, Membership, Event, Contributions, exposed as Drupal entities
Native Drupal create/edit/delete forms for CiviCRM data
Native Drupal view pages of CiviCRM data
Standard Drupal Manage Fields and Manage Display forms
Ability to add Drupal fields to CiviCRM data
Display Suite integration
Skvare is now an active developer and maintainer of the project. We are in the process of coordinating feature requests that will be added to the 3.0 branch.
We use, build, and develop solutions with CiviCRM Entity on most of our client websites, and we’ve gotten a lot of feedback. We also keep our ear to the ground for how other people are using it, and this blog article is part of that. The feedback we’ve gotten is, “this is awesome, can I have more, and better!”
What clients now see, love, and want more of, is the ability to create Drupal native themed, responsive view and edit forms. No more figuring out where to edit that one line of custom css code in a CiviCRM-specific template. No secondary system interface for end-users to learn. It’s as simple as building a Drupal webform and concurrently more powerful than the out-of-the-box CiviCRM features. All accessible as a site-building task without the need for any custom code.
A common client request is for volunteers and employees for a CiviCRM form create or edit CiviCRM data without user access to the CiviCRM backend. Oftentimes these volunteers are updating data such as participant attendance statuses at events, with a mobile phone or a tablet. Similar to the built-in profiles, but with consistent theming, out of the box responsive design, broader data access, and much tighter integration of the underlying business logic.
This year, Skvare is excited about adding more features and further improving the integration between CiviCRM and Drupal. We have many ideas, we have many requests, and as we look into the future, we see this module being one of the most important CiviCRM-related modules for both implementors and end users.
Proposed Features include:
Improve Forms with better validation, widgets and formatters for CiviCRM FK reference fields, improved metadata, inline entity forms for FK reference fields, default layouts
Better custom field support -- be able to edit multivalued groups, and organize them on edit forms and in Rules in their field groups.
Open up more CiviCRM entities, such as Country, CustomValue, and those provided by Extensions, as Drupal entities
Improved Views support -- field, filter, sort, relationship handlers for all entities not exposed by CiviCRM Core
CiviCRM Profile Integration -- make them entities!
Native Drupal Contribution pages
Native Drupal Event registration pages
Native Drupal CiviCRM configuration pages
Deeper Drupal Commerce Integration, allow contributions, memberships, and event registrations to happen with standard Drupal Commerce workflow
We’ve seen the impact and success in real-world implementations. We’re motivated and want to solicit feedback from the community.
Have you used the module before?
In what configuration?
Do you like a specific feature?
Are there specific features you wish the module had?
What ideas for the future do you have?
Give feedback on this blog article.
Join the discussion in the Future Development issue
Develop yourself, fork Eileen’s github repo.
Hire Skvare to add the specific feature you want, now. We’ll put it back into the general release and continue building more functionality. Clients have already committed funds to further extend this project. Those who fund development guide the priorities, milestones, and timelines.
Talk to Mark Hanna, CiviCRM Entity maintainer and new development lead.
Want to see a Drupal 8 version sooner rather than later, contact us to make it happen.
Be on the lookout for a set of blog articles showcasing features and site building techniques that Skvare has implemented, and the use cases that we’ve gathered as we aim to further extend this module. We’ll also be presenting on this topic at the upcoming CiviCon 2016.