Specbee: How to showcase your content as Page and Block Views in Drupal

Imagine you are responsible for managing the content on your Drupal website. Now your task today is to create a “Related Blogs” section for your Blog pages that will display 5 blog posts that are related to the current blog post. How would you do that? Easy! With the help of the Drupal Views module! All you need to do is access the views interface, create a new view, configure it, add the view block in whichever page you want, preview, and save!  But the Drupal Views module gives you so much flexibility and customization options that we had to write a full article about it. Explore the amazing module in depth in this article dedicated to the power of Drupal Views. What does the Drupal Views module do The Views module is a versatile and powerful tool that allows you to query your content. This means you don’t need to know how to frame an SQL query and execute it. You can simply get and display the data you want by creating a view! After executing the query, the content can be displayed in a flexible and customizable manner, as a page or block that can be themed according to the design. It simplifies the process of creating dynamic lists, grids, and displays of content without requiring any coding expertise. It is a part of Drupal core in the latest Drupal versions and is enabled by default. How to create a Basic page using Views Creating a Basic page using Views in Drupal is a straightforward process that allows you to display content in a structured and customizable format. Creating a new view 1. Hover on Structure on the admin toolbar then on “Views” and click “Add view”.2. Now a views creation page will open with 4 sections. View basic information - Add name and description View settings - Choose the content show type. By default it is “Content”. Now choose the type of content (Content type). You can also choose tagged with and sorted by but these are not mandatory. Page Setting - A view page can be created by adding a name, path, format, display to item, menu link, and an RSS feed. Block Setting - A block can be created with a block title, block display setting, item per page, and pager 3. After filling in details according to step-2, Click on the Save and Edit button. Now the View display page will open. The display page has a lot of other options so it is divided into 3 columns (as shown in the screengrab below). Configuring the View display Once you create a view, it is now time to configure it. In the Views editing interface, you'll see several sections to customize your view's settings. 1. Title - Title of the View2. Format - Select how you want the basic page content to be displayed   A. Format: View provides 4 type formats - Grid, HTML List, Table, and Unformatted list.   B. Show: The default show type are Content, fields and Search result. Each show type provides its own settings. These settings are very useful for managing content with views. The format and format show type may add more according to the available contributed module.3. Fields - The section will be active when we choose the format as a field from the format section. The fields can be added by clicking on “Add field”. When clicking on “Add field”, a popup will open and the required field can be searched and added. After adding a field you can configure it.  When clicking on the field name, a popup will open with the following options: Create a label: If you want to add a label then check it and write a label Exclude from display: If you do not need to render on the view page or block. Formatter: You can set a formatter for this field. A list of formatters are provided by default and it can extend with a contributed module. Link to text - A link will get added to this field when it renders. Style Settings - HTML Markup and style classes can change. Rewrite Results - This section provides a lot of features to manipulate the view output:i) Override the output of this field with custom textii) Output this field as a custom linkii) Trim this field to a maximum number of charactersiv) Strip HTML tagsv) Remove whitespacevi)  Convert newlines to HTML
tags No results behavior: When the field does not have any value then you can show a custom message or hide the field. Administrative title - The title which will show only to admin users. 4. Filtered Criteria - You can add fields in the Filtered criteria which will be used to filter content. Each field provides tons of configurations that help manage conditional filters. For example, two content types5. Sort Criteria - You can show the content in ascending and descending order using this file.6. Page Setting - This section helps add a path, add this page to the menu, and a menu tab.7. Header Section - Add fields in the Header of the views page/block. The most common field is “Text area” which is used to add static makeup content.8. Footer Section - Just like the header section, you can add a field here as well.9. No Result Behavior - If the views do not have any content then a custom message can be displayed by adding a markup field.10. Pager - The Pager and ‘more link’ can be added or removed. Also, different type pager options are provided by default view. You will also find many contributed modules to change the looks and features of the pager. Pager options: Display a specified number of items Display all items Paged output, full pager Paged output, mini pager 11. Advanced 1. Relationships: allows you to create connections between different entities (content types, users, taxonomy terms, etc.) and access their fields in a view. To set up a relationship in Drupal Views, follow these steps: Create a new view or edit an existing view in the Views interface. In the view's configuration, locate the "Advanced" section and click on it to expand the options. Click on the "Add" button next to the "Relationships" fieldset. A dialog box will appear with a list of available relationships based on the selected base table (content type). You can choose a relationship based on the entity you want to establish a connection with. For example, if you want to display a field from a referenced entity, you would select the appropriate relationship related to that entity. After selecting a relationship, click on the "Apply" button to save it. Once the relationship is added, you can now add fields, filters, or contextual filters that use the newly established relationship. To add a field related to the relationship, go to the "Fields" section, click on the "Add" button, and you will see new field options available under the relationship's heading. Choose the desired field and configure its settings. To add a filter using the relationship, go to the "Filters" section, click on the "Add" button, and select the filter criteria from the available options under the relationship's heading. Configure the filter settings as needed. Similarly, you can add contextual filters that use the relationship to dynamically filter the view results based on the context provided. Save the view and preview it to see the results of the relationship-based configuration. 2. Contextual filters (previously known as "Arguments") are used to filter view results dynamically based on contextual information, such as the value in the URL or other contextual inputs. Contextual filters allow you to create more personalized and targeted views by leveraging the provided context. Click on the “Add” button of the Contextual filter A dialog box will appear with a list of available contextual filters based on the selected base table (content type). You can choose a contextual filter based on the field or taxonomy term you want to use for filtering. Select the desired contextual filter and click on the "Apply" button to add it. After adding the contextual filter, you can configure its settings. Save Contextual filters are particularly useful when you want to create dynamic and personalized views that change based on the context provided. They enable you to build powerful views that respond to user interactions and provide tailored content. 3. Exposed Form: An exposed form allows users to interactively filter and modify the results of a view directly from the front end of your website. It provides a user-friendly interface that enables visitors to refine the displayed content based on their preferences. 4. Other Machine Name: Views machine Administrative comment: A comment can be written for other developers to better understand the functionality. Use AJAX: Turn on/off Ajax Contextual links: Show or hide contextual links on the view Use aggregation: When you have a duplicate entry in views, it can aggregate. CSS class: A custom class can be added on the wrapper div of view. Creating a Views block display Now circling back to my first example of creating a view for a Related blogs section where you can add this as a block to any page. Usually used in the Articles section. Drupal Views block display is one of the available output formats for your content listing or data display. A block display allows you to create a reusable content block that can be placed in various regions of your website's layout, such as sidebars, headers, footers, or any other block region supported by your theme. Let’s now look at how you can create a view block display. Step 1: Create a View block If you are creating a new view, click the "+ Add" button next to "Displays" to add a new display. Select "Block" as the display type from the options presented. Step 2: Configure the view Similar to what we did while creating a page view, you can configure the view block too. Give your block display a name and adjust other settings specific to the block format, such as the block title, number of items to display, and more. Set up your filters, sorts, and any field formatting specific to the block display and save the block. Step 3: Add the block To be able to view the block in all pages (Global) or a specific page/path, you will need to add it in the Block Layout. After saving the view, the block display will now be available. Go to Structure > Block layout (admin/structure/block) to manage your blocks. Step 4: Place the block When you click on the place block button, a popup will open. Now, find the view block you just created in the list of available blocks, and then place it in the desired region of your website's layout. You can further control the visibility of the block by using the "Visibility settings" provided in the block configuration. Once you have placed the block in the desired region and adjusted its visibility settings, click the "Save blocks" button to apply the changes Now, the Drupal Views block display will be visible in the specified region of your website, presenting the content you configured in the view. As you make changes to the view configuration, the block display will automatically reflect those changes, making it a powerful and flexible way to present dynamic content throughout your website. Final Thoughts The Drupal Views module offers more types of views than just the common “Page” and “Block” views. For example, there’s the Attachment view that can be combined with other views, a Feed view where you can add RSS feeds of your content, a table view allowing you to display content in a tabular format, and much more! There are many contributed modules to extend these features as well. Want to stay updated with the latest in Drupal and Drupal-related insights? Subscribe to our newsletter and get weekly updates delivered to your inbox!

