LN Webworks: Why Fortune 500 Companies Use Drupal? And it’s importance

Planet Drupal - Thu, 2023/04/27 - 11:49am

There are no second thoughts when it comes to Fortune 500 companies being the most prestigious organizations in the world. These largest companies from the United States have fabulously established themselves globally and earned the enormous stature that all other organizations envision accomplishing. If we dig deeper into their success stories, we’ll realize that it is a product of the intersection of multitudinous small fragments. Employing an incredible management team, deploying a user-centric strategy, using cutting-edge tools, and having a strategic focus are some of them. When it comes to the list of top-notch tools employed by a majority of these organizations, Drupal tops the list. It is basically a content management system (CMS) and e-commerce software solution. 

Categories:

Debug Academy: How We Got our Entire Drupal Team Acquia Certified?

Planet Drupal - Wed, 2023/04/26 - 10:01pm
How We Got our Entire Drupal Team Acquia Certified?

At Debug Academy, we pride ourselves on having a team of highly skilled Acquia Certified Drupal developers. This wasn't a goal we set or a requirement for employment, yet every developer who has ever worked with us has become certified while working here at Debug Academy.

 

How did we do this? 

 

Many people and companies struggle to find the time and resources to prepare for the Acquia Certification exam. And not preparing is not an option. Even experienced Drupal developers can fail the exam without proper preparation. The Acquia Certification exams are notoriously difficult for several reasons: 

  • They cover a vast range of Drupal knowledge, including topics that many developers are not familiar with

  • They test on best practices, meaning there may be multiple technically correct answers, but only one that is the best practice approach

Amani.Mansour Wed, 04/26/2023
Categories:

Consensus Enterprises: Aegir5: Queue Architecture

Planet Drupal - Wed, 2023/04/26 - 4:00pm
Previously in this series, we looked at the Aegir5 front-end interface architecture, as well as the lower level entities, Tasks and Operations that provide building blocks. As mentioned in the first part of the series, our most recent work on Aegir5 itself has been reworking the queue system. In this post, we explore this topic in more detail. The Aegir5 queue is implemented using Celery, which is a full-featured Python-based task queue, built atop RabbitMQ.
Categories:

LN Webworks: Drupal E-Commerce Websites Challenges And Benefits

Planet Drupal - Wed, 2023/04/26 - 11:57am

Today, having an e-commerce website is indispensable for making your business move in an upward spiral of growth. Drupal Commerce, a powerful e-commerce framework built on Drupal, is undoubtedly the most preferred content management system (CMS) across the globe. Online shopping has become so prevalent that if you stick only to your brick-and-mortar store, you are going to miss out on something that can fast-track your business’s growth. According to research, 67% of Millennials and 56% of Gen Xers prefer to shop online rather than buy from traditional stores.

Categories:

Web Omelette: Drupal 10 module development - it’s out!

Planet Drupal - Wed, 2023/04/26 - 9:43am

Drupal 10 module development - the fourth edition of the Drupal module development guide by Daniel Sipos is now available and can be purchased on Packt, Amazon and all the major retailers.

Categories:

Opensource.com: Test your Drupal website with Cypress

Planet Drupal - Wed, 2023/04/26 - 9:00am
Test your Drupal website with Cypress cobadger Wed, 04/26/2023 - 03:00

Testing makes everything better. Learn how to use Cypress for your Drupal website.

If you don't include tests in your Drupal development, chances are it's because you think it adds complexity and expense without benefit. Cypress is an open source tool with…

Categories:

MidCamp - Midwest Drupal Camp: It's MidCamp Week!

Planet Drupal - Tue, 2023/04/25 - 4:20pm
It's MidCamp Week!

MidCamp week is upon us and there’s so much happening! Our last post laid out the schedule for the week, and we have a few hot-off-the-press updates:

Health & Safety

Please exercise COVID-safety precautions before and on your way to camp. 

MidCamp takes the safety of its sponsors, speakers, volunteers, and participants very seriously. Please review our Health & Safety Policy before attending. We’ve added a section detailing what to do if you become sick or test positive and request that you anonymously report your case .

Categories:

Drupal Association blog: Drupal officially achieves recognition as a Digital Public Good

