Nonprofit Drupal posts: July Drupal for Nonprofits Chat

Join us THURSDAY, July 18 at 1pm ET / 10am PT, for our regularly scheduled call to chat about all things Drupal and nonprofits. (Convert to your local time zone.) We'll be taking August off, so this is the last chat of the summer.

We don't have anything specific on the agenda this month, so we'll have plenty of time to discuss anything that's on our minds at the intersection of Drupal and nonprofits.  Got something specific you want to talk about? Feel free to share ahead of time in our collaborative Google doc: https://nten.org/drupal/notes!

All nonprofit Drupal devs and users, regardless of experience level, are always welcome on this call.

This free call is sponsored by NTEN.org and open to everyone. 

  • Join the call: https://us02web.zoom.us/j/81817469653

    • Meeting ID: 818 1746 9653
      Passcode: 551681

    • One tap mobile:
      +16699006833,,81817469653# US (San Jose)
      +13462487799,,81817469653# US (Houston)

    • Dial by your location:
      +1 669 900 6833 US (San Jose)
      +1 346 248 7799 US (Houston)
      +1 253 215 8782 US (Tacoma)
      +1 929 205 6099 US (New York)
      +1 301 715 8592 US (Washington DC)
      +1 312 626 6799 US (Chicago)

    • Find your local number: https://us02web.zoom.us/u/kpV1o65N

  • Follow along on Google Docs: https://nten.org/drupal/notes

View notes of previous months' calls.

Drupal Starshot blog: Join the Drupal Starshot team as a track lead

Drupal Starshot seeks track leads to drive key project components. Apply by July 31st and help bring Drupal Starshot to life!

Image removed.

The Drupal Starshot initiative has been making significant progress behind the scenes, and I'm excited to share some updates with the community.

Leadership team formation and product definition

Over the past few months, we've been working diligently on Drupal Starshot. One of our first steps was to appoint a leadership team to guide the project. With the leadership team in place as well as the new Starshot Advisory Council, we shifted our focus to defining the product. We've made substantial progress on this front and will be sharing more details about the product strategy in the coming weeks.

Introducing Drupal Starshot tracks

We already started to break down the initiative into manageable components, and are introducing the concept of "tracks". Tracks are smaller, focused parts of the Drupal Starshot project that allow for targeted development and contributions. We've already published the first set of tracks on the Drupal Starshot issue queue on Drupal.org.

Example tracks include:

  1. Creating Drupal Recipes for features like contact forms, advanced search, events, SEO and more.
  2. Enhancing the Drupal installer to enable Recipes during installation.
  3. Updating Drupal.org for Starshot, including product marketing and a trial experience.

While many tracks are technical and need help from developers, most of the tracks need contribution from designers, UX experts, marketers, testers and site builders.

Recruiting more track leads

Several tracks already have track leads and have made significant progress:

However, we need many additional track leads to drive our remaining tracks to completion.

We're now accepting applications for track lead positions. Interested individuals and organizations can apply by completing our application form. The application window closes on July 31st, two weeks from today.

Key responsibilities of a track lead

Track leads can be individuals, teams, or organizations, including Drupal Certified Partners. While technical expertise is beneficial, the role primarily focuses on strategic coordination and project management. Key responsibilities include:

  • Defining and validating requirements to ensure the track meets the expectations of our target audience.
  • Developing and maintaining a prioritized task list, including creating milestones and timelines.
  • Overseeing and driving the track's implementation.
  • Collaborating with key stakeholders, including the Drupal Starshot leadership team, module maintainers, the marketing team, etc.
  • Communicating progress to the community (e.g. blogging).

Track lead selection and announcement

After the application deadline, the Drupal Starshot Leadership Team will review the applications and appoint track leads. We expect to announce the selected track leads in the first week of August.

While the application period is open, we will be available to answer any questions you may have. Feel free to reach out to us through the Drupal.org issue queue, or join us in an upcoming zoom meeting (details to be announced / figured out).

Looking ahead to DrupalCon Barcelona

Our goal is to make significant progress on these tracks by DrupalCon Barcelona, where we plan to showcase the advancements we've made. We're excited about the momentum building around Drupal Starshot and can't wait to see the contributions from the community.

If you're passionate about Drupal and want to play a key role in shaping its future, consider applying for a track lead position.

