Golems GABB: Best SEO Practices for Drupal Websites in 2024

Best SEO Practices for Drupal Websites in 2024 Editor Tue, 07/23/2024 - 10:10

If you are enthusiastic about Best SEO Practices for Drupal Websites in 2024 and want to grow your website traffic, you are just in the right place! Drupal is like a wise friend on the web who helps you complete tasks quickly without understanding many programming details. Also, it has some cool tricks that make your website both Google-friendly and user-friendly. And here we go, deeper into optimizing your SEO for Drupal!

Drupal SEO Checklist in 2024

All right, let's make a rough Drupal SEO checklist.

DrupalEasy: Getting ready to run your first migration

Image removed.

Migrating content into Drupal is an extremely useful skill for most Drupal developers. Often, the most difficult step in learning to do migrations is the first one - that of getting everything set up and running your first migration to ensure that everything is working as expected.

Most Drupal migration-related blog posts and documentation that I've seen either completely ignore the setup process or gloss over it before diving into the details of writing migrations. I like to ensure, both here, and when working with participants in our Professional Module Development course, that we ensure a solid understanding of this process to build not only skills, but confidence.

This blog post will explain how to set up and run your first (very simple) Drupal migration. The process I will outline is actually the same steps I do when beginning to write a custom migration - just to make sure I have everything "hooked up" properly before I start getting into the more complex aspects of the project.

I generally write migrations on my local machine, using DDEV as the local development environment. 

Configuration migrations vs. Plugin migrations

When creating a custom migration, one of the initial decisions to be made is whether you'll write the migrations as plugins or configuration entities. I've always used configuration entities, but there are pros and cons to both approaches. Here, we will focus on configuration entity migrations.

There are some minor differences in the workflow presented below when using plugin migrations. For more information on the differences, I recommend Mauricio Dinarte's article

Core and contrib modules used

If you're planning on following along with this article, the following modules should be installed and enabled:

Drupal core: 

  • Migrate
  • Migrate Drupal

Contrib: 

Source database

This blog post will demonstrate importing a small portion of user data from a Drupal 7 site into a Drupal 10 site. Normally, the first step is setting up the source data: in this case a Drupal 7 database. I normally create a new d7 database on the same MariaDB server as the Drupal 10 site (using DDEV, this is quite easy) and then import the Drupal 7 database into it.

Next, we have to tell the Drupal 10 site about the d7 source database. This can be done by adding the following database connection array to the bottom of your settings.local.php file (which I know you're using!):

$databases['migrate']['default'] = array(  'driver' => 'mysql',  'database' => 'd7',  'username' => 'db',  'password' => 'db',  'host' => 'db',  'port' => 3306,  'prefix' => '', );

Note the database key is migrate and the database name is d7. Everything else is identical to the regular Drupal 10 database credentials in DDEV. If you're using Lando or another local development environment, then your database connection array may be different. 

Custom migration module

Next, we need a custom module to house our migration. The easiest way to create one is via Drush's generate command:

$ drush generate module Welcome to module generator! –––––––––––––––––––––––––––––– Module name: ➤ My d7 migration Module machine name [my_d7_migration]: ➤ Module description: ➤ Migrations from Drupal 7 site. Package [Custom]: ➤           Dependencies (comma separated): ➤ migrate, migrate_drupal, migrate_plus Would you like to create module file? [No]: ➤ Would you like to create install file? [No]: ➤ Would you like to create README.md file? [No]: ➤ The following directories and files have been created or updated: ––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––– • /var/www/html/web/modules/custom/my_d7_migration/my_d7_migration.info.yml

Once created, go ahead and enable the module as well:

$ drush en my_d7_migration

Migration group configuration

As this blog post will be writing migrations as configuration entities, create a new config/install directory in your new module. 

We'll define a migration group to which all of our migrations will belong - this is what connects each migration to the source d7 database. Create a new migrate_plus.migration_group.my_group.yml file in the new config/install directory with the following contents:

id: my_d7_migration label: My Drupal 7 migration. description: Content from Drupal 7 site. source_type: Source Drupal 7 site shared_configuration:  source:    key: migrate  migration_tags:    - Drupal 7    - my_d7_migration

The most important bit of this configuration is the source key of migrate; this links up this migration group with the d7 database, with the migrate key we previously configured. Then, any migration created that is in this group automatically has access to the source d7 database.

Simple sample migration configuration

Next, let's look at a super simple example migration for user entities. This will not be a complete user migration, but rather just enough to migrate something. Many migration blog posts, documentation pages and other sources provide guidance and examples for writing migration configuration files (remember, this blog post is focused on all of the configuration and mechanics that normally aren't covered in other places.) 