Golems GABB: The Future of Web Design: Predictions and Trends for 2023

The Future of Web Design: Predictions and Trends for 2023 Editor Tue, 07/25/2023 - 15:39

Every new year brings new challenges and opportunities for creativity and experimentation with web design. What will be the leading web design trends in 2023? Let's explore this together and discover what new predictions and trends for 2023 will help websites stay relevant and appealing to users. They will give you a clear idea of what will happen in website design and how to prepare for change. Are you ready to embark on a journey into web design? Are you ready to discover the latest trends shaping the Internet's future? Let's explore together!

Top 15 Web Design Trends for 2023

Web design trends can change due to emerging design technologies and practices. This article looks at the most popular web design trends in 2023. In our opinion, these trends will continue to be relevant until 2025.

Talking Drupal: Talking Drupal #408 - The Drupal Association

Today we are talking about The Drupal Association with Tim Doyle.

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

Topics
  • Tell us about yourself Tim
  • Why Drupal
  • What perspective do you bring
  • Strategic plan
  • Leadership
  • Measurements
  • Drupal the project vs Drupal the community
  • Where will the DA be in 5 years
  • Will Drupal be around in 20 years
  • Favorite aspect of the strategic plan
Resources
  • Director of Philanthropy
  • Burnout
  • Pitch-burgh
  • Alex Moreno
  • New Core Product Manager
  • Tenure of ED/CEOs since formation of DA
    • Jacob Redding
      • March 2010 - February 2013
      • ~3 years
    • Holly Ross
      • February 2013 - May 2016
      • 3 years 3 months
    • Megan Sanicki
      • May 2016 - September 2018
      • 1½ years
    • (interim) Tim Lehnen
      • September 2018 - June 2019
      • 9 months
    • Heather Rocker
      • June 2019 - March 2022
      • 2 years 9 months
    • (interim) Angie Sabin
      • March 2022 - October 2022
      • 8 months
    • Tim Doyle
      • October 2022 - Present (July 2023)
      • 9 months
    • As of February 2026 Tim will be longest-tenured