Stay tuned for more updates on Drupal Starshot, and thank you for your continued support of the Drupal community.

— Dries Buytaert

Specbee: Personalizing Experiences in Drupal: CRMs, E-commerce Integration, and UTMs

I love shopping on Amazon. It's not just about the convenience and fast delivery; it's also how it tailors my experience. From my shopping history to my preferences and even where I'm from, Amazon makes it easy to find exactly what I want. It has been proven that personalized web experiences can significantly boost revenue for any organization. A McKinsey study* found that 71% of consumers expect personalization, and 76% get frustrated when it’s missing. Personalizing website content requires user data. This data gathered with explicit permission, often comes from third-party tools like Marketo, Salesforce, or Shopify. Drupal makes working with integrations like these a breeze. In this article, you’ll learn about creating personalized web experiences in Drupal using consensually collected user data from third-party tools. If your goal is to provide a unified, personalized web experience that meets your users’ needs and drives revenue growth, you need to read this article. We'll even walk you through it with an example. Why prioritize personalized, unified user experiences The primary objective of delivering personalized and unified website experiences is to create a cohesive experience that aligns with users’ digital profiles. By focusing on personalization, businesses can enhance user satisfaction and build stronger customer loyalty. Unified experiences ensure consistency across all touchpoints, creating a cohesive brand image and simplifying the user journey. Tailored User Experience: Customize content and recommendations based on user profiles stored in CRMs like Marketo and Salesforce. Revenue Growth: Increase opportunities for cross-selling and upselling through a seamless shopping cart experience. Cross-Promotion: Recommend best-matched products, services, and content throughout the website using AI-based algorithms. Personalization methods There are multiple ways to personalize a webpage, ensuring a highly customized user experience: Persona-Based Personalization: Content is tailored based on the defined personas. UTM Tags: UTM tags in URLs can track the effectiveness of online marketing campaigns and personalize content accordingly. Combination of Both: For even more refined personalization, combine persona-based personalization with UTM tags, allowing for a highly targeted approach. Scope and Technologies : A Sample Drupal Project To make things simpler, let’s explain implementing personalization on a sample Drupal website project. Let’s say the project has a corporate website and an ecommerce store and focuses on integrating the following technologies: Drupal: Used for the corporate website, with necessary modules for integration. Marketo: Marketing CRM housing most digital profiles. Salesforce: Sales CRM containing additional profile information. Shopify: E-commerce platform for transactions. UTM Tags : A set of parameters that can be added to a URL to track the performance of online marketing campaigns Let’s assume that the business requirement is to use Drupal to deliver a personalized shopping cart experience for targeted personas. Which means, when the user logs in with their credentials, the user’s details are fetched from CRMs like Marketo and Salesforce. This information is then used to segment users and display best matched products and content throughout the website. Integrating Shopify, Marketo, and Smart Content with Drupal Shopify Integration Shopify is a leading e-commerce platform that allows businesses to create online stores with ease. In our sample Drupal project, the user journey begins on the Corporate Website, where they discover the product. When they click the "Purchase" or "Add to Cart" button, they are seamlessly redirected to the Shopify product page to complete their transaction. This integration ensures a smooth transition, combining the robust content management of Drupal with the powerful e-commerce capabilities of Shopify. Enabling the Shopify module allows synchronization of products and collections with your Drupal site. Configuration involves setting up API keys and syncing products to provide a unified shopping experience. You can enable the cron run to sync products and collections. Once the sync is done, you can visit your store by clicking on Shopify in your toolbar. You can then perform various activities like viewing all your products, collections (stored as taxonomy terms), tags, change the product display order, and more. Once everything is set up, you have two ways to personalize your content based on user roles or other details. You can display recommended products by: Calling only the required items through the Shopify API directly from your Shopify store. Syncing the products to your Drupal site and adding the necessary tags, allowing you to pull information based on these tags. This approach gives you greater control over your personalization activities. Marketo Integration Marketo enables marketers to create personalized campaigns, manage leads, and measure performance across various channels. Integrating the Marketo MA module with your Drupal website helps you deliver personalized, targeted marketing campaigns and track user interactions on your Drupal site. In our sample Drupal project, the Marketo MA module retrieves user details from Marketo and delivers personalized content based on it. User details such as region, member type, member title, company, job function, and job level are retrieved from Marketo using the user's email ID upon login. The site's content is then dynamically tailored based on these values, ensuring a personalized user experience. You can, for example, display a different banner for a marketing professional and a different one for a developer on their home page. To configure the Marketo MA module, navigate to the module configuration page in your Drupal admin panel. Next, enter your Marketo credentials, including the Client ID, Client Secret, and Munchkin Account ID. These can be obtained from your Marketo account under the Admin section. The Smart Content Drupal module The Smart Content module personalizes site content by setting conditions and displaying blocks based on user segments. For example, you can display different promotional banners to users based on whether they are new visitors, returning customers, or located in a specific region. To implement this module, you will first need to download the module and configure it. Next, you can create different segments based on user personas or if they’re new, returning or regional visitors. It's now time to create personalized content blocks for these segments. For example, for returning customers, you can create a content block with a loyalty reward banner that reads: “Welcome back! Enjoy a special discount just for you.” Next, you can setup conditions for the display of each of these blocks. For example, for the returning customers block, set the condition to display if the user has a specific purchase history. Lastly, you can now embed these personalized blocks to your block layout or your custom template where you want it to appear. For a deeper understanding of using the Smart Content module, check out this detailed article. UTM Tags UTM tags (Urchin Tracking Module tags) are small snippets of text added to the end of a URL to help track the performance of online marketing campaigns across various traffic sources. Not just that, they’re a great way to personalize your content based on the UTM tags content which can let marketers know where their website traffic is coming from and how users interact with their content. The Smart content UTM tags module is an add-on Smart content module that leverages UTM parameters to deliver personalized content to users. This module integrates seamlessly with the Smart Content module, allowing for dynamic content personalization. A typical URL with UTM tags might look like this: https://www.specbee.com/?utm_source=google&utm_medium=cpc&utm_campaign=… Now, based on the UTM tags, you can create your segments in the Smart content module. Steps to Creating a Personalized Experience Step 1: Defining User Personas The first step in creating a personalized experience is defining user personas. These personas can be based on various roles such as marketing, sales, and engineering. Each persona represents a segment of your audience with distinct characteristics, preferences, and needs. By clearly defining these personas, you can create targeted content that resonates with each group. Step 2: Uploading Content to Components Once personas are defined, the next step is to create and upload relevant content to your website components. These components can include text, images, videos, and other multimedia elements. Each piece of content should address the specific needs and interests of a particular persona. Step 3: Placing Components Based on Persona With the content uploaded, you can place these components on your website pages based on the defined personas. This involves organizing the content to align with the user journey and ensure that each persona sees the most relevant information. Step 4: Mapping Persona to User via Marketo When a user logs into your website, their job title or role is identified through Marketo, a leading marketing automation platform. Marketo maps the user to the appropriate persona based on their job title or other relevant information. Step 5: Displaying Personalized Content Once the user’s persona is mapped, the corresponding components and content are dynamically displayed on the page. This means that each user sees a personalized version of the Drupal website tailored to their specific persona, enhancing their overall experience and engagement with your site. References https://www.mckinsey.com/capabilities/growth-marketing-and-sales/our-insights/the-value-of-getting-personalization-right-or-wrong-is-multiplying Final Thoughts Drupal’s flexibility makes it perfect for delivering personalized user experiences. By integrating your Drupal site with CRM tools and using smart content along with user personas, you can ensure your visitors get content tailored to their needs and interests. We've done something similar for our customer SEMI with our Drupal development services, so if you have a similar need, reach out to us today!

