Talking Drupal: Talking Drupal #341 - Mentoring at DrupalCon

Planet Drupal - Mon, 2022/04/04 - 8:00pm

Today we are talking about Mentoring at DrupalCon with AmyJune Hineline.

www.talkingDrupal.com/341

Topics
  • Mentoring at DrupalCon
  • Why is mentoring important
  • How can people help
  • Why do people become mentors
  • How does a mentor get started
  • How does mentoring help the community
  • Do mentors get contribution credits
  • What is being done to convert periodic mentors to consistent mentors
  • What makes you passionate about mentoring
  • Discover Drupal
  • Were there any lessons from virtual events that will persist to live events
Resources Guests

AmyJune Hineline - @volkswagenchick

Hosts

Nic Laflin - www.nLighteneddevelopment.com @nicxvan John Picozzi - www.epam.com @johnpicozzi Mike Anello - @ultimike

MOTW

Layout Builder Section Navigation Adds a new block available to layout builder that displays a list of anchor links for other components of the same section.

Categories:

#! code: Drupal 9: Getting A Good Score In Google PageSpeed Insights

Planet Drupal - Sun, 2022/04/03 - 9:49pm

Google PageSpeed tool was created to give webmasters an indiction of how their site will perform when analysed by the Google search engine. As Google takes a variety of different factors into consideration when ranking sites the tool gives an indication of the health of the site.

The score it calculated using a percentage, with different bounds of the score being coloured differently. Between 0 and 49 is poor and is coloured red, between 50 and 89 is average and is coloured orange, above 90 is considered good and is coloured green.

Getting a perfect score in the Google PageSpeed Insights tool is by no means the end goal of site performance improvements or even search engine optimisation. It will absolutely have some benefits in terms of your site traffic though and is worth including in your site key metrics.

I won't put all of the page speed rules in this article since they change depending on what version of the tool you use. Google has plenty of documentation on their developers website detailing exactly what is measured and how much of an impact it has on the score of the site.

I find that I can run the system one day and find one or metrics have been added or tweaked that then change the outcome. This then, will be a best practice approach that looks at some of the ways that you can improve your site to achieve the best score.

Since I've spent a lot of time looking at improving PageSpeed scores on sites I have been involved with. I have quite often managed to reach a score of above 90, with the occasional site reaching a perfect score of 100.

Running PageSpeed Insights

What is confusing is how to run the tool in the first place as there are a few ways to get this information and not all of them produce the same result.

Read more.

Categories:

clemens-tolboom commented on pull request bestguy/sveltestrap#473

On github - Sun, 2022/04/03 - 1:23pm
clemens-tolboom commented on bestguy/sveltestrap#473 Apr 3, 2022 clemens-tolboom commented Apr 3, 2022

I have created an issue on the official svelte repo, see sveltejs/svelte#7415. (huh) that's why I said Allowing different ordering is a feature

clemens-tolboom commented on pull request bestguy/sveltestrap#473

On github - Sat, 2022/04/02 - 9:55am
clemens-tolboom commented on bestguy/sveltestrap#473 Apr 2, 2022 clemens-tolboom commented Apr 2, 2022

Allowing different ordering is a feature of svelte but a bug for sveltestrap. See comment #461 (comment) This is a know 'bug' sveltejs/svelte#4616

clemens-tolboom closed a pull request in bestguy/sveltestrap