Here's the user migration configuration we'll use. Create a new /config/install/migrate_plus.migration.user.yml file in your custom module with the following contents:

id: user label: Migrate D7 users. migration_group: my_d7_migration source:  plugin: d7_user process:  name: name  pass: pass  mail: mail  created: created  access: access  login: login  status: status  timezone: timezone destination:  plugin: entity:user

Reputable Drupal migration articles and documentation will explain that migrations need a source (extraction,) some processing (transform,) and a destination (where to load the data.) Often these three concepts will be called ETL. Each of these concepts are easy to spot in our sample configuration file:

  • The data is coming from the d7_user plugin (provided by Drupal core with the data source being that of the my_d7_migration group which we configured in a previous step.) 
  • The processing of the data in this simple migration is just field mapping (tofrom.) Many migration configurations have transformations as part of this section, often provided by Drupal process plugins
  • The destination is Drupal user entities. 

Running the migration

Again, these instructions are specific to Drupal migration configurations when created as configuration entities. Instructions for migration configuration written as plugins are slightly different (and not covered in this article.) 

As we are dealing with configuration entities, they must be imported into the active configuration store - which, by default, is the Drupal database. This is easily accomplished with the drush cim --partial command. This must be run each and every time a migration configuration file is modified. This is one of the (few, in my opinion) downsides of writing migrations as configurations. 

Next, I often check the status of migration via the drush migrate:status command. When using the Migrate Drupal module, it is recommended to always use the --group option otherwise the output of migrate:status can get a bit messy (due to all the default migrations that will be displayed.) 

The drush migrate:import and migrate:rollback commands should be self-explanatory. Each can be used with either the --group option or with a migration name (as shown below.) I almost always use the --update option on migrate:import for updating previously imported data. 

Finally, keep the drush migrate:reset command in your back pocket when writing custom migrations. If the migration crashes, you'll need to use this to reset its status from processing to idle in order to run it again. 

Here's a full set of the command specific to the sample user migration, migration group, and custom module created in this article:

$ drush cim --partial --source=modules/custom/my_d7_migration/config/install $ drush migrate:status --group=whatever $ drush migrate:import user --update $ drush migrate:reset user $ drush migrate:rollback user

What's next?

What I've presented in this article is 90% of what I regularly use when running migrations. Sure, there are a few edge cases where oddities occur, but I believe this is a solid base of knowledge to start with. 

Once all this makes sense, I encourage you to utilize other blog posts and documentation to extend the user migration we started, or write new ones based on other resources. Once you're comfortable writing additional migrations, learning how to create your own process plugins is the natural next step. As process plugins are written as PHP classes, some knowledge of module development is necessary. 

Interested in learning more about Drupal module development? Check out DrupalEasy's 15-week Professional Module Development course

Additional resources

Lead image generated by OpenAI.

Wim Leers: XB week 8: design locomotive gathering steam

Last week was very quiet, July 1–7’s #experience-builder Drupal Slack meeting was even more tumbleweed-y…

… but while that was very quiet, the Acquia UX team’s design locomotive was getting started in the background, with two designs ready-to-be-implemented posted by Lauri — he’s working with that team to get his Experience Builder (XB) product vision visualized:

  1. #3458503: Improve the page hierarchy display — with Gaurav “Gauravvvv” enthusiastically jumping on it!
  2. #3458863: Add initial implementation of top bar

On top of that, a set of placeholder issues was posted — choices to be made that need user research before an informed design can be crafted:

More to come on the design front! :)

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!

Speaking of design, Hemant “guptahemant” Gupta and Kristen “kristenpol” Pol are volunteering on behalf of their respective employers to implement the initial design system prior to DrupalCon Barcelona.

Front end

Front-end starting points for contributing to XB

Jesse reported two bugs that would be excellent starting points for contributing to XB:

