The Drop Times: Drupal Related Events This Week

Planet Drupal - Mon, 2023/03/06 - 10:18am
The Drupal community never rests on Drupal expertise, learning, and training. Check out this weeks events.

Colorfield: Visual regression testing for Drupal migrations with Playwright

Planet Drupal - Mon, 2023/03/06 - 9:30am
Use Playwright visual regression testing on a large sample of content to test a migration between two editorial solutions.

clemens-tolboom opened an issue in Zireael07/FreeRoamRoguelikeRacerPrototype

On github - Mon, 2023/03/06 - 9:10am
clemens-tolboom opened an issue in Zireael07/FreeRoamRoguelikeRacerPrototype · March 6, 2023 08:10 Better rename `master` into `3.x` **and** rename `4.x` into `main` #9

Something like 3.x git checkout master git checkout -b 3.x git push --set-upstream origin 3.x 4.x aka new main git checkout 4.x git checkout -b ma…

Zyxware Technologies: Drupal Updates vs Upgrades vs Migrations: What's the Difference and When Do You Need Them?

Planet Drupal - Sat, 2023/03/04 - 1:30am
In the world of Drupal, the words updates, upgrades, and migrations often cause confusion. This article tries to explain what these words mean and the difference between them in the context of maintaining a Drupal website. By clearly understanding these terms, you can take appropriate actions and ensure that your Drupal site is always up-to-date and secure.

The Drop Times: Stay Tuned for Interview with John Jameson | DrupalCamp NJ

Planet Drupal - Fri, 2023/03/03 - 2:55pm
Our Interview with DrupalCamp NJ Speaker John Jameson, who is a Digital Accessibility Developer at Princeton University will be published tomorrow.

The Drop Times: Shouldn’t Let Imposter Syndrome Keep You from Trying: John Jameson | DrupalCamp NJ

Planet Drupal - Fri, 2023/03/03 - 9:04am
"Like all the best positions, it is something we invented to fit a need." Says Digital Accessibility Developer at Princeton University, John Jameson in our recent interview with him. This is out First Interview for DrupalCamp NJ 2023.

CKEditor: CKEditor 5 Premium Features module now stable

Planet Drupal - Fri, 2023/03/03 - 7:58am

Did you know that CKEditor, the default editor offers you yet another leap forward that’s really easy to take? Since its beta release in September 2022, the CKEditor 5 Premium Features module has allowed users to quickly integrate collaboration and productivity features into their projects.

Now that it’s production ready, this blog post dives into all the exciting features that the stable version of the CKEditor 5 Premium Features module has to offer. Discover the power of comments, suggestions, real-time collaboration, and export plugins in Drupal 10!


Evolving Web: Hands-On With Drupal 10: Olivero, a New Theme With a Meaningful Name

Planet Drupal - Fri, 2023/03/03 - 7:38am

It was high time we said goodbye to Bartik. Having been Drupal’s default front-end theme for over a decade (from Drupal 7 to 9.4,) Bartik was quite the veteran. And although it served users well for many years, the theme didn’t get any major updates after 2011. Its age began to show: aside from an increasingly dated look, Bartik didn’t evolve to work well with new functionality such as Layout Builder.

Bartik got its figurative cannon salute in 2022. It was retired and replaced with Olivero: a modern and accessible theme for the future. 

The idea for Olivero was conceived in a hotel lobby at DrupalCon Seattle, 2019. It grew into the Drupal 9 theme initiative, with considerable support from Dries and key contributors. Over several years, the Olivero Team worked to build a cutting-edge theme based on five design principles:

  • Simple: a clutter-free environment that’s easy to navigate and use
  • Modern: support for the latest browser features and interaction modes
  • Flexible: gives multiple options to Drupal front-end developers
  • Focused: includes eye-catching, meaningful design elements
  • Accessible: WCAG Level AA compliant from the ground up

Olivero was initially introduced as an experiment in Drupal 9.1. It’s now the default front-end theme in Drupal 9 and Drupal 10. (Bartik is deprecated in Drupal 9.5 and unavailable in Drupal 10.)


"It looks amazing, and it’s also by far the most accessible theme that we’ve ever shipped in the history of Drupal."