On github - Sat, 2022/04/02 - 9:52am
clemens-tolboom closed a pull request in bestguy/sveltestrap Apr 2, 2022 Reorder bind and on: for select (fixes #461) #468

This should fix #461.

+2 -2 4 comments

Drupixels: QUICKLINK: Module for faster subsequent pageload

Planet Drupal - Fri, 2022/04/01 - 9:14pm
GoogleChromeLabs developed a library called Quicklink on link prefetching capability of browsers. And Drupal’s Quicklink module provides an implementation of this lightweight javascript library for Drupal websites.
Categories:

Droptica: What are Drupal Coding Standards, and How to Use Them in Your Daily Work?

Planet Drupal - Fri, 2022/04/01 - 3:46pm

Standardization has a positive effect on any business. There are certain coding standards in the software industry that are needed for successful software development. Coding standards are a set of rules and good practices that make code more legible and easier to develop. In this article, we’ll present what standards are used to create Drupal projects. We will show you the basic aspects that are worth paying attention to and the tools that make work easier.

Coding standards in Drupal

The Drupal community defines a set of coding standards and best practices that should be followed when writing code. They are partly based on the PEAR coding standards. The community's newly proposed coding standards are first discussed in the Coding Standards project.

The coding standards in Drupal are independent of the version of Drupal in which we’re currently working. All new code should follow the current rules. We can find full information on the coding standards in Drupal on the official Drupal website.

Array

Arrays should be formatted using short syntax with spaces separating every element after a comma. We should add spaces before and after the assignment operator “=>”.

$some_array = ['hello', 'world', 'foo' => 'bar'];

If the array declaration exceeds 80 characters, we should break it down into several lines.

$form['title'] = [ '#type' => 'textfield', '#title' => t('Title'), '#size' => 60, '#maxlength' => 128, '#description' => t('The title of your node.'), ];

Note the comma in the last line – this isn't an error. This way, we're able to prevent errors when adding new array elements in the future.

Warning! The short syntax is available in PHP from version 5.4. In older versions, we should use long syntax.

If else

The if else structure looks like in the example below. Note the arrangement of parentheses, spaces, and curly brackets. Control statements should have one space between the condition and the opening parenthesis.

if (condition1 || condition2) { action1; } elseif (condition3 && condition4) { action2; } else { defaultaction; }

Warning! Never use else if. You may use elseif instead.

Switch

We should always use round parentheses in control statements, even when they're technically optional, like in the switch control statement. This makes code more legible.

switch (condition) { case 1: action1; break; case 2: action2; break; default: defaultaction; } Do while

Below we show an example of the do while control statement. We add a space between the do and the opening parenthesis. The condition must be in the same line as the statement's closing parenthesis, separated from it by a space.

do { actions; } while ($condition); Code line length

Each line of code shouldn't be longer than 80 characters. The exception may be a function, class, or variable declaration with a very long name.

Breaking down conditions

Conditions shouldn't exceed a single line. Drupal encourages us to take the value of a condition into a variable for legibility. Below is an example of how to rework too long condition lines.

Wrong:

if ((isset($key) && !empty($user->uid) && $key == $user->uid) || (isset($user->cache) ? $user->cache : '') == ip_address() || isset($value) && $value >= time())) { ... }

Right:

$is_valid_user = isset($key) && !empty($user->uid) && $key == $user->uid; // IP must match the cache to prevent session spoofing. $is_valid_cache = isset($user->cache) ? $user->cache == ip_address() : FALSE; // Alternatively, if the request query parameter is in the future, then it // is always valid, because the galaxy will implode and collapse anyway. $is_valid_query = $is_valid_cache || (isset($value) && $value >= time()); if ($is_valid_user || $is_valid_query) { ... } Example function function funstuff_system($field) { $system["description"] = t("This module inserts funny text into posts randomly."); return $system[$field]; }

Arguments with default values must always be at the end. Anonymous functions, on the other hand, should have a space between the "function" and its parameters, like in the following example:

array_map(function ($item) use ($id) { return $item[$id]; }, $items); Drupal JavaScript coding standards

Always add your JS scripts using Drupal.behavior. Function names should start with the name of the module or theme that declares the function in order to avoid name collisions.

Drupal.behaviors.tableDrag = function (context) { Object.keys(Drupal.settings.tableDrag).forEach(function (base) { $('#' + base).once('tabledrag', addBehavior); }); }; Drupal CSS coding standards

Below, there are some rules that'll help you with correct CSS coding.

Avoid relying on the HTML structure

CSS should define the look of an element in any place, and in the place where it appears. Never use HTML sectors.

BEM