And Lauri added a feature request that builds on top of the aforementioned foundational UI piece Jesse & Ben landed (#3459249: Allow opening the contextual menu by right clicking a component) — that too is a great entry point.

Back end

And, finally, on the back-end side:

Thanks to Lauri for reviewing this!

  1. Sadly, it’s an inevitability that this is still complex: Drupal 8 introduced Typed Data API into the pre-existing Field API, and then later the Symfony validation constraint API was integrated into both. Getting a full picture of what constraints apply to an entire entity field data tree is not something Drupal core provides, so that picture must be manually crafted, which is what that code does. ↩︎

Specbee: Top 8 Drupal modules that can improve user engagement

An engaging website is like a great party host who makes everyone feel welcome and ensures they have such a fantastic time that they never want to leave. Who are these engaged users? They’re your future loyal customers, your content’s biggest fans, and the ones most likely to convert into paying customers. Keeping your content fresh and relevant is one of the best things you can do to maintain user engagement on your website, but a CMS like Drupal offers so much more than just that. From creating personalized experiences to integrating interactive elements, Drupal empowers you to build a dynamic, engaging website that keeps users coming back for more. In this blog, I’ll explore the benefits of creating an engaging website for your business and introduce 8 fantastic Drupal modules that can boost user engagement. Let’s get started! Why is user engagement important anyway Profitable B2B, B2C, or SaaS companies use effective user engagement as one of their KPIs to demonstrate the value they’re offering to their customers through their services. Engagement is crucial to achieving all marketing goals if you want to boost your website traffic, establish brand awareness, or launch social media campaigns. Driving higher user engagement draws substantial benefits for your business.  You get sustained audience attention Build stronger emotional bonds with customers Increase in repeated customers gradually Brand advocacy from loyal customers Shortened sales cycles You can track your user engagement using various user engagement metrics such as customer base growth, average customer value, and churn rate. Your users engage with your business via social media, your company website, and product or service purchases. Here are some common metrics that help measure user engagement: Page/scroll depth Page views Conversions Time spent on the page/site Pages per session Bounce rate And more… How can you improve user engagement With advanced technology and a rise in user expectations, it is only essential to refine websites for optimized user experiences. To begin with, here’s what you can do to improve user engagement: Identify and cater to your target audience: Understand your target audience and customize your content to meet their expectations and preferences. Implement a design that adapts to various devices: Build a responsive website that is adaptable to various devices whether laptop, desktop, mobile, or tablet. It helps deliver a seamless experience with a responsive design and optimum website functionality. Ensure easy-to-use navigation: Develop an intuitive web design, easy to navigate, providing users with what they look for with clear menus and search functionality. Utilize personalized content and experiences: Craft your content, recommendations, and CTAs based on user preferences, behavior, and demographics. Incorporate interactive features and social media integration: Analyze user behavior and gather feedback by implementing interactive elements like forms, surveys, quizzes, polls, etc. Integrate social media buttons on your website for social engagement and brand awareness. Optimize page load time: Reduce bounce rates with the help of leveraging caching, optimized images, compressing files, utilizing CDNs, etc., to optimize page load times for an enhanced user experience. Top 8 Drupal modules to boost user engagement There can be pretty small yet essential elements that can contribute to boosting user engagement, meeting user preferences, and generating valuable statistics. Drupal’s active community continuously develops innovative modules and themes to boost engagement. I have gathered a list of 8 Drupal modules that you can use to build user engagement through your website. 1. Webform Image source: Drupal .org The Webform module is one of the most important Drupal modules that bridges the gap between you and your audience. It helps engage your audience, gather insights about their preferences, maintain interaction with your regular customers, track marketing analytics, and offer assistance as and when required. This module allows you to collect data in any form that is submitted to the application or system. These forms are customizable based on any behavior or aspect. Whether you need a form with multiple pages or multiple columns with conditional logic or a simple, basic form that pushes data to Salesforce/CRM, the Webform module makes it all possible. Users can enter their data through these forms - contact forms, feedback forms, job applications, support requests, subscription forms, surveys, appointment forms, and other types of forms as required for your business and marketing goals. Webforms feature text fields, checkboxes, select menus, radio buttons, and more. Administrators can enhance their features using placeholders for required data formats, autocomplete options, and relevant text to improve user-friendliness. Drupal’s webforms adhere to specific web accessibility standards that ensure seamless functionality even for differently-abled individuals. This includes clear labels, easily associated form validation, and keyboard accessibility. Take a deeper dive into the Webform module in this article. 2. Flag You might dog-ear pages of a novel to mark where you left off or use bookmarks to keep track. The Flag module in Drupal offers similar functionality. It’s an adaptable flagging system, fully customizable by administrators. Admins can create numerous flags for nodes, comments, users, and additional entities. Any website featuring user-generated content may require monitoring for spam and adherence to submission guidelines. The Flag Drupal module allows users to mark (or bookmark) content for future reference. Users have the ability to “Add to wishlist,” “Mark as inappropriate,” “Add to bookmarks,” or “Flag as helpful,” as part of this module’s functionalities. Flags can be either per-user, letting individuals mark items independently, or global, meaning any user’s action affects everyone. This flexibility allows additional flags (similar to published or sticky) to be applied to nodes or other elements, managed according to admin preferences. Additionally, the module’s integration with Views allows you to build custom lists of popular content or monitor key items. 3. Poll Image source: Drupal .org Just like you can vote your opinion on Instagram stories and posts nowadays, the Poll module in Drupal enables users to vote among multiple choices. You can create and manage multiple polls. These polls can be customized among options such as anonymous voting, setting voting requirements, or toggling open/closed status. Administrators can create a block that highlights the most recent poll. Additionally, this module can also be integrated with Views, so admins can create their own blocks and pages. The best thing about these polls is that they are multilingual. Users in any part of the globe can choose their preferences in their respective languages. 4. Node Read Time Image source: Drupal .org Time is precious and you’d like your time to be respected. Many websites understand this sentiment and value their readers’ precious time. When you read a blog on such websites, you may have noticed at the top of the blog that it mentions the time required to read that particular blog. The Node Read Time module in Drupal is behind this feature of Drupal websites. The Node Read Time module allows admins to add an extra field of content types to showcase the time taken for users to read a node. This field considers all text fields in the content type and entity version revision fields like Paragraphs and Custom Blocks. Additionally, the configuration page of this module allows you to enable the reading time field for specific content types. You can also set the “words per minute” value for your users to calculate the reading time. Users usually get to view the time in minutes or minutes and seconds. 5. Like/Dislike Image source: Drupal .org If you want to understand how your readers perceive your blogs, this module can help. The Like/Dislike Drupal module allows you to implement a customizable like and dislike widget anywhere on your site. With the help of the Voting API, the module securely stores, retrieves, and tallies user votes. You can easily configure its settings through a dedicated page to specify which content types or entities the widget should apply to. Users can simply hit the like or dislike button on the page to express their approval or disapproval of your site content. However, be mindful of the fact that only authenticated users can engage with the like or dislike option. Anonymous users are required to log in or register to cast their vote. 6. Commerce Wishlist When we shop online, we mostly tend to “Add to Wishlist” to save our preferences for a later buying decision. The Commerce Wishlist module in Drupal offers such Wishlist functionality. This module is specifically developed for e-commerce websites. With the help of this module, admins can create a dedicated wishlist page, along with a customizable block. Its integration with the Views module makes it easier for straightforward customization. With the help of this module, admins can add an “Add to Wishlist” button on every product display node. You can also generate a customizable list using Views to showcase all Wishlist products. Users can effortlessly remove or transfer Wishlist items to their Shopping Cart with a simple click. 7. Quiz Image source: Drupal .org Have you ever participated in a quiz tournament? While this quiz isn’t related to that one, they do share a common trait. But if you look at it this way, the tournament brings into the limelight the winner who knew the highest number of answers to the questions. It highlights their knowledge of different subjects/topics. The Quiz module in Drupal gathers insights from users with the help of graded assessments that consist of a series of questions. These responses are then stored in the database. The scores and results of these quizzes are displayed during or after completion. Admins can use its intuitive drag-and-drop interface to order the questions (and answers) and pages. Admins can also customize the number of questions on every page. Additionally, the module allows dummy Quiz generation, along with Question and Result data with Devel. The questions can also be randomized where multiple attempts are allowed per user. Admins have the option to provide feedback manually or automatically. Here are the versatile application options of the Quiz module: Integration into larger Learning Management Systems (LMS) or as a supplementary classroom activity Standalone functionality supporting multimedia-rich content in questions and answers Adaptive mode for self-paced learning with multiple attempts Training programs allowing iterative improvement attempts 8. Advanced Content Feedback (Admin Feedback) Image source: Drupal .org Last on my list is a crucial Drupal module that is most helpful in gathering insights about your site’s content. To understand if you’re providing relevant content for your users, you need to be mindful of their preferences. Feedback is a traditional yet proven and useful approach to gathering insights into your users’ preferences. The Admin Feedback module in Drupal allows users to submit feedback on content (nodes) via AJAX requests and ensures a seamless user experience without redirects. The insights from this feedback are then monitored, analyzed, and inspected by administrators from the dashboard. This module facilitates direct improvements based on client feedback gathered via FAQ or help pages seeking user input to enhance content quality. It includes a permission system to control feedback submission and analysis by specific roles. Admins work via two significant features of the Admin Feedback module for its optimum purpose: Feedback Block - This feature offers a customizable form on various content types for users to provide positive or negative feedback backed with optional messages. Content Feedback Dashboard - Accessible at /admin/content/feedback, this dashboard displays all user feedback with permissions to manage access. It offers two views: Summary View and Detail View. Other Drupal Modules that promote user engagement Apart from the previously mentioned modules, here are a few additional Drupal modules that help improve engagement of your Drupal site: Simple Feedback Survey: This module is an alternative to survey forms to collect data from users visiting your site. Website Feedback: This module allows users (with permission) to submit feedback comments along with a screenshot of the page. Reviews: This module allows authenticated users to submit their reviews about the site content.  Social Media Share: As the name suggests, this module allows users to share the current site page to various social media platforms like Twitter (X), Facebook, LinkedIn, WhatsApp, Pinterest, and email. Social Auth Google: This module allows users to register and log in to a Drupal website via their Google account. Final Thoughts Your website is the face of your brand, and users are drawn to businesses that offer a seamless experience, engaging them with interactive features and personalized content. Drupal is an excellent tool for achieving just that. If you’re looking for a reliable Drupal development company to help improve your user engagement with your Drupal website, let’s make it happen together! Contact us today to get started!

Talking Drupal: Talking Drupal #460 - Preconfigured CMS Solutions

Today we are talking about Preconfigured CMS Solutions, How they can help your business, and The best way to build them in Drupal with guests Baddy Sonja Breidert and Dr. Christoph Breidert.

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

Topics
  • Spain
  • What is a Preconfigured CMS / Drupal Solution
  • Who is the audience
  • What business objectives can preconfigured solutions solve
  • What are the ingredients
  • How do you manage theming
  • How do you manage customized design
  • What do you do if your client has a need that your preconfigured solution does not solve
  • What about Starshot
  • Did the two of you meet over Drupal
  • How do you manage work life balance
Resources Guests

Christoph Breidert - 1xINTERNET breidert

Hosts

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

MOTW Correspondent

Martin Anderson-Clutz - mandclu.com mandclu

  • Brief description:
    • Have you ever wanted to customize the way Google Maps appear on your Drupal site? There's a module for that.
  • Module name/project name:
  • Brief history
    • How old: created in Mar 2014 by iampuma, but recent releases are by Artem Dmitriiev (a.dmitriiev) of 1xINTERNET
    • Versions available: 7.x-2.0, 8.x-1.7, and 8.x-2.6 versions available, the last of which works with Drupal 8, 9, 10, and 11
  • Maintainership
    • Actively maintained, latest release a week ago
    • Security coverage
    • Has a Documentation page and lots of information on the project page
    • Number of open issues: 8 open issues, 1 of which is a bug against the current branch, though it was actually fixed in the latest release
  • Usage stats:
    • 1,764 sites
  • Module features and usage
    • The module provides allows your Drupal to use custom styles, which you can copy and paste from SnazzyMaps.com, or create from scratch using a configuration widget on Github that is linked from the project page
    • You will be able to use custom markers by using the System Stream Wrapper module
    • You can also specify popups for the markers, using a field or a view mode
    • If you use the companion styled_google_views module, you can also show multiple locations, and define clustering options
    • Styled Google Map also has integration with Google's Directions service, so visitors can easily get turn-by-turn directions for how to reached their chosen location
    • The module also includes a demo submodule you can use to quickly set up a working example to illustrate all the different options available using Styled Google Map

The Drop Times: Modernizing Your Web Presence with Drupal

Hello Tech Enthusiasts,

In this edition, we’re exploring why Drupal is a smart choice for your website development needs.

Drupal’s modular design makes it highly scalable and flexible, allowing it to support everything from small blogs to large enterprise sites. This adaptability ensures your website can grow and evolve alongside your business without needing extensive overhauls.

Managing content on Drupal is straightforward, thanks to its intuitive interface. Even non-technical users can easily handle updates and changes. Additionally, with numerous themes and modules, customization is virtually limitless, enabling businesses to tailor their sites to specific requirements.

Security is another area where Drupal excels. Regular updates and a robust security framework protect your site from vulnerabilities. Plus, being open-source, Drupal benefits from a vibrant community that continually contributes to its development, ensuring continuous improvements and access to a wealth of resources.

Businesses across various industries have successfully used Drupal to create dynamic, secure, and scalable websites. For example, the University of Oxford leverages Drupal to manage extensive content libraries and facilitate complex workflows efficiently. You can read more about their experience here.

Drupal offers a powerful and versatile CMS solution for modern website development. Its scalability, ease of use, extensive customization options, and strong security make it an ideal choice for businesses aiming to enhance their web presence. Supported by an active community, Drupal continues to meet the diverse needs of its users.

With that, now explore some of the highlighted stories we covered last week:

Join The DropTimes (TDT) for its milestone 100th interview with Dries Buytaert, the innovative founder of Drupal. Interviewed by Anoop John, Founder and Lead of The DropTimes, this conversation explores Drupal’s rich history and transformative journey.

Learn how to migrate new content efficiently using Drupal's Migrate API. Jaymie Strecker's second part of this tutorial, "Using Drupal Migrations to Modify Content Within a Site," provides detailed examples of creating paragraphs, nodes, URL aliases, and redirects.

The 2024 Drupal Association board election is now open. Community members can nominate themselves until 30 July 2024. Voting begins on 15 August.

The Drupal Association's annual survey is now open! Digital service providers worldwide are invited to share their insights on market trends, growth opportunities, and more. Participate by September 4 to contribute to the comprehensive report and see the results presented at the CEO Dinner during DrupalCon Barcelona.

Varbase 10.0.0 has arrived, bringing a host of enhancements and new features to this comprehensive Drupal distribution. Built on Drupal 10, it offers improved performance, PHP 8.1 compatibility, and a modern CKEditor 5 integration.

Drupal Starshot is recruiting track leads to drive crucial project tracks, focusing on areas like Drupal Recipes, installer enhancements, and product marketing. Apply by July 31st to contribute to this innovative initiative and help shape the future of Drupal.

Mark Conroy introduces the LocalGov KeyNav module, enabling keyboard shortcuts for navigating LocalGov Drupal websites. This module, sponsored by Big Blue Door, enhances site usability with customizable key sequences for quick access to various pages.

DrupalCon Barcelona 2024 invites registered attendees to submit proposals for Birds of a Feather (BoF) sessions. BoFs provide an inclusive, informal environment to discuss Drupal, technology topics, or personal interests. Submit your BoF proposal by September 25, 2024, to join the conversation.

Gábor Hojtsy and Lauri Timmanee have released the open-source slide deck and video recording from their keynote on Drupal Starshot at Drupal Developer Days 2024. Access these resources for your events and presentations.

Sponsorship opportunities are now available for DrupalCamp Pune 2024, which will take place on October 19-20. This is a great opportunity to engage with the global Drupal community and showcase your brand.

Submit your session proposals for Twin Cities Drupal Camp 2024 by August 15. The camp, scheduled for September 12-13, 2024, welcomes diverse topics related to Drupal and web development.

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
Kazima Abbas
Sub-editor, The DropTimes.
 

The Drop Times: Why Should Agencies Respond to Drupal Business Survey?

"I will turn every stone, and I will turn them on time," notes a very confident Janne Kalliola. Over a decade ago, Janne's idea to host a dinner for Drupal business leaders at DrupalCon Prague 2013 sparked the Drupal Business Survey, now in its ninth year. In an interview with Alka Elizabeth, Janne discusses the survey's origins, its evolution, and the key players involved. He shares the benefits for the Drupal community, significant changes, and expectations for this year's survey, highlighting its role in gathering vital insights for Drupal businesses and agencies worldwide.

the floating-point divide: Using Drupal migrations to deploy new content

Using Drupal migrations to deploy new content Drupal Drupal 10.x Planet Drupal jstrecker 2024.07.14 @ 22:03

Following up on my previous article about using Drupal migrations to modify content, this article looks at importing new content into a site. I give examples of migrations that create paragraphs, nodes, URL aliases, and URL redirects.