CRM Core aims to be a framework for interacting with contacts through your Drupal website. This section lays out some practical tips for developers looking to integrate their own modules and features with CRM Core.
There are some general things developers will want to be aware of when working with the module.
- CRM Core allows developers to programmatically interact with contacts, relationships and activities. There are methods for creating, updating and deleting each of these items.
- Each of these entities is fieldable. It's possible to embed fields from CRM Core in other entities by simply loading the fields from a bundle, rendering them, and adding submit handlers to work with the data.
- CRM Core features tight integration with Views. There are relationships defined between contacts, activities and relationships that are sufficient to support most use cases. You can read about the basic ways to relate contacts and activities through Views.
- CRM Core entities are exportable and can be used in features. In order to avoid conflicts, there are some best practices for how to build features with CRM Core. You can read about them in this manual.
- If you are looking to extend CRM Core and share your work, the first thing to consider is the use of features. There are some standards for namespaces, paths, and other things you will want to consider when thinking about distributing your features. See the CRM Core UI Conventions page in this manual for more information.
What follows is some practical guidance for how to carry out specific tasks within CRM Core.