Skip to main content

How to get the base URL of a Drupal 9 site

My goal was to get the base URL and compare it with the URL of the link.  Was it an internal or external link?  You can get the hostname, "{your_domain}", directly from the getHost() request:

$host = \Drupal::request()->getHost();

However, if you need the schema as well, such as https://{your_domain}

$host = \Drupal::request()->getSchemeAndHttpHost();

 

Upload an image file using JSON:API

Whilst I had regularly used HAL to upload files through REST API, this is no longer an option given Hal is now deprecated and will be dropped in Drupal 10.  Time to explore JSON:API.

Drupal modules to be installed

You will need to install

  • JSON:API
  • Media

Configuration for JSON:API

Alter the JSON:API to accept all:

Path: Administration > Configuration > Web services > JSON:API

Programmatically get a Drupal taxonomy term tid from it's name

How do you retrieve a taxonomy term tid value from it's name?

In this situation, use the loadByProperties function.  Load the taxonomy term and then reset the array.

Note, reset - to set the internal pointer of an array to its first element.

See as follows:

Drupal - How do I programmatically set contextual filters?

If you are like me, almost every view I have will have this filter.  So I regularly have the need to set a contextual filter programmatically.  However, some won't and will have other contextual filters instead.

You can pass through the $view object the contextual filter params using the setArguments() method.  Say you want to pass three node nids to the view to filter the results contextually:

Drupal 9 adding a reCAPTCHA element to a webform

 

JSON structure

Outlining the structure of the elements common attributes: type, title, name and required;

Text area

{
    "type": "webform_multiple",
    "title": "What's new?",
    "name": "what_s_new_",
    "required": false
}

Text field

An additional attribute for the text field is maxlength

Adding icon and type elements to the JSON output for React frontend

Working on a decoupled React / Drupal 9 site.

Aim: Adjust the output of curated content for the Work Resources page.  So the icon is displayed with a path.  Enabling React developers to select whether to use the image or icon.

Tools

Drupal 9.4
React  

 

How to get the node.nid from the alias

In this instance, I'll check the beginning of the string.  I want to focus on the href's that start with /node/.  Which has been added using the variable $catchPhrase.

Using the Drupal service path_alias to return the node.nid as follows:

Microsoft Teams - not opening on MACOS - how to delete cache of Microsoft Teams on macOS?

Trying to have a chat recently, and Microsoft Teams would not open on MAC OS.  Sometimes it would open without issue.  But today, no play.

The email comes through with no issue.  Opens in Safari with no issue.  But the link to open in Microsoft Teams, goes nowhere.

Below are the progressive steps that I took to resolve this issue (note that this could take multiple solutions - let's see):

 

Subscribe to