Talking Drupal: Talking Drupal #459 - Off The Cuff 8

Today we are talking about Config Actions, The Panels Favorite Drupal Modules, and Drupal Contribution. We’ll also cover Transform API as our module of the week.

For show notes visit: www.talkingDrupal.com/459

Topics
  • New Config Action: Place Block
  • Favorite Contrib modules
  • Slack channels
  • Preparing for Drupal 11
  • Drupal events
Resources Hosts

Nic Laflin - nLighteneddevelopment.com nicxvan John Picozzi - epam.com johnpicozzi Martin Anderson-Clutz - mandclu.com mandclu Baddý Sonja Breidert - 1xINTERNET baddysonja

MOTW Correspondent

Martin Anderson-Clutz - mandclu.com mandclu

  • Brief description:
    • Have you ever wanted to expose your Drupal site’s data as JSON using view modes, formatters, blocks, and more? There’s a module for that.
  • Module name/project name:
  • Brief history
    • How old: created in Sep 2023 by LupusGr3y, aka Martin Giessing of Denmark
    • Versions available: 1.1.0-beta4 and 1.0.2 versions available, both of which work with Drupal 9 and 10
  • Maintainership
    • Actively maintained, in fact the latest commit was earlier today
    • Security coverage
    • Documentation: in-depth README and a full user guide
    • Number of open issues: 14 open issues, 3 of which are bugs, but none against the current branch
  • Usage stats:
    • 2 sites
  • Module features and usage
    • After installing Transform API, you should be able to get the JSON for any entities on your site by adding “format=json” as a parameter to the URL
    • To get more fields exposed as JSON, you can configure a Transform mode, using a Field UI configuration very similar to view modes
    • You can also add transform blocks to globally include specific data in all transformed URLs, in the same way you would use normal blocks to show information on your entity pages. The output of transform blocks is segmented into regions,
    • Where Drupal’s standard engine produces render arrays that ultimately become HTML, Transform API replaces it with an engine that produces Transform Arrays that will ultimately become JSON
    • Where Drupal’s standard JSON:API supports more or less exposes all information as raw data for the front end to format, Transform API allows for more of the formatting to be managed on the back end, where it will use Drupal’s standard caching mechanisms, permission-based access, and more
    • Transform API also supports lazy transformers, which are callbacks that will be called after caching but before the JSON response is sent
    • You can also use alter hooks to manipulate the transformed data