A good practice when writing styles in Drupal is to follow the BEM methodology. Writing CSS code in this way prevents multiple nesting and reliance on markup structure and overly generic class names. The methodology breaks down all elements into three categories:

  • Blocks – they are usually single components, for example, navigation. This looks like a single class in code, e.g. .navigation.
  • Elements – that is, subordinate parts of a block, such as a link in the navigation. The element name should be separated from the block name by two underscores, e.g. .navigation__link, .navigation__item.
  • Modifiers – specific variants of blocks and elements. The modifier's name should be separated from the base by two dashes, for example: .navigation–dark, .navigation__link–active.
Drupal Twig coding standards

All coding standards for Twig, the template engine for PHP, are described on the official Twig documentation page.

Expressions

Expressions in Twig are very similar to expressions in PHP. They're most often used to check if a variable exists, to declare loops and new variables in templates.

Checking if a variable is available for printing:

{% if foo %} {{ foo }} {% endif %}

Loop:

{% for key, value in items %} {{ value }} {% endfor %}

New variables declaration:

{% set list = ['Alice', 'Bob'] %} {% set text = ':person is a Twig fan'|t({':person': list[0] }) %} Filters

Some of Drupal's most popular features, such as t and url, have been made available as filters in Twig templates. They are triggered with the pipe character | .

{{ 'Original'|t }} How to use Drupal coding standards on a daily basis?

There are tools available to help you format your code to conform to the standards. Here are some of the tools we use during Drupal development.

  • Code Sniffer – a tool to help you write code for Drupal or its modules. It's able to detect and automatically fix standard coding and formatting errors.
  • Coder Drupal module – when integrated with Code Sniffer, it helps to fix bugs in the coding standard.
  • CSSComb - a tool for sorting and formatting CSS code.

When using tools integrated with the IDE, the developer doesn't need to know all the coding standards by heart and can be sure that there'll be no unnecessary spaces or wrong tabulators left in the code. They'll also find out if any changes are introduced to the coding convention.

In conclusion, it’s very important that the development team adhere to the appropriate coding conventions and standards that'll guide them during software development. This will help maintain the code's quality and reduce the time new developers spend trying to understand a complex codebase.

Categories:

Community Working Group posts: The Conflict Resolution Team Welcomes Mark Casias to the Team

Planet Drupal - Fri, 2022/04/01 - 3:44pm

The Drupal Community Working Group (CWG) is happy to announce the addition of Mark Casias to the Conflict Resolution Team. Based in New Mexico, United States, Mark has been contributing to the Drupal project and community for nearly 14 years as a full stack developer, community member/organizer, and accessibility expert. He is an active volunteer both in and outside of the Drupal community, serving on the board of GreyMuzzle - an organization dedicated to the quality of life of senior unhomed dogs, and participating in many philanthropist events.

One of the 2022 goals of the Conflict Resolution Team is to expand, both bringing in new perspectives and allowing veteran members to retire. As part of the onboarding process, Mark will serve as a provisional member of the Conflict Resolution Team with limited access to previous issues as well as mentoring on current issues. Per the CWG charter, Mark has been approved by the CWG review panel.

In the coming months, we anticipate adding additional new members to ensure the long-term health of the Conflict Resolution Team and its ability to effectively serve the Drupal community.

The CWG is responsible for promoting and upholding the Drupal Code of Conduct and maintaining a friendly and welcoming community for the Drupal project. To learn more about the group and what we’ve been up to over the last year, check out our recently-published annual report.

Categories:

clemens-tolboom commented on issue bestguy/sveltestrap#461

On github - Fri, 2022/04/01 - 2:03pm
clemens-tolboom commented on bestguy/sveltestrap#461 Apr 1, 2022 clemens-tolboom commented Apr 1, 2022

I somehow missed the plural form in components. I still don't like this sveltejs/svelte#4616 feature ... not sure what the old value is good for ... …

clemens-tolboom commented on pull request bestguy/sveltestrap#468

On github - Fri, 2022/04/01 - 1:57pm
clemens-tolboom commented on bestguy/sveltestrap#468 Apr 1, 2022 clemens-tolboom commented Apr 1, 2022