Guests

Tim Doyle - @TimDoyleMPA

Hosts

Nic Laflin - www.nLighteneddevelopment.com @nicxvan John Picozzi - www.epam.com @johnpicozzi Tim Plunkett - @timplunkett

MOTW Correspondent

Martin Anderson-Clutz - @mandclu ActivityPub

  • Brief description:
    • Implements the ActivityPub protocol on your site, so readers can follow and respond to content on Fediverse sites like Mastodon, and in the future maybe Threads?
  • Brief history
    • How old: created in Feb 2019
  • Versions available:
    • 1.0.0-alpha17, works with Drupal 9.4 and 10, release in Mar 2023
  • Actively maintained
  • Minimally maintained
  • Number of open issues:
    • 43 open issues, only 2 bugs but 1 of those fixed in the past week
  • Usage stats:
  • Maintainer(s):
    • Created and maintained by swentel, who also created a module for publishing Drupal content to the Nostr network
  • Module features and usage
    • Effectively allows your site to act as a Fediverse server: Mastodon, Pleroma, Picelfed, etc.
    • Users who enable ActivityPub for their account have created @user@domain in the Fediverse
    • At that point the Drupal UI provides some common features of a social client: notifications about subscribers, and so on
    • Provides plugins to define user actions. Default plugins are ‘Accept’, ‘Follow’, ‘Delete’, ‘Undo’ and ‘Inbox reply’, but a site could add or enable others
    • Based on the documentation it sounds like if you update an entity (e.g. change the title) you can trigger an Update activity, which is in stark contrast to a certain bird platform
    • There’s quite a bit more in the module’s README file if anyone wants to better understand its capabilities

The Drop Times: The Power of Creativity with Drupal

Welcome to our latest newsletter, where we embark on an exciting exploration of creativity and its transformative influence. Creativity is the spark that ignites innovation, shaping our world and driving positive change. This edition delves into how embracing creativity can enrich our personal and professional lives, fostering problem-solving skills, adaptability, and resilience. Whether you're an artist, a business professional, or a developer, tapping into your creative potential can unlock boundless opportunities for growth and excellence.

Creativity knows no boundaries, and fostering a culture of innovation is vital for businesses and organizations. We'll share insights on creating a work environment that encourages out-of-the-box thinking, collaboration, and the pursuit of visionary ideas. Witness the magic unfold as creativity becomes the cornerstone of your success, propelling your team to new heights of achievement.