Planet Drupal - Tue, 2023/04/25 - 4:00pm

PORTLAND, Ore., 25 April, 2023 – The Drupal Association is thrilled to announce that Drupal, the most powerful open source content management system in the world, has been approved as a Digital Public Good (DPG) by the Digital Public Good Alliance (DPGA). Drupal's registration as a DPG is a recognition of the positive global impact that Drupal has had in promoting equity as an open source technology.

“Registration as a Digital Public Good is an acknowledgment of the important role that Drupal and the Drupal Community plays in advancing the Open Web.” commented Tim Doyle, CEO of the Drupal Association. “We are proud to be a part of the registry and support the efforts of the Alliance in prioritizing open source digitalisation for the improvement of public service delivery.”

Drupal is now listed on the Digital Public Goods Alliance DPG Registry. For Drupal, being recognized as a Digital Public Good—defined as open source software, open data, open AI models, open standards, and open content that adhere to privacy and other applicable laws and best practices, do no harm, and help attain the SDGs—is an honor and an important step for Drupal’s future. The official designation gives further confidence to public sector, educational, and social-impact organizations that Drupal is the best choice for building their digital presence.

The goal of the DPGA and its registry is to promote Digital Public Goods in order to create a more equitable world and help attain the United Nation’s Sustainable Development Goals. DPGs represent an opportunity to enable countries to access cutting edge features, drive their own digital transformation processes, and grow their local ecosystems. As open source solutions, DPGs can be the basis for community building, knowledge sharing, and joint approaches. Local adaptations and iterations can be shared back with Drupal to help continuously improve it and ensure its long term sustainability. To become a digital public good, all projects are required to meet the DPG Standard.

Dries Buytaert, the founder of Drupal, has been referring to open source and Drupal as a public good for several years (see: Balancing Makers and Takers to Scale and Sustain Open Source) Formal recognition as a Digital Public Good is a further step in highlighting the benefits of open source, but also the challenges that exist in sustaining it.

Thank you to all of the community members who collaborated with us on Drupal's application and who helped make the DGP title official!

About Drupal and the Drupal Association
Drupal is the open source content management software used by millions of people and organizations worldwide, made possible by a community of 100,000-plus contributors and enabling more than 1.3 million users on Drupal.org. The Drupal Association is a non-profit organization dedicated to accelerating the Drupal software project, fostering the community, and supporting its growth. Learn more, and please consider supporting Drupal’s mission.

About the Digital Public Goods Alliance

The Digital Public Goods Alliance is a multi-stakeholder initiative endorsed by the United Nations Secretary-General, working to accelerate the attainment of the Sustainable Development Goals in low- and middle-income countries by facilitating the discovery, development, use of, and investment in digital public goods.

For more information on the Digital Public Goods Alliance, please reach out to hello@digitalpublicgoods.net.

Categories:

Matt Glaman: Are you ready for Drupal 11 in 2024?

Planet Drupal - Tue, 2023/04/25 - 3:18pm

Drupal 11? Yes! Drupal 11 is going to release on August 2024 or December 2024. That's only a year and a half away when writing this blog post. So, when should we start preparing modules and sites for Drupal 11? Now! Preparing for the next major version of Drupal should not be a mad dash but a consistent process.

I'll be presenting at MidCamp tomorrow about lessons learned from this past Drupal 10 readiness effort. While strenuous, the Drupal 10 readiness work for contributed modules went well. It definitely went faster than Drupal 9. And that is because we have better tooling and processes. Those tools and processes need more refinement as we prepare for Drupal 11.

Categories:

LN Webworks: Unlock the Power of Drupal 9 for Your Multilingual Website

Planet Drupal - Tue, 2023/04/25 - 1:55pm

The internet has dissolved the borders separating different countries to a great extent. Today, we can connect with someone miles apart within a fraction of a second, all thanks to internet technology. The internet, powered by incredible technologies such as Drupal 9 and multilingual websites, has broken down borders and connected people from all corners of the globe.



It depends on us whether we opt for internet calling, emailing, or chatting, but one thing is certain we are just a click away from those we aspire to connect with. Such incredible advancements have not only empowered human relationships, but have also opened monumental opportunities for businesses. If you have an inner hunger to establish your brand globally, nothing can confine you today. All you require to do is build a multilingual website and you are ready to reach a global target audience effortlessly.

