Explain public, private, protected functions and variables inside a class in PHP
Explain public, private, protected functions and variables inside a class in PHP.
I'll define a variable as a property
How do you ensure the new field requiring a change apply in the next deployment?
Assuming there is a new field requiring a change on a content type. How do you ensure the changes apply in the next deployment?
There are a couple of ways to achieve this... depending on whether a custom module exists or not. I'll focus on using Drush.
If you find a bug in a Drupal contributed module, what approach do you take to fix it?
Replicate
Replicate the bug in your local environment.
Check
Check - do you have the latest version of the contrib module? In case the issue has already been identified and resolved.
A quick check of the issue list for the contrib module.
Nothing.
A couple of approaches to build a homepage or landing page through Drupal
2 or 3 approaches to build a homepage or landing page through Drupal
Please include any limitations & considerations of each approach
Building a homepage a few options to consider and should against a business case:
1. Article
An article – create a new node (assuming a least one content type exists), then using Basic Site Settings (admin > config > system), scroll down to Front Page and enter the node.nid value or alias.
A brief explanation how Drupal cache works... Include the different modules provided by Drupal to manage cache
Drupal cache is one of the major subsystems that deliver Drupal's flexibility for devs. In a nutshell, Drupal cache is about speeding up the time to render a page to a user. Vanish or similar pending server-side set-up makes caching more efficient.
Drupal modules - to name a few Internal Dynamic Page Cache, Internal Page Cache, System
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