News
Save up to 65% on Cyber Monday Deals!
Elevate your profile. Improve your skills. Showcase your badges. Get significant deals on open source training and certification from Linux Foundation. Deals end December 4, so start saving now! SAVE NOW
The post Save up to 65% on Cyber Monday Deals! appeared first on Linux.com.
FSF News: Worldwide community of activists protest OverDrive and others forcing DRM upon libraries
Software Foundation (FSF) has announced its Defective by Design
campaign’s 17th annual International Day Against DRM (IDAD). It
will protest uses of Digital Restrictions Management technology’s
hold over public libraries around the world, exemplified by
corporations like OverDrive and Follett Destiny. IDAD will take place
digitally and worldwide on December 8, 2023.
Open Source AI: Establishing a common ground

The Open Source community should not write its own definition of an AI system as there are too many dangers with doing that. It’s safer to adopt a well established one.
The post <span class=’p-name’>Open Source AI: Establishing a common ground</span> appeared first on Voices of Open Source.
Windows NT: peeking into the cradle
La nueva APP de los comercios del Casco Antiguo de Pamplona
Author: Source Read more
Conheça os benefícios e aprenda a cultivar o kefir de água
عمران خان کیلئے سیکورٹی ایشو اور نواز شریف کیلئے پروٹوکول | Despite the order of the High Court…
ہائی کورٹ کے حکم کے باوجود جیل سپرنٹنڈنٹ کا عمران خان کو کھلی عدالت میں پیش کرنے سے معذرت ۔ عمران خان کی بہن علیمہ خان نے کھری کھری سنا دی ۔ نواز شریف کے لئے وی آئی پی پروٹوکول جبکہ عمران خان کی سیکورٹی سے معذرت ۔ یہ نہیں چلے گال ۔
#Politics
#PoliticalNews
#Election2023
#Policy
#Government
#PoliticalAnalysis
#Democracy
#PoliticalDebate
#CampaignTrail
#WorldPolitics
#TVNewsUpdates
#TelevisionNews
#BroadcastHeadlines
#LiveNewsFeed
#NewsChannelCoverage
#PakistanNewsUpdate
#LatestPakistanNews
#BreakingNewsPakistan
#PKNewsAlert
#PakistanHeadlines
#NewsUpdate
#LatestNews
#BreakingNews
#Headlines
#NewsAlert
#PakistanNews
#PKUpdates
#BreakingNewsPK
#PakistanHeadlines
#CurrentAffairsPK
#nurseryrhymes #nurseryrhyme #englishlettersounds #phonicslettersounds #lettersoundsandphonics #lettersounds #lettere #letters #englishalphabet #alphabetphonics #phonicsalphabet #misspatty #phonicsforbabies #rhymes #letter #alphabetsong #alphabetsongsforchildren #alphabets #signlanguageforbabies #englishvarnamala #kidssongs #aslalphabet #kindergarten #phonicsforchildren #phonicssongforkindergarten #americansign#language
#imrankhan #imranriazkhan #pti #ik
#publicnews #breakingnews #NBCNEWS #todaynews #pakistannews #viralvideo #socialmedia
#Tandoor #Order #Roolay #Sketchbook #SSD #SAJJAD #SALEEM #USMAN #RAFIQUE ##HORROR #PERANORMAL #AYESHA #NADEEM #NANI #WALA #LAHORI #PRANK #KHAN #ALI #PRANKS #JAMSHOKAT #FUN #FUNNY #OLD #IS #GOLD #SONG #SONGS #CARTOON #TOM #& #JERRY #CATS ##EXPRESS #NEWS #ARYNEWS #LAHORE #PUCHTA #HAI #WOHKYAHAI #WOHKYAHOGA #WOHKYATHA #KUCHTOHAI ##SHAHRRYVLOG #CHANDVLOG #ASADVLOG #SAMANEWS #PAKISTAN #INDIA #CRICKET #BICKES #SAJJADJANIOFFICAL #SUNNYARIA #THELKAPRNAKS #LAHORIPRNAKS #NEWTELENT
Wikimedia at the ICOM Conference 2023
Specbee: Handling Custom Drupal Migrations Using SqlBase
In this article, we’ll take you through the different Drupal migration methods and especially focus on custom migrations using the SqlBase source plugin. Take a look!
In Technical Terms, What is a Drupal Migration?
Drupal migration is the process of moving content, data, and configuration from another CMS (or an older version of Drupal) to Drupal. A migration consists of several steps: Extract, Transform, and Load (ETL). In the Drupal world, we refer to these as source plugins, process plugins, and destination plugins. The Extract phase is known as the source, Transform is the process, and Load is the destination.
Drupal Migration Methods
When migrating your website from Drupal 7 to Drupal 9 or a later version, there are primarily two migration methods available.
Migration UI
Drush (Custom migration)
Migration UI
When you want to migrate your entire web application, including all configurations and content, to a later version, you can use Migration UI. It’s a straightforward option that doesn’t require in-depth knowledge of Drupal APIs. This approach can be used where your site is not too complex in terms of site architecture and considering all the modules used in Drupal 7 are also available in the target version (Drupal 9 or Drupal 10).
Custom Migration
When you are rewriting your website with a more modern and performance-centric approach which leads to significant changes in the architecture of your new website from Drupal 9, Migration UI literally won’t work. In such cases, you’ll need to roll up your sleeves and build custom migration scripts.
Migration Process
Let’s dig deeper into the migration process. It comprises of 3 major processes.
Source plugin (Extract)
Process plugin (Transform)
Destination plugin (Load)
Source Plugin
Source plugins handle the extraction of data from various sources, which can be in different formats, including raw data, databases, and CSV/XML/JSON files. They extract data from these sources and pass it on to the next phase in the migration process.
Process Plugin
The process plugin works on the source data, restructuring it to match the destination process. It transforms the data into an array, where each key corresponds to a destination property. The values assigned to each key determine how the destination values for your new website are generated.
More details can be found here.
Destination plugin
The destination plugin processes the structured data and saves it on your website. The most common destination plugins are node, term, user, and media.
You likely have a grasp of the migration process. Now, let’s delve deeper into source plugins, with a specific focus on the SqlBase source plugin.
Thinking of migrating your Drupal 7 website to Drupal 10? Get your Drupal 7 Site Audit report for Free!
Using SqlBase for the Drupal Migration
What is SqlBase migration?
SqlBase migration is straightforward—it allows you the flexibility to create your custom SQL queries to obtain the desired output. Other than that, it follows the same principles as other Drupal migration methods.
Why should you use SqlBase Migration?
When your site has a straightforward field structure, content types, etc., Drupal core migration can handle it. However, challenges arise with obsolete field types in Drupal 9 or when restructuring an old website with various content types. If you aim for an editor-friendly and performance-oriented site, a simple migration won’t suffice. You’ll need to prepare your source data and take the SqlBase migration route.
In another scenario, if your current site, built on a platform other than Drupal, provides data in the form of a database, SqlBase migration is also the way to go.
Benefits of leveraging SqlBase Migration
Since this is SqlBase, the speed of your migration relies entirely on how well you craft your database queries. The better your query preparation, the faster the migration will run.
It doesn’t rely on many core migration processes; you have the flexibility to shape and process your data as you see fit.
The SqlBase Source Plugin must implement these three methods:
query(): Returns the SQL query that selects the data from the source database.
fields(): Returns available fields on the source.
getIds(): Defines the source fields uniquely identifying a source row
Let’s get into the details of what these functions should contain:
query() function
/**
* {@inheritdoc}
*/
public function query() {
$query = $this->select(‘job_details’, ‘c’)
->fields(‘c’, array(
‘id’,
‘title’,
‘description’,o
‘position’,
‘company’,
‘criteria’,
));
return $query;
}fields() function
/**
* {@inheritdoc}
*/
public function fields() {
$fields = array(
‘id’= $this->t(‘Autoincrement ID’),
‘title’ = $this->t(‘Job Title’),
‘description’ = $this->t(‘Job Description’),
‘position’ = $this->t(‘Job Position’),
‘company’.= $this->t(‘Company’),
‘criteria’ = $this-»t(‘Job Criteria’),
);
return $fields;
}getIds() function
/**
* {@inheritdoc}
*/
public function getIds() {
return [
‘id’ => [
‘type’ => ‘integer’,
‘alias’=>’j’
];
}Additionally, you can tweak your SQL result by using the prepareRow() function and even add new source properties to your migration.
/**
* {@inheritdoc}
*/
public function prepareRow(Row $row) {
$company = $row->getSourceProperty(‘company’);
$row->setSourceProperty(‘job_type’, ‘on-site’);
if ($company == ‘specbee’) {
$row->setSourceProperty(‘job_type’, ‘remote’);
}
return parent::prepareRow($row);
}These source properties will be sent to your migration yml files and you can also use your own processor if you want any additional processing on your source data.
Referenceshttps://www.drupal.org/project/usage/3398311
Final Thoughts
With Drupal 9’s EOL, the impending farewell to Drupal 7, and the rise of Drupal 10, the need for seamless transitions has never been more pressing. As Drupal evolves, our Drupal Development Company recognizes SqlBase as an essential tool for a seamless and efficient migration process. Offering the flexibility to shape personalized SQL queries, it plays a vital role in crafting tailored data transitions. If you’re looking for a reliable Drupal migration partner, we’re just a form away!