At the heart of this newsletter lies the powerful content management system, Drupal. Drupal empowers developers to craft exceptional digital experiences, giving them the canvas to bring their creative visions to life. Discover how Drupal's flexibility and versatility allow businesses to unleash their creativity and create websites and applications that captivate audiences and drive growth. From seamless user experiences to visually stunning designs, Drupal is where technology meets creativity.

As we celebrate the wonders of creativity, we also pay tribute to inspiring innovators and visionaries who have left an indelible mark on humanity. Throughout history, creative geniuses have reshaped the course of our world with their groundbreaking ideas and inventions. Their stories serve as a reminder of the incredible impact that creativity can have on society.

Let's delve into the news stories from TheDropTimes from the last week and explore how creativity meets technology with Drupal.

In the past week, TDT published two exclusive interviews that shed light on inspiring individuals in the Drupal community. The first interview features Jeremy Chinquist, where we delve into his project management expertise and dedication to fostering the Drupal community. The second interview introduces Nico Grienauer, CEO of Acolono and lead organizer of Drupal Developer Days 2023, Vienna. In this interview, Nico discusses the importance of non-code contributions and what to expect from Drupal Developer Day 2023.

In the pursuit of knowledge, Drupalize.me shares a comprehensive tutorial that equips Drupal site administrators with an overview of various contributed modules commonly used to monitor the performance of Drupal websites. Sparkfabrik's CTO shares insightful solutions to strengthen software supply chain security in JavaScript, Python, and microservices-based projects.

For those eager to be part of the Drupal community, DrupalCon Lille 2023 announces recipients of scholarships and grants. Learn more about the event and its exciting opportunities by clicking here. Exciting events await! Design4Drupal Boston celebrated its 15th anniversary at Salem State University from July 20-21, 2023. Click here to learn more about the event.

Pronovix shares valuable insights on the effective management of third-party dependencies in their latest blog post. Additionally, Chromatic introduces an open-source Drupal module and PHP library for seamless integration with Orange DAM. Be ahead of the curve with these game-changing innovations. Click here to know more.

Palantir.net unveils the revolutionary Drupal 10 Collaborative Text Editor, empowering developers with unprecedented customization and accessibility. Embrace the future of Drupal development with this cutting-edge tool.

Join the Spiceworks Partner Webinar on August 01 to learn how Bird's digital transformation with Drupal and Acquia revolutionized the customer experience - Click here for more information about the webinar.

Mark your calendars for D-BUG's monthly meetup in Bangalore on July 29, 2023. Explore Drupal and web tech, and network with like-minded professionals - Click here to learn more about the event.

Lastly, don't miss the insightful Future Zone Interview: Drupal Austria Chairman's Insights on Open Source Development. Embrace the spirit of open-source collaboration and gain valuable insights from industry leaders.

That's all for this week's newsletter. Stay inspired, stay creative, and let Drupal empower your innovation journey!

Kazima Abbas
Sub Editor, The Drop Times

#! code: Drupal 10: Creating A Notification System Using The Message And ECA Modules

Drupal is a great platform to create communities of users where you can allow users to create their own content and interact with each other. One way of keeping users engaged on the site is by letting them know when other users are interacting with content they have created.

This is quite a common occurrence on sites like LinkedIn or Facebook, where you will receive a notification when a user comments or likes one of your posts. The same thing can be put together in Drupal with just a few modules (and a few lines of code).

In this article I will look at how to create a notifications system that will tell users about important events that they might be interested in. We will be using as many contributed modules as possible to do this, although there will be a small PHP class involved to tie some components together.

Installing The Required Modules

The following modules are required in order to get everything working together for the notifications system.

Read more

Penyaskito: Introducing The Dashboard Initiative

By penyaskito, 22 July, 2023 Image removed.

Introducing The Dashboard Initiative

Last year, during DrupalCon Prague, Cristina approached me with an idea to include Dashboards in core. We met with Sascha, and since then a team emerged and we have been meeting more or less regularly defining how this would look like, and creating some proof of concepts.

What are we trying to solve?

When you log in to your Drupal site, you land on the /user page. There you can see how old your account on this site is. Useful, huh? Unless you have customized this behavior with contributed or custom modules, now you need to think about why you logged in, and go to wherever you can do what you wanted to do, which usually will take you several steps.