Categories:

Jacob Rockowitz: Frequently Asked Questions (FAQ) about the Schema.org Blueprints module for Drupal

Planet Drupal - Tue, 2023/04/25 - 1:53pm

In a recent blog post, I asked, "Is there no future for the Schema.org Blueprints module?" I wrote the blog post to determine what is next for the Schema.org Blueprints module. The overall feedback was positive, with very constructive criticism and advice. Reading the replies on Twitter, the comments on my blog, the pings in Drupal Slack, and tickets in the module's issue queue, I realized that people are interested in the Schema.org Blueprints module's overall goal, which is to build standardized and reusable content models in Drupal. Most of the questions and feedback I received were around clarifying the Schema.org Blueprints module's use case, getting started, and the project's roadmap.

Within the feedback, people raised many questions about the Scheme.org Blueprints module. I collected their questions and created a reasonably large FAQ page.

The first question I am answering is, "What problem is the Schema.org Blueprints module trying to solve?"

The FAQ page further defines the goals, use case, process, and best practices for the Schema.org Blueprints modules. I am still perfecting my elevator pitch for why someone should take a Schema.org-first approach and use this module. Once I can entice someone to try the module, the next step is to be helping them install,...Read More

Categories:

The Drop Times: The Boy Who Built His Website at 11: Interview with Matt Glaman | MidCamp 23

Planet Drupal - Tue, 2023/04/25 - 12:11pm
Matt has always been fascinated with Drupal and knows it to be an extremely powerful framework for building applications.
Categories:

Specbee: Understanding Update and Post Update Hooks for Successful Site Updates

Planet Drupal - Tue, 2023/04/25 - 8:44am
Understanding Update and Post Update Hooks for Successful Site Updates Ankitha Shetty 25 Apr, 2023 Subscribe to our Newsletter Now Subscribe Leave this field blank

During core updates or module updates, it is crucial to ensure the stability and integrity of your Drupal website. Luckily, the Update API module and Update/Post Update Hooks are here to help.

The Update API module provides the hooks that are necessary for updating code and modules on your Drupal site. These hooks are nothing but Update and Post-Update Hooks which allow developers to customize updates according to their needs.

In this article, we’ll discuss the Update API, what are update and post-update hooks and when and how they should be used. By understanding both types of hooks, you can successfully update your Drupal site with minimal effort. Let’s get started!

The Update API

While working on an existing site, when you update code in a module, you may need to update stored data so that the stored data is compatible with the new code. You might have noticed errors like ‘The website encountered an unexpected error’ flash in front of you. Scary right!? I know! This is where Drupal’s Update API comes to our rescue.

If the update is between two minor versions of your module within the same major version of Drupal core, you can use the Update API to update the data. Update API allows you to provide code that performs an update to stored data whenever your module makes a change to its data model. The data model change refers to any change that makes the stored data on an existing site incompatible with that site's updated codebase. These Data model changes involve:

Updating the Configuration Schema
  • Adding/removing/renaming a configuration key.
  • Changing the data type of the configuration key.
  • Changing the expected default value of a configuration key, etc.
Updating the Database Schema
  • Adding/changing/removing a database table or field.
  • Moving the stored data to a different field or table.
  • Changing the format of stored data, etc.
Updating the Entities & Fields
  • Adding a new base field to an existing entity type.
  • Updating a field from an obsolete type to a new type, etc.
Updating the Data
  • Manipulate the stored data on an existing site.
Working with Update hooks

Hook hook_update_N() is used to introduce an update between minor versions of a module. These hooks are placed within your module in the *.install file.

The hook_update_N() is written in the form of (module name)_update_(number). Here N comprises of:

  • 1 or 2 digits refer to the  Drupal core compatibility (Drupal 8, 9, 10, etc.)
  • The next 1 digit is for your module's major release version
  • The last 2 digits for sequential counting, starting with 01

Example:

example_update_9201(): The first update for the 9.x-2.x versions.
Where ‘example’ is the name of the module, the first digit refers to Drupal core version ‘9’, the number ‘2’ refers to the module’s major release version and the last two digits ‘01’ indicates the first update function written for module ‘example’.