– Dries Buytaert, DrupalCon Portland 2022’s Driesnote

Drupal 10’s default theme is clean, modern, and accessible. 

Rachel Olivero’s Legacy of Championing Accessibility 

The Olivero theme was named in memory of Rachel Olivero, who passed away in 2019. Rachel was an accessibility advocate and a valued member of the Drupal community. As a person who was blind, transgender, and a lesbian, Rachel had a deep understanding of the importance of inclusivity and a passion for making technology better for everyone. 

"We chose the name Olivero not just because we have made accessibility a top priority, but also because we aspire to develop this new theme in our community in a manner that is consistent with the qualities that Rachel Olivero embodied, including patience, generosity, and inclusivity."

– The Olivero Team

A Rundown of the Olivero Theme’s Best Features Modern Colour Palette 

Olivero uses a vivid blue as its base colour for a bright, professional look that gives a subtle nod to Drupal’s branding. Neutral grays provide visual balance. The palette provides both dark and light shades, as well as secondary colours, to enable an accessible, high-contrast design. 

A clean, accessible colour palette gives Drupal 10’s default theme a modern look and feel. 

Simple Forms and Buttons

Content editors will be delighted with the simple elegance of text fields, checkboxes, radio buttons, and submit buttons in Drupal 10’s default theme. 

Web accessibility is clearly at the forefront of the design. Forms are simple for users to fill out thanks to their uniform look and clear labels. Buttons are high-contrast and have easily-perceivable focus modes that work well for keyboard users. 

Forms are clear and clutter-free in Olivero. 

Accessible Typography

Olivero makes content more readable and scannable thanks to a base font-size of 18px for body copy. Other text elements are scaled accordingly and typography is adjusted for mobile devices. The Olivero team gave particular focus to maintaining consistency throughout line-height and spacing. 

Olivero also perfectly displays right-to-left languages including Urdu, Arabic, and Hebrew. This is critical for supporting Drupal’s multilingual capabilities. 

Typography is scaled to provide a responsive, accessible, and consistent experience for users. 

Intuitive Headers and Menus

The header in Olivero can collapse into a hamburger menu as the user scrolls down the page. This means users have easy access to the navigation links regardless of where they are on the page. Olivero also supports secondary dropdown menus in Drupal – something that wasn’t possible with Bartik.

There are multiple versions of the header to choose from. All of them are designed to seamlessly incorporate any type of logo. 

An animated, sticky hamburger menu makes navigation easier for users. 

Eye-Catching Messages 

Olivero uses brightly coloured icons to convey the purpose of different types of messages. Error, alert, and success messages are displayed in boxes with plenty of padding to ensure they’re noticeable and easily readable. 

Olivero has an eye-catching design for messages.

Useful Sidebar 

Olivero features a sidebar that floats next to the primary content. This is a great place to display things like related content and social buttons. 

Improvements for Developers

Taking a lead from Claro, the new default admin UI, Olivero has implemented PostCSS to reduce maintenance overhead. It uses CSS Grid to help developers build complex layouts more easily. And for added flexibility, Olivero uses CSS custom properties to enable front-end developers to customize the theme on a block-by-block basis.


Planning to migrate to Drupal 10?

//--> //-->

+ more awesome articles by Evolving Web

Axelerant Blog: How Acquia DXP Is Empowering Businesses To Design Digital Experiences

Planet Drupal - Thu, 2023/03/02 - 2:59pm

Customer experiences are more than touchpoints. Instead, it’s about enhancing relationships and delivering value across the customer journey. A Digital Experience Platform (DXP) provides the architectural foundation and modular service that makes this possible. It enables organizations to deliver consistent, meaningful, and relevant experiences across all intersections.


Axelerant Blog: Shifting To Mautic After 12 Years Of Being A Drupal Engineer

Planet Drupal - Thu, 2023/03/02 - 1:21pm

This article captures how one can start their journey with Mautic—through a personal story.


Salsa Digital Drupal-Related Articles: The CivicTheme 1.4 release