There's a big chance that this journey will start at the Content page, if you are a content manager or a content editor, but you might be a site builder, a site admin, or be responsible for other duties on your website. So we need a landing area where the content shown makes sense based on your recurring tasks. This is where customizable dashboards come into play.

Wearing multiple hats

Users often have multiple roles, or they might want to perform different tasks which might be unrelated to each other. The initial idea was to have a dedicated dashboard for each role.  That evolved into the idea that a user should have access to different dashboards, where groups of tasks and information might be grouped by their nature, not neccessarily by their role. You might wear your content manager hat one minute, and later you might need to perform some SEO duties.

So nothing should block you from having unlimited dashboards, and use the permissions system to give access to them to different roles.

Is this aligned with Drupal core goals?

Drupal Core Product Manager Lauri Eskola recently stated the three tracks were most efforts are concentrating in Drupal Core

  • Reduce the time it takes for site builders to become proficient with Drupal.

  • Empower site builders to deliver engaging editorial experiences.

  • Reduce the cost of keeping Drupal applications secure.

Adding dashboards helps with the second track, enabling site builders to make editors´ lives easier by providing customized dashboards based on their editors´ needs. There would be benefits to the other two tracks as well. Having clear journeys on some common tasks for different roles will help site builders to become proficient in Drupal; and can reduce the cost of keeping Drupal applications secure if we surface the need for security updates on the dashboard and make it easy to get up to date with security updates or news from the Drupal project and the Drupal Association.

How to get this into Drupal core

When new ideas go into core, usually they are introduced as Experimental modules, and that's also our aim. Similar to other existing admin tools (like the content listing admin page) in Drupal core, our approach is based on progressive enhancement. This translates to:

  • If you don't enable dashboard, you will be redirected to /user as of right now. Drupal core Standard profile cannot depend on an experimental module, so it won't be installed by default (for now).

  • We will ship Dashboard module with default dashboards for common tasks in core. 
  • If Layout Builder is also installed, you will be able to customize the layouts and blocks of those dashboards on the UI. 

How to get involved?

For now, we've been working in a sandbox, and we also have a GitHub project that contains an easy-to-evaluate site with some demo content, and triggers a Tugboat that we can use as demo or to manually test changes. Thanks to Tugboat.qa for providing that, and James for helping out setting it up!

If you want to help, we welcome you at the #dashboard channel on Drupal Slack.

Thanks to Gábor Hójtsy, Lauri Eskola and Cristina Chumillas for reviewing this blogpost.

Tags

DrupalEasy: Cindy Garcia; Discovered Drupal, hooked a new career

Image removed.It’s been an interesting path to finding professional and personal fulfillment for the decidedly bold and curious Cindy Garcia. She graduated with a degree in biomedical engineering from Florida International University in 2012, landed a job as a Quality Assurance Engineer in the medical device industry shortly thereafter, and then realized she was more interested in, and really well suited for IT; specifically web development.  

This time of transition was not just one of wrestling with her professional journey, as she was also starting to pivot her athletic interests, explaining, “I started participating in an adult wrestling class because I wanted to enhance my jiu jitsu.”  She had been competing in Brazilian Jiu jitsu during and after college, and was preparing for additional competitions. 

She was also readying herself to move into the web development space, and so enrolled in an application architect program, which led into her first foray in web development using WordPress; quickly becoming a Wordpress site builder/SEO strategist. Turns out Wordpress, according to Cindy, has limits that made her realize it was, for her, a stepping stone and not a career destination. She was still on the hunt for the platform that would satisfy her interests, provide a challenge and offer a fulfilling career. 

 Concurrently, she explains, “a friend of mine who I practiced jiu jitsu with and was a college wrestler asked me to become a referee with her.“  She completed that program, worked and gained experience, and quickly earned a spot refereeing for USA Wrestling at venues all over the United States. 

After some considerable research, she found Drupal, and realized she had also found her professional passion, but admits “I found it very difficult to learn Drupal on my own…”  She heard about the Drupal Association’s Discover Drupal program, applied and so began her formal Drupal training when she applied and was accepted to DrupalEasy’s 12-week Drupal Career Online certificate program. 

 In addition to devouring the Drupal Career Online materials, fully engaging in class and religiously attending the DrupalEasy office hours, she connected with several Drupal mentors, for whom she clearly has boundless appreciation. “...I would have never grown as quickly as I did without their help,” she muses of Ryan Price, Darren Oh, Phil Frilling, Matt Obert and Mike Anello, who all mentored her during her Discover Drupal experience.