The Drop Times: Open is the New Default

Dear Readers,

Governments worldwide are increasingly embracing open-source software (OSS) to enhance their operations' transparency, security, and efficiency. Open source allows anyone to inspect, modify, and improve software, fostering a culture of collaboration and innovation. This shift is transforming the way public sector bodies function, ensuring digital solutions are cost-effective and tailored to the unique needs of each community.

Switzerland's recent mandate for OSS in its public sector is a prime example of this trend. The "Federal Law on the Use of Electronic Means for the Fulfilment of Governmental Tasks" (EMBAG) requires government-developed software to be open source, marking a significant step towards greater transparency and efficiency. However, Switzerland is not alone in this initiative; many countries are adopting similar policies to reduce dependency on costly proprietary software and foster innovation.

One of the notable benefits of open source in government is its potential for increased security and reliability. Continuous scrutiny and improvement by a global community of developers result in robust and adaptable solutions that can quickly respond to changing needs and security threats. Additionally, OSS helps prevent vendor lock-in, allowing governments to choose the best solutions without being tied to specific providers.

A recent study by Veniz Guzman on The DropTimes highlights the growing adoption of the open-source CMS Drupal among government entities of all sizes. Larger governments with complex digital needs are increasingly turning to Drupal for its flexibility and robust features. Interestingly, smaller to mid-sized entities are also recognizing Drupal's benefits, with rising adoption rates among smaller cities and counties. 

With that, let's move on to the important stories of last week.

Drupal Starshot has announced the formation of its Advisory Council, a significant step in its efforts to expand the reach and impact of Drupal. This council will provide strategic input and feedback to ensure that the initiative meets the needs of key stakeholders and end users. To learn more about the composition of the Starshot Advisory Council, click here.

In "Using Drupal Migrations to Modify Content Within a Site," Jaymie Strecker demonstrates how to use the Drupal Migrate API for restructuring content within a site. The article provides practical examples and assumes basic knowledge of the Migrate API.

In other news, the Drupal Association has announced HeroDevs as the inaugural partner for the new Drupal 7 Extended Security Support Provider Program. This initiative aims to assist organizations unable to migrate from Drupal 7 by the end-of-life date of January 5, 2025, ensuring their systems remain secure and compliant. 

Additionally, Drupal.org has announced that it will end support for Composer 1 on Packages.Drupal.org. This move is part of efforts to prepare its infrastructure for providing automatic updates for Drupal and upgrading Drupal.org itself. New packages and releases will no longer be available for Composer 1 starting August 12, 2024, and full support will be dropped on October 1, 2024.