Planet Drupal - Thu, 2023/03/02 - 1:00pm
What’s in the CivicTheme 1.4 release? The recent CivicTheme 1.4 release includes a major review of all components and over 100 bug fixes. Some of the bigger changes include: New Event content type  Standardisation across all CivicTheme cards New support for external links  Updates to filters for automated lists Automatically generated component pages for visual regression testing New documentation The release of CivicTheme on New Event content type The new Event content type provides event-specific fields. For example, time and date, and location (with the ability to embed a map URL or add in an address). Event cards can then link to this content.  Standardisation across all CivicTheme cards CivicTheme boasts an extensive range of different cards.

clemens-tolboom commented on issue dmontagu/fastapi-utils#256

On github - Thu, 2023/03/02 - 10:02am
clemens-tolboom commented on dmontagu/fastapi-utils#256 · March 2, 2023 09:02 clemens-tolboom commented Mar 2, 2023

'decorators are wrappers around' and in this case they come from two different tools in the order bottom to top. Maybe fastapi-util could have 'aut…

Dropsolid Experience Cloud: How to add metatags to your headless Drupal project

Planet Drupal - Thu, 2023/03/02 - 9:59am
In this blogpost, I'll show you how to get your meta tags working in your headless Drupal (Next.js) application.

Evolving Web: Hands-On With Drupal 10: Discover the Best Modules Through Project Browser

Planet Drupal - Thu, 2023/03/02 - 9:00am

Drupal is famed for its flexibility and scalability. Any user can extend their website with an impressive array of contributed modules (nearly 50,000 at the time of writing!) thanks to Drupal’s modular structure and its thriving community of contributors.

But there’s a flip side to this abundance: selecting the right module can be a daunting task. It hasn’t helped that, until now, searching the full repository meant grappling with a long list of inconsistent descriptions on It’s a time-consuming process that intimidates new users and frustrates the seasoned ones (yes, even us!). And while search engines and recommendations helped, they often failed to give enough exposure to the newer and more niche modules. 

The opportunity was clear: users needed a fast, painless way to pick from the vast ‘candy store’ of contributed modules. 

We’re excited to say that the solution has finally arrived! Drupal users, meet Project Browser.

Project Browser: Your One-Stop Shop for Drupal Modules

Project Browser is a simple but powerful tool that will let you easily search, filter, review, and download the best modules for your needs. It’s currently in Beta, but the module is under active development and compatible with Drupal 10

Project Browser promises to be an essential add-on for site builders, web managers, developers, and anyone else who wants to leverage the full potential of Drupal.

Below, we explore the features and benefits of Project Browser that we’re most excited about.

Search Modules Without Leaving Your Site

With Project Browser, you can search the entire repository of contributed modules directly from your Drupal admin dashboard. Once you’ve installed it, simply go to the Browse tab that’ll appear on the Extend page. 

Project Browser is connected with the API using a decoupled approach to ensure content is updated in real time. 

Project Browser streamlines the process of selecting and downloading modules. Credit: Drupal.

Compare Modules at a Glance

Project Browser has a clean, user-friendly design that makes it easy to compare modules side by side. It displays your search results as tiles and lets you view them in list or grid mode. The tiles also feature category tags and a security policy icon. 

The modern, intuitive design makes it easier to review and compare a selection of modules. Credit: Drupal.

Only See Modules for Your Version of Drupal

The search results you see in Project Browser are automatically filtered by the version of Drupal you’re on. That way, you won’t waste any time reviewing modules that aren’t compatible with your website. 

Use Filters to Find the Perfect Fit

Project Browser applies default filters to ensure you only see maintained projects that are covered by a security policy – although you can remove these filters if you want. You can also filter by a wide range of categories such as accessibility, e-commerce, events, and location to name a few.

Narrow down your search results by applying filters. Credit: Drupal.

See Projects by Popularity

By default, Project Browser sorts your search results by active installs. This means you’ll see the more popular modules first, helping you find high-quality solutions faster. 

Get Clear Steps for Installation

Once you’ve found a suitable module, you can hit ‘View Commands’ to get instructions commands to download it via Composer and install it with Drush. 

Project Browser simplifies the installation process. Credit: Drupal.

Expect Even Easier Installs in the Future