Once she completed the DCO, she fed her ongoing desire to learn more and advance by registering for DrupalEasy’s Professional Module Development program. It was just the course she needed to feed her hunger for coding challenges, interest in module development, as well as her love of networking and connecting with other developers. She also believes community is another key to her success, citing DrupalEasy office hours, virtual meetups, and attending a DrupalCon once a year as the most important elements of community that those new to Drupal should prioritize. 

 Additional advice she has for aspiring Drupal developers considering applying for Drupal Career Online is “Don't be afraid to ask questions; reach out to your mentors as much as you can. Network as much as you can and build your Drupal profile on drupal.org,” she says. She added, “Having good communication skills is important to be successful in Drupal. Being able to explain what the problem is, how to solve it, and how long it will take is crucial.” 

She also feels a positive mindset, even when things are tough, is a huge contributor to learning and building a Drupal career. Which, she is doing with a part-time gig at Ironistic, a full service digital agency that assists organizations with strategy consulting, website design and development, integrated marketing and hosting and maintenance services. She hopes to get into module development, with a long term goal “to write a module, get it published on drupal.org and be a module maintainer,” she explains.  

Meanwhile, through her other passion, she also now travels all over the country for USA Wrestling as a referee in the Fall/Winter season for Folkstyle and women's college Freestyle Wrestling, and during the Spring and Summer season for mostly freestyle and Greco wrestling events.

She looks back on the journey and contemplates where she is now, and can’t help but reflect on the connections that becoming a referee and her career shift to IT & Drupal have. She explains, “Wrestlers are grinders. They never quit no matter how hard something gets, and I have used that mindset to overcome my feelings of imposter syndrome.” She continues, “In less than 10 months I have worked on 4 professional Drupal sites, have two contribution credits on drupal.org and meeting credits and have attended a DrupalCon!” 

Her full schedule of sessions and events at DrupalCon Pittsburgh included DrupalEasy’s alumni-community lunch bash. Asked about her favorite part of DrupalCon, she quickly responds that it was the code sprint with “My favorite was contributing to open source because I was able to enhance my knowledge of writing single directory components.”  Adding, “I look forward to traveling to DrupalCons all over the world and deepening my knowledge of Drupal.”

Like Drupal, refereeing wrestling continues to inspire her and enrich her life. “I like that it challenges me physically, mentally, and emotionally. It challenges my decision making as well, as I always have to make split second decisions in regard to how I score the bout. I get to travel all over the country and some of my closest friends are referees.“

Her gratitude to everyone who has helped to guide her along the path to becoming a Drupal developer is evident as she adds about Discover Drupal and Drupal Career Online, “Thank you for creating this program. It added so much value to my life and changed it for the better.” 

The next Professional Module Development Course Full and Lite sessions begin soon, register here. To Learn more about the PMD join us for a mini-webinar! 

The next semester of Drupal Career Online begins soon. To be considered, apply to Drupal Career Online, and if interested in any scholarship that are available, be sure to add to the application.   

DrupalEasy: DrupalEasy Podcast S15E4 - Jordan Powell - Cypress - Javascript-based testing framework

We talk with Jordan Powell about Cypress, an open-source, javascript-based testing framework.

URLs mentioned

DrupalEasy News

Audio transcript

We're using the machine-driven Amazon Transcribe service to provide an audio transcript of this episode.

Subscribe

Subscribe to our podcast on iTunes, Google Play, iHeart, or Spotify

If you'd like to leave us a voicemail, call 321-396-2340. Please keep in mind that we might play your voicemail during one of our future podcasts. Feel free to call in with suggestions, rants, questions, or corrections. If you'd rather just send us an email, please use our contact page.
 

qtatech.com blog: Everything You Need to Know About Migrating from Drupal 7 to Drupal 10

Everything You Need to Know About Migrating from Drupal 7 to Drupal 10 kanapatrick Thu, 07/20/2023 - 10:21

Are you running your website on Drupal 7 and contemplating a migration to Drupal 10? As technology rapidly evolves, it's essential to stay up-to-date with the latest software versions and security enhancements.

Image removed.