Doubling the spirit of community, DrupalCon Europe has announced Tomasz Rogalski as the winner of the Merce Drawing Contest. His drawing of Mercè, the celebrated figure of Barcelona's annual festival, will be featured on the official event stickers at DrupalCon Barcelona.

The Women in Drupal award will be presented shortly at DrupalCon Barcelona, an event dedicated to the Drupal community. This award aims to recognize and celebrate the significant contributions made by women within the Drupal ecosystem. To nominate a deserving Drupal artist, attendees can fill out the nomination form provided

Drupal GovCon 2024 is only a month away, scheduled to happen in August 13 - 15, 2024. It will feature a session titled "What the Heck is ARIA? A Beginner's Guide to ARIA for Accessibility," presented by Kat Shaw, a Lead Engineer and Accessibility Advocate (CPACC) at Lullabot. DrupalCamp Colorado has announced its second Keynote Speaker for this year's event, Matthew Saunders.

The DropTimes has compiled notable Drupal events happening throughout the week of July 15 to July 21. This curated list offers a glimpse into the varied activities taking place within the Drupal community, catering to enthusiasts of all skill levels. Read here.

amazee.io announces the launch of a new cloud region on AWS in Tokyo, Japan, enhancing the company's services in the Asia Pacific region. This expansion provides Japanese customers with reduced latency, improved fault tolerance, and compliance with local data privacy laws. 

Roderik Muit and Alexandru Ieremia of drunomics presented the new Custom Elements module at Drupal Developer Days in Burgas, in June 2024. This session, part of an informal "Birds of a Feather" discussion, introduced the latest version of the Custom Elements module, a vital part of drunomics' headless Drupal solutions. 

We acknowledge that there are more stories to share. However, due to selection constraints, we must pause further exploration for now.

To get timely updates, follow us on LinkedIn, Twitter and Facebook. Also, join us on Drupal Slack at #thedroptimes.

Thank you,
Sincerely
Alka Elizabeth
Sub-editor, The DropTimes.

Salsa Digital: CivicTheme establishes a formal steering committee to guide its rapid growth

Image removed.CivicTheme establishes a formal steering committee to guide its rapid growth We’re very excited to announce that we’ve organised the official CivicTheme Steering Committee (aka Steerco) to help shape the future of the CivicTheme open-source project . In this article, we provide an overview of the steering committee and its objectives, as well as how you can get involved with the CivicTheme project. Our seed committee We have been planning the committee's formation for some time and have now created the inaugural “seed committee” to get things focused and back on track.

Wim Leers: XB week 7: Drupal Dev Days Burgas

It’s Drupal Dev Days week! With Lauri presenting a Keynote there and several people out this week (myself included), it was a quiet week for Experience Builder.

Consequently, it was the first week since the 0.x branch was opened that zero merge requests landed…

Even the weekly meeting was fairly quiet.

Missed a prior week? See all posts tagged Experience Builder.

Goal: make it possible to follow high-level progress by reading ~5 minutes/week. I hope this empowers more people to contribute when their unique skills can best be put to use!

For more detail, join the #experience-builder Slack channel. Check out the pinned items at the top!

But on the other side of the planet, undisturbed by things such as vacation or Drupal Dev Days, Lee “larowlan” made a big push forward on [META] Support component types other than SDC, in his MR where he proposes to already remove the current tight coupling to Single-Directory Components (SDC). That tight coupling obviously needs to be removed, but we needed to start somewhereSDCs were merely the first step.

Still, even at Drupal Dev Days Burgas, important Experience Builder discussions happened: catch, Alex Pott and Dave “longwave” Long discussed the JSON-based data storage model in depth (that was proposed by Alex “effulgentsia” Bronstein). Some important steps forward were made!

Thanks to Lauri for reviewing this!

Drupal Starshot blog: Open source Drupal Starshot slide deck with recording is now available

Image removed.

Lauri Timmanee and myself presented a keynote on Drupal Starshot at Drupal Developer Days 2024 two weeks ago in Burgas, Bulgaria. We got requests from many people that more content on Starshot would be great, so we decided to open source our slide deck! The organizers just published the video recording as well, so while we did not put in speaker notes to these slides, you can get the details from the recording.

Feel free to make a copy of the slides and present this at your company, meetup, Drupal 11 launch party, and so on!

Check out the Drupal Starshot marketing page for further marketing resources, logos and backgrounds.