Users will soon be able to download modules automatically with Composer running behind the scenes. An experimental version of Project Browser has been set up to develop this functionality. You’ll be able to hit “Download and Enable” on your selected module and let Project Browser do the rest.

Want to Master the Fundamentals of Drupal?

Join our upcoming Drupal for Content Editors training session. Our expert instructors provide hands-on exercises, live demos, and actionable advice to help you excel in your role. You’ll come away from this session with a solid understanding of how to implement a strong content strategy and use Drupal’s content publishing system effectively.

//--> //-->

+ more awesome articles by Evolving Web
Categories: Drupal 10 upgrade: File to media

Planet Drupal - Thu, 2023/03/02 - 8:02am

We're continuing our series on upgrading this very website to Drupal 10...but our first proper bit of work to upgrade this site is essentially nothing to do with Drupal 10!

We built this site in the early days of Drupal 8 and Drupal core didn't really handle 'media' any differently to Drupal 7, but we wanted to try out some new modules that included having a library and drag&drop upload. However, these modules are an additional thing that we need to upgrade and have been pain in that sometimes the buttons don't appear, or they're buggy in other ways. Anyway we're going to replace our previous way of doing media handling, with the way that Drupal 8.5 introduced: the media module. To be perfectly honest we could (and maybe should) have done this piece or work a long time ago, but we simply never got around to it. Anyway, here's an idea of what we had before:

On lots of our entity bundles, we had file and image fields, these were named something like field_background_image for example. This would hold the image that was eventually styled into the title header banner at the top of the page. We wanted a nicer experience for uploading and selecting files to use than the core offering at the time. 

We had settled on using the File Entity Browser module which brings with it a lot of dependencies, but then does give a relatively nice experience that looks a bit like this:

Our File entity browser based upload widget

You get a drag & drop upload, and you get to pick files from a grid of files if that's what you want.

This is all well and good, but Drupal core basically does all this now, via the media module, so how do we get to this:

The Drupal core media upload widget

To get there, we're going to have to:

  • Enable the core media and media library modules
  • Set up our media types that we want to use
  • Create duplicates of our current file/image fields, but as media fields
  • Switch our templating/PHP code over to use the new media fields
  • Write some kind of data migration to create new media entities for existing files and update the content to reference the new media entities
  • Delete the old fields.

I appreciate that there are modules out there that can help with some of this, but none of them seemed to work quite right for me when I'd tried in the past, and they seemed to get hung up on things like deduplication of files, which I wasn't particularly bothered by.

Setting up core media

This is, by far, the easiest bit: I enable the media module, and then grab the media related config from the core demo umami profile, since that has and image and document media entity all set up and ready to use. I grabbed the following config files:

  • media.type.image.yml
  • media.type.document.yml

And import them into this site, just as a super quick way to get going with a simple set of config that would enable core media handling.

Duplicating fields

Now for the tedious part: duplicating all those lovely file/image fields with media field equivalents. To get a nice list of the entity bundles that needed this work doing, I went to uninstall the File entity browser module, and Drupal gives me a nice list of the config that would need to be updated. This is essentially a list of bundles where we'd set up our file upload widget that I needed to swap out.

So, I go one by one looking at each bundle, and where there was a field named like: field_background_image for example, I'll create a new entity reference field called: field_background_media and set it to reference media entities. Then I set it to use the media widget, and matched its position and settings on the entity form and entity display modes. I did do this manually, but I imagine this would be fairly simple to automate, but I only had a handful of fields, and I went slowly and carefully with the next bit anyway, making sure to test each of my new fields.

In our theme layer, we do a decent amount with some of the files referenced by these fields, for example the background images for the page headers, get processed by some custom code that generates some specific inline CSS. So I searched the codebase for usages of these field names, and switch them over to the new fields. Being careful that now there was an extra level of entity in the structure of the data, since before I'd have had:

Host entity -> image field -> File entity -> Actual URL to image

But now the new fields will have:

Host entity -> media field -> media entity -> image field -> File entity -> Actual URL to image

This is actually pretty easy for this site, because we'd nicely separated out getting the image from the templates themselves, so this step was fairly straightforward in the end, it was fairly repetitive though. I duplicated a field, found all usages of it, changed them and then tested the code to make sure it was all working properly.