@shaun-wild a PR would be great ... we can then close this on.

php[architect]: Testing The Core

Planet Drupal - Fri, 2022/04/01 - 7:19am

If you listen to my PHPUgly podcast, you might know that we have a policy of not mixing politics with our tech talk. That is a policy we have been breaking more and more often over the past couple of years.

The post Testing The Core appeared first on php[architect].

Categories:

clemens-tolboom commented on issue bestguy/sveltestrap#461

On github - Thu, 2022/03/31 - 11:34am
clemens-tolboom commented on bestguy/sveltestrap#461 Mar 31, 2022 clemens-tolboom commented Mar 31, 2022

I can confirm this happen too on checkbox. Order matters. <Input type="checkbox" label="Use X" bind:checked={isChecked} on:change={(ev) => console.l…

Lullabot: Fours Ways DevOps Strengthens Teams

Planet Drupal - Wed, 2022/03/30 - 4:54pm

Development Operations (DevOps) is shorthand for discussing systems set up to plan, build, test, and deploy software. By making certain processes automated, you can catch bugs earlier, deploy to production faster (and more often), and enable more rapid feedback. All in all, a proper DevOps setup can save a lot of time and money while helping you deliver a better product.

Categories:

Community Working Group posts: 2021 Year-in-review for the Drupal Community Working Group

Planet Drupal - Wed, 2022/03/30 - 8:17am

As the Drupal Community Working Group (CWG) enters its 9th year, we feel more than ever it is our duty to continue to pursue our mission to "foster a friendly and welcoming community for the Drupal project and to uphold the Drupal Code of Conduct". With this guiding principle, we have been focusing on both proactive and reactive tasks to help us achieve this goal. 

With practically no in-person Drupal events in 2021 due to the pandemic, much of the conflict resolution work has been related to online interactions. Thankfully, the overall number of conflicts reported to us was less in 2021 than it was in 2020.

This annual report will serve as a summary of what we've accomplished over the past year, as well as a discussion of some of our goals for the near future.

Community Health Team

The Community Working Group was expanded in 2020 with the creation of the Community Health Team. The mission of this new team is to focus on proactive community health tasks including workshops and knowledge transfer. As a refresher, the Community Health Team is tasked with the following:

  • Community Event Support - provide resources and support related to the Code of Conduct for Drupal events.
  • Community Health - provide opportunities to educate and train community members to be more effective contributors.
  • Membership - to help identify and recruit community members for the CWG. 
  • Ambassadors (subject matter experts) - provide expertise and advice related to geographic, cultural, and other differences both inside and outside the Drupal community.

Community Health Team members are not privy to Code of Conduct incident reports; however they must adhere to the CWG Code of Ethics.

The team has continued to work on the following proactive community-health related projects:

Long term goals for the Community Health Team continue to include providing an on-ramp for the Conflict Resolution Team and identifying and presenting additional community-health-related workshops for the community.

Conflict Resolution Team

In May, 2021, the Conflict Resolution Team welcomed its newest member, Donna Bungard (dbungard). We are planning on adding multiple new members to the team in 2022. 

The Conflict Resolution Team continues to work on on-going and new Code of Conduct related issues. During our weekly meetings, we generally work on three types of tasks:

  • Internal business - examples include recruitment, public blog posts and presentations, Aaron Winborn Award, event organizer requests, other non-conflict related requests from community members.
  • External, old business - ongoing conflict resolution tasks normally brought to us from community members.
  • External, new business - new conflict resolution tasks, normally brought to us from community members.

While some conflict resolution tasks can be resolved quickly (a few days), we normally have several long-term, on-going issues that can take anywhere from weeks to months to resolve. Most of the long-term issues include ongoing personality conflicts within the community, but we have continued to work with community members who had previously had their community privileges limited on plans and tasks to have those privileges restored (see our Balancing Accountability and Compassion in the Drupal Community blog post).

What types of conflict resolution issues do we work on?

We decided to perform a quantitative analysis of the number and types of conflict resolution issues we work on, comparing data from 2019 and 2020 with data from 2021. Our methodology allowed us to assign one or two of the following categories to each new issue we received during 2019-2021:

  • Social media conflict
  • Issue queue conflict
  • Drupal Slack workspace conflict
  • In-person Drupal event conflict
  • Virtual Drupal event conflict
  • Not CWG domain
  • Other - examples include content issues on Drupal.org, issues related to local Drupal communities (but not directly related to an event), interpersonal issues occurring in areas not covered by any of the other categories.

In terms of overall number of incidents, we continue to see fewer new conflict-related incidents, with 14 reported during 2021 (compared with 35 in 2019 and 17 in 2020). 

  • Not surprisingly, the number of conflicts reported from in-person events was zero.
  • We had zero incidents reported to us from social media conflicts between Drupal community members. 
  • The number of issue queue conflicts were down to 6.
2019 2020 2021 Total number of new reported issues

35

17 14 Social media conflict 7 1 0 Issue queue conflict 9 9 6 Drupal Slack workspace conflict 5 1 1 In-person Drupal event conflict 6 0 0 Virtual Drupal event conflict 0 2 2 Not CWG domain 4 3 4 Other 10 2 1 Looking forward Conflict Resolution Team: Membership

With multiple current conflict resolution team members having served more than 3 years on the team, one of the primary goals for 2022 is adding new team members. We have been interviewing multiple candidates already in 2022 and hope to have an announcement soon.

One of the goals of the Community Health team is to provide an on-ramp to the Conflict Resolution Team. We will ask all potential Conflict Resolution Team members to join the Community Health Team as a prerequisite.

With the addition of Donna Bungard in 2021, we were able to document and formalize our on-boarding process for new conflict resolution team members. During the on-boarding period, new members mostly shadow the team and have limited access to historical conflict resolution reports. At the conclusion of the trial period new members will either become regular members or be asked to leave the team. As is prescribed by our charter, all trial members must be approved by the CWG Review Panel. 

Community Health Team: Code of Conduct

Our continued goal for the Community Health Team is for them to be a force for good in the community. Our plans for the next year include a stronger focus on the aforementioned Drupal Code of Conduct update, assisting with the expansion of the Community Health Discussions group from various open source communities, and continued support for our other proactive community health initiatives.
 

Categories:

Drupal Association blog: Find Your Sense of Calm Within DrupalCon Portland 2022

Planet Drupal - Tue, 2022/03/29 - 5:13pm

The excitement is building for DrupalCon Portland 2022! I cannot wait to meet some of my colleagues for the very first time, face-to-face, without the aid of Zoom or Google Meets. I look forward to meeting my coworkers that I have not seen in person for 2+ years. I’m already planning meetings to grab a coffee or even a beer with our partners, competitors, and other Drupal enthusiasts I have yet to even meet. The sessions look awesome, too, with speakers being some of the best and brightest Drupal minds the world has to offer. This conference is everything I have been clamoring for since the beginning of the pandemic. 

Then why am I feeling so anxious?

If you are anything like me, you are a bit out of practice in traversing the “real” world after expertly navigating the virtual world for so long. Let’s face it, the idea of jumping on a plane to cross the country or the globe feels different than it did a few years ago. I think it's safe to say, I’m not the only one feeling this way.

Take a deep breath for the DrupalCon Portland 2022 team has your back! They will be providing dedicated spaces for anyone needing time to step away from the hustle and bustle of the conference.  The spaces can be used for “alone time,” time to ponder, or as a way to slowly ease into the energy of the conference. Need dedicated, fully equipped rooms to pray? Yep, they have thought of that too! Want to spend some time with a small group of like-minded individuals learning chair yoga and meditation? Of course you do!

At DrupalCon Portland 2022, you have options to get away from it all should you crave some alone time:

Quiet Space 

Where: Room A103

This room is for those who need space free from interaction with other participants in an environment where they feel free and safe. The quiet rooms are free of conversation and interaction of any kind. They can be used for meditation, journaling, reading, or just silence away from the buzz of the Con! 

We ask that participants use hushed voices when necessary but practice silence as much as possible to respect other attendees who may be using the space. If you are using electronic devices, please ensure to silence them without vibration and that you use headphones. 

Non-Denominational Prayer Space

Where: Room C127

This room is reserved for those who wish to practice their faith in a quiet and respectful environment. Spiritual texts and prayer rugs are provided. We ask that participants use hushed voices when necessary, but practice silence as much as possible to respect other attendees who may be using the space.

If you are using electronic devices, please ensure they are silenced without vibration and that you use headphones.

Any DrupalCon participant of any faith is welcome to use this space!

Chair Yoga and Mindful Meditation  

Where: Rooms G129-G130 

Our Chair Yoga and Mindful Meditation, facilitated by Dori Kelner from Insightful Culture, is beginner-friendly! No previous experience or skills are needed to attend. We’ll be offering four sessions, once each day of the conference. 

  • 35 person cap, first come, first served each session 
  • 2 morning sessions @ 8a-8:30a on Tuesday & Thursday 
  • 2 evening sessions @ 4:45p-5:15p on Monday & 5p-5:30p on Wednesday

Add Chair Yoga and Meditation to your schedule now! 

Want even more resources for keeping calm while in Portland? Check out these links to great local content:

Categories:

clemens-tolboom commented on issue bestguy/sveltestrap#461

On github - Tue, 2022/03/29 - 12:31pm
clemens-tolboom commented on bestguy/sveltestrap#461 Mar 29, 2022 clemens-tolboom commented Mar 29, 2022

My workaround was use plain <select>. @Shaunwild97 is my PR #468 ok? Maybe comment on it?

Specbee: How to store and serve files from Amazon S3 on your Drupal website

Planet Drupal - Tue, 2022/03/29 - 10:45am
How to store and serve files from Amazon S3 on your Drupal website Maithri Shetty 29 Mar, 2022

Data. Files. They’re what make up your website. And how you store and serve them can make all the difference for user experience. Obviously, cloud storage has changed the way we look at and manage data. So much so that we’ve gone from mostly concerning ourselves with the security element, to grading on speed, security, easy data access and scalability. Today, we’re going to walk through one of the more popular options for Drupal websites.

S3 (Simple Storage Service) is the cloud storage service provided by AWS (Amazon Web Services) and it has been providing durable, secure and scalable cloud storage for many industries. Deploying a Drupal website on Amazon S3 further enhances its speed, performance, security and content delivery. It’s especially beneficial when you have a lot of content files and data that is distributed across multiple servers as Drupal’s default file system might not be able to serve under these circumstances.

It’s easy to work with too. Drupal provides a module that will allow you to upload data from your site directly to Amazon S3. Let’s find out more about S3 and how you can store and serve files from it on your Drupal website.

Why Amazon S3?

Today companies are looking at parking and retrieving massive scales of their data in a secure way. Amazon S3 provides an extremely robust and reliable cloud storage architecture that offers tons of benefits:

  • Highly Durable - Amazon S3 is designed for 99.999999% durability. Data is stored redundantly across three zones (on separate power substations) and are separated by miles. So even if any one of them gets unavailable, your data is still protected. You also have the ability to replicate your data to any other region.
  • Security and Compliance - It supports three forms of encryption and integration with a machine learning service that can automatically discover and protect sensitive data. It also supports many security standards and compliance certifications like FedRamp, DSS among others. 
  • Low Cost -  When compared to other storage systems, Amazon S3 costs much less. 
  • Easy Data Management - Amazon S3 provides features that allow the ability to configure access permission to your data. Storing, inventorying and classifying data is very easy and flexible
  • Scalable - Customers can store any amount of data. AmazonS3 automatically scales up as you add data into it, ensuring fast performance.
  • Easy Querying - Anyone who knows SQL can run sophisticated big data analytics without needing you to move data to another analytics platform. You can query through the vast amounts of data right from the cloud.
Before you start

Now let’s begin setting up our Drupal website integration with S3. But before we move ahead and upload data from your Drupal site to Amazon S3 you need some prep work. You will need to install some modules. The modules will provide configuration to add the AWS details. You are also required to set up an AWS account.

  • S3 file system - gives you an additional file system to help you store files in Amazon S3. You can set this as your default file system instead of using Drupal’s file system.
  • S3 filesystem CORS upload - allows you to upload and store files from your browser directly to S3 (bypassing Drupal’s file system) and works in conjunction with the S3 file system module. 
  • AWS account (see next)
Creating your AWS account

Setting up an AWS account is easy. Start by giving some basic details like email. 

After logging in you need to create a security key for your account. For that, go to your account and click on Security Credentials.

 

On the security details page, click on Access keys (access key ID and secret access key) where it will ask you to create an access key.

Once you create the access key it will ask you to download the credentials. It is recommended to download it for future use.

Configuring the S3 bucket in AWS

The S3 bucket is like a storage container for all data and files stored in S3. Now let’s begin configuring the bucket.

In AWS, search for S3 and click on the bucket.

 

Now, create an S3 bucket.

After creating the bucket, give permissions to the bucket. By default, public access will be blocked. If you don’t want to block all public access, you can choose under what circumstances it can be accessed. For that, will need to give permissions as shown in the below screenshot.

Configuring the S3 module in Drupal

As mentioned previously, make sure you first install the S3 module to configure Amazon S3 in your Drupal site.

Now, go to “/admin/config/media/s3fs” in order to configure the S3 module.

It is always recommended to keep your S3 configuration settings in your settings.php file since it is confidential.

In settings.php file add below details.

$settings['s3fs.access_key'] = '**************************'; $settings['s3fs.secret_key'] = '********************************'; $config['s3fs.settings']['bucket'] = 'techxbucket'; $config['s3fs.settings']['region'] = 'ap-south-1'; $settings['s3fs.use_s3_for_public'] = FALSE; $settings['s3fs.upload_as_private'] = TRUE;

These are details that we got while creating AWS security details and S3 bucket. Make sure you add the above details.

Configuring upload fields

Now that we have configured our Amazon S3, let’s look at applying the S3 storage to our upload fields. So instead of getting stored in the public file system, it gets stored in the S3 file system. Head to the field settings of any upload field of your Drupal site. You will now see that you have two options for the Upload destination - Public Files and S3 File System (as shown below).

Now when you select S3 File System and then upload a file, it will upload it to the S3  bucket. And the file directory is as configured in the field. When you hover on the file now it will display the S3 path (bottom left of the below screenshot) from where the file is served.

Amazon S3 offers a powerful cloud storage system for organizations looking for an easy-to-access & deliver, scalable, durable and secure storage service. Unsurprisingly, S3 is Amazon’s most commonly used cloud storage service amongst all its other services. In this article, you have seen how easy it is to configure S3 on a Drupal website and shift all your content files to its bucket. Learn more about our Drupal services to find out how we can help you with your next Drupal project. We’d love to talk.

Drupal Development Drupal Planet Subscribe to our Newsletter Now Subscribe Leave this field blank

Leave us a Comment

  Recent Blogs Image How to store and serve files from Amazon S3 on your Drupal website Image Drupal - Why is it a good choice for your Business? Image A Beginners Guide to Photoshop and Punching Up Your Website Images Want to extract the maximum out of Drupal? TALK TO US Featured Success Stories

Upgrading and consolidating multiple web properties to offer a coherent digital experience for Physicians Insurance

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

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

View all Case Studies
Categories:

clemens-tolboom commented on issue bestguy/sveltestrap#461

On github - Mon, 2022/03/28 - 8:03pm
clemens-tolboom commented on bestguy/sveltestrap#461 Mar 28, 2022 clemens-tolboom commented Mar 28, 2022

A quick scan of the code shows more problems as bind: must be before on: unless ... see links above. FormCheck.svelte 41- on:change 42- on:focus 43…