In the previous blog, “Know-How To Manage Multi-Site Configurations in Drupal 8” (link of the same), we learned about managing configurations across multiple sites and acquiring features from the common core platform.
With modern software, it's easier than ever to build a website, load it with content, and maintain it. Software packages are more secure, much faster, and more user-friendly than they were just a decade ago!
Drupal 9.0.0-beta1 has been released, and we are expanding the scope of our beta testing program for minor releases of Drupal core, to include this major release as well.
We need help testing the following upgrade paths:
Agencies and other organizations who are supporting ambitious Drupal 8 sites are invited to be part of the beta testing program. By participating, you can help core maintainers by following the guidelines of the Beta Testing Program to install the beta core release on real-world examples of Drupal websites, in their staging environments. Beta testers can then provide feedback to the core maintainers about any issues they see running the beta core release in a structured way.
Being part of the Beta Testing Program is a key contribution to the Drupal project and also helps organizations to be very aware of any changes relevant to their supported websites.
Would your organization, and the Drupal project, benefit from participating in the Beta Testing Program? We'd like to get as many organizations involved as possible, so we can have a robust test of Drupal 9 before the release date.
You can apply to join here:
Agencies and site owners who maintain large and complex Drupal 8 production sites. In particular, sites that use a wide range of contributed and custom modules or have large volumes of content.How can I get ready?
To prepare for testing these upgrade paths, the best thing to do is to install and run the Upgrade Status module. This module will tell you which of your installed modules are already ready for Drupal 9. You can also check your custom code using the Drupal Check command line tool, and even generate fixes for common incompatibilities using Drupal Rector.How will participants benefit from contributing in this way?
- All organizations and individuals taking part in the testing will receive contribution credit for both testing the update and fixing any issues that arise.
- Updating early helps find issues beforehand, rather than after the release is out.
- Reporting issues encountered lets you tap the wealth of experience of the Drupal core contributors that you'd not have the same level of access to if you update on your own after the release.
- You'll have satisfaction in the knowledge that you helped shape the next major release of Drupal core.
Working from home (aka telecommuting) can be great for productivity and employee happiness. But not everyone is used to it – or prepared to do it (and many have been forced to recently because of COVID-19). At Kalamuna, we work on a distributed team, which means that most of us already work from home – and some of us are also used to setting up temporary workstations while travelling. It’s not always easy (or ideal), but a few small adjustments can make a big difference. Here are some of our team’s top tips for working effectively from the homefront.Categories Community Fun Guidance Project Management Responsive Design Author Patricia Rodriguez
The Covid-19 pandemic has shaken the entire world. The future seems uncertain and things aren’t going the way as planned. Yet, businesses must hang in there and assure their users on what they should expect from them. We have helped some of our clients create banner announcements on their Drupal websites to let their customers know –
- They are still operational
- Their working hours
- How they can help better in these uncertain conditions
- Precautionary actions that are underway
- Restrictions on available services
Great Southern Homes' Covid-19 Response Announcement
Of course, these announcement banners can be leveraged for any kind of informational messages that need to be displayed for a certain period of time. Let’s take you through this in two different ways. One is by creating a custom pop-up for announcements using Bootstrap modal in Drupal 8. This method offers more flexible customizations and detailing. The other option is a simpler one using the Drupal 8 Site Alert module.Creating a custom pop-up for announcements using Bootstrap modal In Drupal 8
For a fully customized announcement banner with a decent theming, editable announcement based on the user’s selection, we can go with this option. Showing banners to the visitors depends on the selection made in the configuration form.
Step 1: Since we are building a custom announcement banner, we need to have a custom module as every feature in Drupal is a module. Build the custom module according to these instructions.
Step 2: Also, the announcement needs to be configurable. We need to create an editable configuration form with required field. Follow these instructions to create configuration forms.
Step 5: Create a menu link for easy navigation in the custom module according to these instructions.
Step 6: Place the created block in a region for the configurations provided in custom configuration form.
Now you should be able to see the pop-up in the region for the specified path based on the configuration selection.
Custom pop-up for announcements using Bootstrap modal In Drupal 8Creating site announcement banners using the Site Alert Drupal module
This Drupal module has been around since Drupal 7. The Site Alert Drupal module is lightweight and simple which lets you create a site-wide informational message. It allows you to specify a start date and expiration date, severity of the alert message that is symbolized by the background color of the announcement and the content.
1.Enable the Site Alert moduleConfiguration->System->Manage Site Alerts in path
2.Create the announcement/alertadmin/config/system/site-alerts
3. Place and configure the Site alert block from block layout according to your requirementsStructure -> blocks
Image source - Drupal.org
We hope this information helps developers and site owners in keeping their customers informed on the changes that Covid-19 has brought about to their business operations.Drupal Planet Shefali ShettyApr 05, 2017 Subscribe For Our Newsletter And Stay Updated Subscribe
Leave us a CommentShefali ShettyApr 05, 2017 Recent Posts Image How to Create a Covid-19 Response Announcement on your Drupal 8 website Image A Peek into the UI/UX Universe (with examples) Image Drupal 8 Custom Modules – Creating efficient Drupal 8 modules with these best practices Want to extract the maximum out of Drupal? TALK TO US Featured Success Stories
Know more about our technology driven approach to recreate the content management workflow for 7.ailink
Find out how we transformed the digital image of world’s largest healthcare provider, an attribute that defined their global presence in the medical world.link
Discover how a Drupal powered internal portal encouraged the sellers at Flipkart to obtain the latest insights with respect to a particular domain.link
Today, I'm asking for your financial support for the Drupal Association. As we all know, we are living in unprecedented times, and the Drupal Association needs our help. With DrupalCon being postponed or potentially canceled, there will be a significant financial impact on our beloved non-profit.
Over the past twenty years, the Drupal project has weathered many storms, including financial crises. Every time, Drupal has come out stronger. As I wrote last week, I'm confident that Drupal and Open Source will weather the current storm as well.
While the future for Drupal and Open Source is in no doubt, the picture is not as clear for the Drupal Association.
Thirteen years ago, six years after I started Drupal, the Drupal Association was formed. As an Open Source non-profit, the Drupal Association's mission was to help grow and sustain the Drupal community. It still has that same mission today. The Drupal Association plays a critical role in Drupal's success: it manages Drupal.org, hosts Open Source collaboration tools, and brings the community together at events around the world.
The Drupal Association's biggest challenge in the current crisis is to figure out what to do about DrupalCon Minneapolis. The Coronavirus pandemic has caused the Drupal Association to postpone or perhaps even cancel DrupalCon Minneapolis.
With over 3,000 attendees, DrupalCon is not only the Drupal community's main event — it's also the most important financial lever to support the Drupal Association and the staff, services, and infrastructure they provide to the Drupal project. Despite efforts to diversify its revenue model, the Drupal Association remains highly dependent on DrupalCon.
No matter what happens with DrupalCon, there will be a significant financial impact to the Drupal Association. The Drupal Association is now in a position where it needs to find between $400,000 and $1.1 million USD depending on which scenario we are forced into.
In these trying times, the best of Drupal's worldwide community is already shining through. Some organizations and individuals proactively informed the Drupal Association that they could keep their sponsorship dollars or ticket price whether or not DrupalCon North America happens this year: Lullabot, Centarro, FFW, Palantir.net, Amazee Group and Contegix have come forward to pledge that they will not request a refund of their DrupalCon Minneapolis sponsorship, even if it will be cancelled. Acquia, my company, has joined in this campaign as well, and will not request a refund of its DrupalCon sponsorship either.
These are great examples of forward-thinking leadership and action, and is what makes our community so special. Not only do these long-time Drupal Association sponsors understand that the entire Drupal project benefits from the resources the Drupal Association provides for us — they also anticipated the financial needs the Drupal Association is working hard to understand, model and mitigate.
In order to preserve the Drupal Association, not just DrupalCon, more financial help is needed:
- Consider making a donation to the Drupal Association.
- Other DrupalCon sponsors can consider this year's sponsorship as a donation and not seek a refund should the event be cancelled, postponed or changed.
- Individuals can consider becoming a member, increasing their membership level, or submitting an additional donation.
I encourage everyone in the Drupal community, including our large enterprise users, to come together and find creative ways to help the Drupal Association and each other. All contributions are highly valued.
The Drupal Association is not alone. This pandemic has wreaked havoc not only on other technology conferences, but on many organizations' fundamental ability to host conferences at all moving forward. Just this week, we learned that there will be no future O'Reilly conferences, including OSCON. For the many of us who attended OSCON in the past, this truly is the end of an era.
I want to thank all donors, contributors, volunteers, the Drupal Association staff, and the Drupal Association Board of Directors for helping us work through this. It takes commitment, leadership and courage to weather any storm, especially a storm of the current magnitude. Thank you!
I want to thank you for your patience as the Drupal Association continues to manage the shifting landscape for nonprofits in light of COVID-19. In my last update, I explained that our ability to pivot our plans for DrupalCon depends on governmental intervention, which has not yet occurred for the time period in which DrupalCon Minneapolis is scheduled. Unfortunately this means we're still in a holding pattern as I write this.
That said, we're not spending this time idly. Many hours are being spent with our contracted providers and modeling financial outcomes for the Association and the project. Through all of this, it has become clear that, regardless of what happens next, we have to deal with the hard reality that DrupalCon revenue is a substantial part of what keeps the Drupal Association vital. We estimate the revenue loss to range anywhere from $400,000 to $1.1 million.
I’m now reaching out to you to help us close this gap so we may continue to support Drupal, thrive and serve you.
As an individual, join our membership program, or if you're already a member, consider making an additional donation and/or upgrading your membership level.
Both individuals and organizations can also simply make a charitable donation.
Well before this crisis hit, the board and our team have focused on decreasing our dependence on event-based revenue by launching new initiatives such as Drupal Steward, increasing our focus on digital partnerships, and revamping current programs including individual and organizational memberships. In addition, the board’s strategic planning includes continued diversification of revenue with an eye toward programs requested by our community like organizational certification and more visibility of those contributing to Drupal with time, talent, and treasure. A pipeline of products and services are in development, but they simply aren’t ready to launch yet.
Quite frankly, I’m heartbroken because the Drupal Association was on track to achieve many of our strategic goals, leading the organization down a more solid financial path while also expanding our capacity to meet our mission and serve our community. Only a few months ago, I found great energy and inspiration from the vision of presenting our strategic plans and reporting on our progress to you, in person, at DrupalCon. Absent the effects of COVID-19, I would have more good news to share with you about what we are accomplishing together.
Instead, we, like most of the world around us, are facing an unprecedented challenge that will only be solved with an unprecedented community effort.
Despite the difficulty of this news and understanding that these are uncertain times for everyone, we continue to cherish our amazing community. As I ask for your support, I want to thank those organizations who have stepped up to confirm their financial commitment: Acquia, Amazee Group, Centarro, Contegix, FFW, Lullabot, and Palantir.
I hope that you will join them.
Executive Director, Drupal Association
The joy of e-commerce is that there are myriads of products that differ in particular details so every customer can find what suits them perfectly.
As an online store owner, you will just need to help them a little — and this will be a win-win! Flexible product management is one of the reasons to choose Drupal Commerce, an e-commerce platform for Drupal websites. Today, we will discuss one of its useful opportunities — the option to set up product attributes in your Drupal online store.
Every business owner strives to be fully represented in the digital world and provide the most engaging experiences both for desktop and mobile users. They might want to build a mobile app. However, the task of great web development companies is to offer alternatives to every idea.
One of these interesting choices here is a progressive web app (PWA). Read on to learn more about PWAs, what they are, what makes them beneficial, as well as progressive web apps and Drupal integration.Read more
Drupal CMS offers a rich user interface and powerful content editing experience. There are a lot of contributed modules that enhance the system and its editing experience. One of the projects I was working with called for concurrent editing implementation. Concurrent editing simply means allowing multiple editors to edit the same content at the same time, without the possibility of conflicts arising due to concurrent actions.
In today’s editorial landscape, content creators can not only access a document countless times to revise and update content but also work with distributed teams. For this reason, concurrent editing has become among the most essential and commonly requested features for any content management solution.
The project (Layout Engine) involved configuring pages and blocks of a mobile application through Drupal.
A single page of a mobile application consists of multiple sections, these sections could contain data as per user’s locations or any other criteria. A page in Drupal was primarily a content type. We used paragraphs to configure blocks which we call widgets. So basically, a banner on the homepage of a mobile application is a widget.
These pages and widgets were configured by our client’s marketing team. Any page on the mobile app could consist of 'N' number of widgets. Due to a large number of widgets present, it was difficult for a single user to be familiar with all of them. Multiple members of the marketing team worked on the app simultaneously, making it difficult to edit the layouts/widgets.
Thus the client needed a system where multiple users could simultaneously edit the layouts and their widgets independently.
Collaborative editing has long existed as a concept outside the content management system (CMS). It is a limitation of Drupal at the moment, and we don’t see any solution for it in Drupal core soon. A big thanks to the members of the community who contribute their code in the form of modules making solutions available to the world in a quick google search.
We explored a couple of modules which fulfilled our requirements to some extent.| Paragraph Frontend UI
This module provides quick editing of widgets on the view page itself.
A user won’t have to go to the edit page and then search for the widget to update and then save the whole node. He can do it quickly on the view screen. We believed this would allow multiple users to quickly edit the widgets and will solve the issues. But, it turned out that the module throws a deadlock error when multiple users are updating different paragraphs of the same node. Therefore, we discarded the possibility of using the Paragraph Frontend UI module.
The next module we explored was the Paragraph Edit module. It provides a separate page to edit the paragraphs through the contextual links. It does not break when multiple users attempt to edit different paragraphs simultaneously. But the issue with this approach was that it supported separate editing only. So if a user had to create a new paragraph/widget, he/she had to go to the edit node form. The tricky part here is, if an editor is on the node edit form while some other editor made changes through the quick link, the current form will contain the old data. In this case, when a user saves the node, it will revert those changes to the previous version. We did not want that either.| Conflict
It does not have any additional configuration attached to it. I am adding two screenshots below to show how it works. This is what the second user will see when the first user has already saved the node and content is in the database. To know more visit - https://www.drupal.org/project/conflict
Once the user clicks on the 'resolve conflicts' button, it shows two versions of each field, something like in the following screenshot. Users have to manually update the field accordingly and need to save the content again.
This module is a good solution under the following instances:
If the node form has a simple structure and the user can afford to update the content manually. In a complex architecture where we use paragraphs to provide flexibility to the editors, this will create a lot of confusion.
It only works for two users as you can see in the screenshot above, it shows what is the difference in the server. If a third user is editing the content at the same time, it will override the changes of the second user.
As the name suggests this module locks the content for the first editor who started to edit the content. Any other editor will see the message and all the fields will be disabled for him/her.
Features of Content Lock (anti-concurrent editing):
The lock will break when the user saves the content. The other user will see the message and will know who is editing the content at the moment.
If a user doesn’t save the content, it has a submodule called content_lock_timeout where we can set a time for the content to hold the lock. It breaks the lock on cron run as well as when the second user comes to the edit node.
It has an option to manually break the lock as well, so a user with the permission to break the lock can also free the content from the editor.
The content lock was used until we had a proper solution for concurrent editing.
After countless discussions with the marketing team, we decided to provide a solution to overcome the concurrent editing problem. We decoupled all the widget creation as a separate node and referred those nodes into the Layouts. This way, everybody had control on their own widgets and they did not need to wait for the content lock to end.
If you happen to have a better solution for concurrent editing, we would love to hear about it!
SUMIT MADAN Wed, 03/25/2020 - 14:49