Data migration

Now we have the duplicated fields, and we know they all work we need to get the data into them. We're going to load up any entity that references a file in one of the fields we've duplicated, loop over all the fields, and where there's a file we'll create a new media entity that references this file and insert this into the field on the outer entity. We'll save each entity as we go.

We don't have that much content on this site, so we can run these in an update hook, and the site will be down for a minute or so running the update hook, but that's okay for our use case. Other sites might require a different approach.

Without further ado, here's our code:

/** * Migrate image fields to media fields. * * @param string $entity_type_id * The entity type id. * @param array $image_field_map * An array of mappings, each sub array should have the following keys: * - source: The source image field name. * - destination: The destination media field name. * - media_bundle: The media bundle to create. * @param string|NULL $bundle_id * The bundle id. * * @return void */ function computerminds_core_migrate_to_media_helper(string $entity_type_id, array $image_field_map, string $bundle_id = NULL): void { $entity_storage = \Drupal::entityTypeManager()->getStorage($entity_type_id); // Construct a query to find all entities with the image fields. $entity_query = $entity_storage->getQuery(); if (isset($bundle_id)) { $entity_query->condition('type', $bundle_id); } // We don't want to check access. $entity_query->accessCheck(FALSE); // Add a condition for each image field. $field_conditions_group = $entity_query->orConditionGroup(); foreach ($image_field_map as $field_map) { $field_conditions_group->exists($field_map['source']); } $entity_query->condition($field_conditions_group); $entity_ids = $entity_query->execute(); // Process in chunks of 10. foreach (array_chunk($entity_ids, 10) as $entity_ids_chunk) { foreach ($entity_storage->loadMultiple($entity_ids_chunk) as $entity) { // Process each image field. foreach ($image_field_map as $field_map) { $image_ids = $entity->get($field_map['source'])->getValue(); $entity->set($field_map['destination'], NULL); foreach ($image_ids as $image_id) { $file = \Drupal::entityTypeManager() ->getStorage('file') ->load($image_id['target_id']); if (!$file) { $message = 'Media cannot be created. The %entity_type_id with ID: %entity_id of bundle: %bundle refers to the image file with ID: %fid. But there is no information about the file with this ID in the database.'; \Drupal::logger('image_field_to_media')->error($message, [ '%fid' => $image_id['target_id'], '%entity_type_id' => $entity_type_id, '%bundle' => $bundle_id, '%entity_id' => $entity->id(), ]); continue; } $media_data = [ 'bundle' => $field_map['media_bundle'], 'uid' => $file->getOwnerId(), 'created' => $file->getCreatedTime(), // @TODO: Make this work for languages. ]; // Asign the file to the correct field. switch ($field_map['media_bundle']) { case 'image': $media_data['field_media_image'] = $image_id; break; case 'document': $media_data['field_media_document'] = $image_id; break; } $media = \Drupal\media\Entity\Media::create($media_data); $media->save(); $entity->get($field_map['destination'])->appendItem($media->id()); } } $entity->save(); } } }

Note that I've hardcoded this with our specific fields on our media entities.

We can then call this helper like this:

function computerminds_core_update_9114() { $entity_type_id = 'node'; $bundle_id = 'article'; $image_field_map[] = [ 'source' => 'field_banner_image', 'destination' => 'field_banner_media', 'media_bundle' => 'image', ]; $image_field_map[] = [ 'source' => 'field_mobile_banner_image', 'destination' => 'field_mobile_banner_media', 'media_bundle' => 'image', ]; $image_field_map[] = [ 'source' => 'field_files', 'destination' => 'field_attachments', 'media_bundle' => 'document', ]; computerminds_core_migrate_to_media_helper($entity_type_id, $image_field_map, $bundle_id); }

I then went through and wrote an update hook for each entity type and bundle combination that I needed, following the same boilerplate pattern of an array of fields to map.

Once the update hooks have run, then I was able to check each of the bits of content and see that the media entities had been created correctly, and added correctly added to the entities.

Delete the old fields

The fun, last step! Deleting the old fields: which will remove the field data from the content entities, but not the actual file entities themselves, so they'll still be around to be referenced by the media entities.

This then also allows me to uninstall the File entity browser module, and then the Entity browser, Entity embed module and Dropzonejs module, big win because we now have many fewer modules to upgrade.


Our deployments do this:

  1. Run database updates
  2. Import config
  3. Rebuild caches

To deploy this work, I committed each of the above steps, along with their exported config, to git. Then I was able to deploy each commit in turn, so that the site briefly had lots of empty media fields, and wasn't showing any images, but then minutes later had all the content migrated and then finally all the old fields and modules were gone. Oh, I also took a full backup before I started these deployments!

That's it for the first big step on the road to Drupal 10 for this site, but I have to reflect and say that having done similar types of data manipulation in Drupal 7, Drupal 9 makes this stuff much, much simpler!


ImageX: Compelling Content Marketing for Higher Education Websites

Planet Drupal - Wed, 2023/03/01 - 5:53pm
Compelling Content Marketing for Higher Education Websites amanda Wed, 03/01/2023 - 16:53

When a prospective student is making the choice of where to study, their first point of call is more often than not, the institution’s website. It’s where they learn about the exciting study programs, the bustling campus life, and the unique university vibe. Engaging text in combination with catchy visuals helps them find the answer to the main question: “Is this the right choice for me?”. That’s why the role of your website and content marketing is unmatched when it comes to boosting student enrollment and helping your higher ed institution stand out from its numerous competitors.


How can you make your university or college site genuinely attractive and informative for students, as well as for staff, faculty, parents, donors, and alumni? When it comes to best practices for higher education websites, content marketing is one of the most interesting topics to discuss. We’ve collated some of the ImageX team’s recent articles filled with content tips for higher education below.


Create vibrant, student-focused content


Although factors like university size, location, available majors, and costs are important, prospective students primarily base their decisions on emotion. Your homepage might be great at creating that “big-bang” first impression, which makes students’ hearts sing and lets them know they belong to this place. However, by navigating deeper into a higher education institution’s website, students are often faced with long and dull walls of text.


No worries — it’s totally possible to breathe life into your university site and turn it into a vibrant content hub! To begin with, you will need to assess your current pieces and decide what to keep, what to rework, and what to cut. These decisions need to be data-driven, so you might want to rely on marketing analytics platforms, research, and testing. Next, establish the content creation guidelines and move forward.


To fill your university website with vibrant voices, you could gather informal news from your students’ social media, create a submission form for club leaders to share announcements, and transform the lofty prose from researchers using everyday, easy-to-read language. Another great idea is to create interactive features so prospective students can get a feel of your campus

Breathe life into your university site and assess your current content to decide what to keep, what to rework, and what to cut.  Embrace digital storytelling


We all love good stories. This love starts in our childhood when stories help us comprehend the world, and it accompanies us through our adult lives as we become prospective customers of various organizations. That being said, it shouldn’t come as a surprise that there is an ongoing content marketing trend to craft unique narratives with the organization’s audience as the main heroes. These compelling stories engage customers and inspire them to make conversions.


Your university could tell its impactful stories, too, and we are happy to guide you through the best storytelling practices. Since the rule of thumb is to center your narratives around your audience and their needs, the heroes of your stories could be your prospective students, current students, alumni, and so on. You could also dig deeper into exploring your audience and create more detailed “user personas” — for example, “a student who wants to study abroad in North America.”


The heroes of your stories could be your prospective students, current students, alumni, and so on.

Storytelling 101: How to Create Website Content that Resonates With Your Audience.”



Be open to users with special needs


When crafting great content that reaches your university website’s audience, you need to give every user a chance to perceive it, even if they rely on assistive devices. Considering the diversity of audiences and the existing accessibility laws, creating an accessible website is a top priority in higher education, so you might have already implemented some accessibility guidelines with the help of a good design and development team.


However, accessibility is not created solely by website design and development experts. Website content also needs to be produced with accessibility in mind. A content marketing team’s contribution to website accessibility can be huge.


What does accessible content creation mean? We recommend starting with empathy and always thinking about how people with different abilities will experience your higher education site’s content. Next, take care of straightforward language, clear structure, ALT tags, descriptive links, transcripts and captions for audio and videos, HTML pages to replace inaccessible PDFs, etc. Finally, check your pages with third-party accessibility tools. See more useful details in our Top 10 Accessibility Tips for Content Editors.

  Divide the “Herculean task” into chunks


In the previous chapter, we discussed the importance of creating accessible content and some of the best practices it involves. Ok, so you have a huge higher education website with innumerable pages for faculties, departments, programs, admission requirements, news, events, and so much more. Moreover, multiple people from different teams are involved in content creation. In this situation, making all the website’s content accessible may look like a Herculean task.


Instead of trying to make up a long list of problems that need to be addressed, we suggest taking an Agile approach. Originally created for developers, the Agile methodology has its values and principles fully applicable to any industry.


Based on this approach, you can transform the Herculean tasks into doable chunks on which you will be able to see meaningful progress. Set your priorities, or choose the most impactful pages to be updated first, then do the work in short cycles also known as sprints. However, in the future, you can prevent content accessibility issues from occurring so you don’t even have to deal with a Herculean task. Organize training for your staff and commit to continuous improvement — one of the Agile principles. 


“Humanize” your higher education content


Today, a learning environment needs to be inclusive and welcoming, as well as foster a sense of belonging. Creating inclusive content on your higher education website could greatly help you achieve this result. You need to consider the diversity of your university’s audience and craft messages that appeal to as many of its segments as possible, be it prospective students, parents, or other target groups. 


One of the ways to be on the same wavelength as them is to use their language. Another useful idea is to create stories where different groups of people are equally represented, which could help everyone recognize themselves. Consider also using diverse content formats to tailor to different preferences and abilities when it comes to consuming the information.


Whatever the techniques are, it all comes down to having a people-first approach to content marketing. Check out our article called “Humanize Your Higher Ed Website with Inclusive Content” for more information and tips about it. And never miss an awesome example of our customers — Ashland University — that created an inclusive digital space and emphasized their “We See You” philosophy.


Use the editorial features of a good CMS


Higher education websites have countless content pages that need to be updated regularly. Managing them all on a day-to-day basis is an arduous task for any marketing team. However, your website’s CMS can be a game changer in this area if it plays on your side. You just need to choose a platform that makes your editing workflows as robust, user-friendly, and intuitive as possible. Drupal could be your best choice here. 


Content in Drupal has a well-defined structure where the information about different content types, such as articles or events, is stored in standard sets of fields. The user-friendly admin dashboard makes it easy to manage pieces of different types across the entire website.


Drupal is endlessly flexible in enabling you to create various content layouts, as well as using ready components. One of the great examples of ready-to-go blocks is the starter kit by our team. It includes the most common block types such as an accordion menu, a carousel, a ping-pong block, and much more. 


Try alternative content sources 


All the content marketing tips and recommendations could create an impression that you and your marketing team always need to be perfect in providing large amounts of fresh, engaging, accurate, and accessible content. What about having enough time for producing it? One of your university faculties might invent the time machine someday, but before they do it, you need to find other solutions.


One of the secrets is you don’t have to create absolutely everything from scratch. There must be some podcast episodes, YouTube or TED videos, SlideShare or eLearning presentations, or other media on the web that could be useful to your university’s students. In addition, there are news, articles, or press releases from trusted sources that could keep your higher education site’s audience up-to-date on important events, discoveries, trends, and more. Finally, as we touched upon in the first chapter about making your site more vibrant, you could try exploring informal sources like students’ social media.


Gathering relevant third-party content and sharing it on your site is known as content curation. While implementing it, it’s best to not just share but provide a brief introduction to the shared pieces. Our article on smart content curation shares more tips and tricks for it describes its benefits, as well as walks you through the specific steps to get started. 


Final thoughts


There is always something new to learn about impactful content marketing for higher education.  So we are more than happy to be constantly discovering and sharing useful tips about it. Stay tuned for more article collections, and just reach out if you need any assistance or want to talk through your requirements. 

/sites/default/files/styles/original/public/2023-03/pexels-karolina-grabowska-8106661.jpg.webp?itok=qvV3HPwN Feature as an event Off Service Category Strategy Content Strategy Storytelling IsGated 0 Verticals Higher Education IsDownloadable 0