The numeric part of the hook implementation function (i.e, 9201 in the above example) is stored in the database to keep track of which updates have already been executed. So you should never renumber update functions.
To know the current schema version of a module ‘example stored in database’, use:

drush php-eval "echo drupal_get_installed_schema_version(‘example’);"

 

To manually set the current schema version of a module ‘example’ back to ‘9201’, use:

drush php-eval "echo drupal_set_installed_schema_version('example', '9201');"

 

Note: Please try to avoid using  drupal_set_installed_schema_version() function on production sites as it directly updates your database. You can use it on your local or lower test environments during development to reset the schema version.

Add a proper description in the document block comment before the update hook function as it will be printed for the users while running it.

Structure of hook_update_N(): /**  * A aimple hook_update_N() hook.  */ function example_update_9201() {  // Code goes here. }

These hooks are executed in sorted order, i.e., example_update_9201() hook executes before example_update_9202(), next is 9203, 9204 and so on.

You can also change the sorted order of these hooks, by introducing dependencies between the hooks. Use the hook hook_update_dependencies() to run updates between two update hooks.

 

All the update hooks are executed in batch and they also support batch processing of items. All update hooks have access to a $sandbox parameter which can be used to create batch processes in the update hooks in order to process huge data at once without causing any PHP to timeout.

A simple example of an update hook to add a new configuration key:

Currently, the example_module.settings.yml file contains:

 

 

To add a new key ‘description’ to the configuration:

  • Add the ‘description’ key to the settings file

 

  • Add the update_hook in example_module.install file:

 

  • Use  drush updb to run the hook.

 

  • Check the updated configuration, the new key ‘description’ is updated.
Working with Post Update hooks

Hook hook_post_update_NAME(), similar to the update hook, is used to introduce an update. But this hook is mostly intended to update data, like entities. These hooks are executed after all the hook_update_N() hooks are run. At this stage, Drupal is already fully repaired so you can use any API within the site.

These hooks are placed in a *.post_update.php file in your module.

The hook_post_update_NAME()is written in the form of (module name)_post_update_(any name). Here NAME can be any arbitrary machine name. This alphanumeric naming of functions in the file is the only thing that ensures the execution order of this hook.

Similar to update hooks, add a proper description in the docblock comment before the post_update hook. Also, do not reuse the same hook name.

Structure of hook_post_update_NAME():

/**  * A aimple hook_post_update_NAME() hook.   */  function example_post_update_test() {   // Code goes here. }

Just like with update hooks, use the $sandbox parameter to indicate that the Batch API should be used for your post_update hooks.

A simple example on the usage of post-update hook to update the term data:

  • Currently, all the terms under Tags vocabulary have a disabled ‘Test example’ field.
  • Add a post_update hook in example_module.post_update.php file to enable the ‘Test example’ field for all the existing terms.

 

  • Use  drush updb to run the hook.

 

  • Verify the updated term data, the checkbox ‘Test example’ must be enabled.
How to Run these hooks!

You can use the Drush command to execute these hooks, drush updb.It builds the batch in the following steps:

  • All the update hooks are discovered.
  • Resolves dependency and sort their order.
  • Hooks are placed for batch processing.
  • Next, all the Post hooks are discovered.
  • If there are post_update hooks, and if update_hook has run previously, then caches are cleared.
  • Then, push each post_update hook into the batch.
  • Execute the batch.

One major advantage the post-update hook has over the update hook is that Drupal is fully functional at the time post-update is run. This allows developers to use any Drupal services while using the post-update hook. With the update hook, one must not assume that Drupal is fully repaired and avoid invoking other hooks, entity APIs, etc.

Final Thoughts

When trying to fix your site by updating config/database schema try to use update hooks. When comes to manipulating stored data, resaving configs, updating content entities, clearing the cache, etc then post-update hooks are more appropriate to use.

To be honest, there is no clear documentation on Drupal.org regarding when to use which hook! There is an open issue requesting to improve documentation on the usage of these two hooks to which you can contribute if you like.

But based on the developers' experience and by looking at the Drupal 9 & 10 core modules as an example, use update hooks to perform CRUD operations on configurations or databases (i.e repair the site) and use post-update hooks for CRUD content entities (then fix the data on the updated site), as post-update hooks are run after update hooks.

Enjoyed reading this article? Show us some love and subscribe to our weekly newsletter today!

Author: Ankitha Shetty

Meet Ankitha Shetty, a certified Drupal 9 developer. She loves attending and presenting at Drupal Camps and is a very active community member. Ankitha enjoys watching cricket and traveling to hill stations. Binge-watching web series is her current favorite pass time while she’s not cheering for her favorite cricket team :)

Email Address Subscribe Leave this field blank Drupal Drupal 9 Drupal 10 Drupal Development Drupal Planet

Leave us a Comment

  Recent Blogs Image Understanding Update and Post Update Hooks for Successful Site Updates Image Embracing Achievements - Gagana Girish’s Living Dream Image Data Security Matters: Marketers' Guide to Securing Your CMS Want to extract the maximum out of Drupal? TALK TO US Featured Case Studies

Upgrading the web presence of IEEE Information Theory Society, the most trusted voice for advanced technology

Explore

A Drupal powered multi-site, multi-lingual platform to enable a unified user experience at SEMI

Explore

Great Southern Homes, one of the fastest growing home builders in the US, sees greater results with Drupal

Explore
View all Case Studies
Categories:

The Higglers Company: Introduction to Drupal hook update

Planet Drupal - Mon, 2023/04/24 - 10:52pm
Writing drupal hook_update_N() in Drupal 8, Drupal 9, Drupal 10. This also describes why hook update is needed, how it is formed.
Categories:

Talking Drupal: Talking Drupal #396 - Drupal Security

Planet Drupal - Mon, 2023/04/24 - 8:00pm

Today we are talking about Drupal Security with Mark Shropshire & Benji Fisher.

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

Topics
  • Why do you care about security
  • Best tips for securing Drupal
  • Common Security Issues people have with Drupal
  • Convincing module maintainers to do full releases
  • Testing to ensure security
  • Guardr Drupal security distribution
  • What does the Drupal Security team do
  • Finding issues
  • Review compromised sites
  • Becoming a member
  • Process for writing security notices
  • Helping the security team
Resources Guests

Benji Fisher - tag1consulting.com @benji17fisher Mark Shropshire - shrop.dev @shrop

Hosts

Nic Laflin - www.nLighteneddevelopment.com @nicxvan John Picozzi - www.epam.com @johnpicozzi Jordan Graham - @jordanlgraham

MOTW Correspondent

Martin Anderson-Clutz - @mandclu CrowdSec Integrates your Drupal site with the open source CrowdSec Security Engine, a collaborative malicious activity detection and remediation tool.

Categories:

The Drop Times: Listen, Learn, and Improve

Planet Drupal - Mon, 2023/04/24 - 4:41pm

Most of us want to be better versions of ourselves. Individuals, communities, organizations, and nations strive to progress in these changing times. However, it is not an easy task to achieve.

Progress comes through the knowledge of the present and a vision of the future. It begins with introspection. It requires one to point fingers at themselves rather than at others. It needs us to know our depths.

Apart from that, one needs to keep your eyes and ears open to new things. To new developments, new people, and new inspirations. Fresh water must keep flowing in to help a river do justice to its name.

A strong belief in our abilities must be at the heart of the journey forward. We must not forget who we are. We must not take our eyes off the goals that are there for us to achieve.

Progress isn’t a mechanical activity. Mind you; it won’t happen on its own. It awaits only mindful individuals or organizations that are self-aware. Open your eyes and ears. Humble yourselves to learn more. Above all, never let go of any chance to improve.

Now, let me walk you through the handpicked stories from the past week:

Drupal founder Dries Buytaert made some exciting announcements through his blog. Mautic, the marketing automation firm owned by Acquia, has now gone independent. Like Drupal, the community will drive its development. In another blog post, Dries disclosed the details of the Pitch-burgh contest that aims to encourage innovation. It will happen alongside DrupalCon Pittsburgh. Interestingly, Pitch-burgh is inspired by Shark Tank, the famous US TV show.

In another article published on opensource.com, Dries goes on to explain why it is essential to promote the Open-Web. Co-founder of PreviousNext, Owen Lansbury, has published a blog post on how a culture of open-source contribution helps his organization.

Aaron Winborn Award nominations are about to close. Do not forget to nominate Drupal community members who you think deserve the prize.

TDT conducted an in-depth interview with Jill Moraca. Princeton University’s Web Development Services Director responds to the questions posed by our Sub Editor, Alethia Rose Braganza.

We published a list of 5 YouTube videos for Drupal beginners. Another listicle presents 5 known Drupal modules you may not have installed.

Talking about security updates, two important ones were released last week. A new update to the DXPR theme helps its users comply with European privacy rules. Drupal has published a security update that clears an access bypass vulnerability.

Regarding Drupal events, DrupalCon Lille has released the last call for session submissions. Drupal Camp Asheville has extended the deadline to submit sessions. The Drop Times is now an official partner of the event.

The organizers of DrupalCamp Finland have published the final schedule. Those attending DrupalCamp Poland will get to explore Wrocław. The 2023 edition of MidCamp is set to begin on the 26th. The organizers of DrupalCamp Ruhr have designed Tshirts for the event on May.

Forms API helps to make forms in websites more enjoyable. Specbee has published a post on how to set up the same. Specbee also offers insights on how to use BEM methodology with Drupal and Data Security for Marketers who use CMS.

Velir has published a blog post on three new interesting modules for Drupal 10. Chapter Three shares information about hosting decoupled sites. LN Webworks has published a how-to guide on website personalization. Drupixels shares insights on the uses of the Automatic Entity Label module. OpenSense Labs writes about Drupal 10 Recipes.

A blog post published by Valuebound shows how to setup PHPUnit in Drupal 9 and 10. Opensources.com shared an article on how to use Autoloading and Namespaces in PHP. Drupal sites can now access Jonckers language services through a connector developed by the company.

A free webinar hosted by Drupal Partners will provide insights into Digital Marketing. Drupal Meetup at Zurich will discuss AI-powered search indexes and Splash Awards. The Drupal Bangalore User Group is all set to hold its monthly meetup on the 29th.

That’s all from the past week. We will update you with exciting stories from this week following Monday.

Sincerely,
Thomas Alias K
Sub Editor, TheDropTimes

Categories:

LN Webworks: Why is Drupal the Perfect Choice for Building Mobile-Compatible Websites?

Planet Drupal - Mon, 2023/04/24 - 1:36pm

Smartphones have taken the world of the internet to a whole new sphere. Today, consumers can effortlessly access a plethora of websites anytime and from anywhere through their mobile phones. It is fascinating to note that mobile devices contribute to around 62% of all e-commerce traffic globally. Without expending much energy on thinking, we can easily figure out why this exactly happens. After all, we all are smartphone users. Whenever we find some time, the first thing we do is look at our mobile phones. Besides, a whopping 56% of people spend their daily free time shopping online through their smartphones.

Categories:

LN Webworks: Challenges in Drupal Migration and How to Solve Them?

Planet Drupal - Mon, 2023/04/24 - 10:17am

Nothing worthwhile comes easily. Work, continuous work, and hard work, is the only way to accomplish results that last.” - Hamilton Holt



Drupal has undeniably been the most eminent enterprise content management system (CMS) since its inception. Once it started its journey of customer acquisition, there was no looking back. Even today, Drupal enjoys the stature of being the most admired CMS in the world. One of the major factors that contribute to its immense success is the brand’s relentless pursuit to deliver unmatchable services to its clients. This bespeaks its customer-first approach. Every two-to-three years Drupal updates its systems to ensure cutting-edge security and top-notch features.

Categories:

Promet Source: How to Get Started with Drush

Planet Drupal - Fri, 2023/04/21 - 8:30pm
Drush often serves as a utility knife for Drupal developers. It can be used to set up drupal,  maintain it and deploy it.  Drush is a command line shell and Unix scripting interface for Drupal. It runs update.php, executes SQL queries, runs content migrations, along with utilities such as cron or cache rebuild.  The word Drush is a combination of two words: Drupal + Shell. A shell is a command line tool for simplifying the management of websites by writing commands.   Why Use Drush Here are the main advantages of using Drush:
Categories: