SlideShare ist ein Scribd-Unternehmen logo
1 von 13
Downloaden Sie, um offline zu lesen
Introduction to Drupal 7

                      Bonus Session – Session 5.1
                          WYSIWYG Editor



Drupalist: Kalin Chernev       Course by Init Lab (http://initlab.org)   1
Agenda
•    What is actually the WYSIWYG editor
•    Installing WYSIWYG editor
•    Most common configurations
•    Popular add-on modules for WYSIWYG editors




Drupalist: Kalin Chernev   Course by Init Lab (http://initlab.org)   2
The WYSIWYG editor
• WYSIWYG = what you see is what you get
• In simple terms, this is a set of Word-like
  editor buttons that enable you do nice things




Drupalist: Kalin Chernev       Course by Init Lab (http://initlab.org)   3
Installing a WYSIWYG editor in Drupal
• To have a WYSIWYG editor in Drupal, you need
       – The WYSIWYG API module;
       – Any of the following external editor libraries:
              •   TinyMCE;
              •   FCKeditor;
              •   jWysiwyg;
              •   markItUp;
              •   NicEdit;
              •   openWYSIWYG;
              •   Whizzywig;
              •   WYMeditor;
              •   YUI editor;

Drupalist: Kalin Chernev     Course by Init Lab (http://initlab.org)   4
Installing the editor library, step 1
• Install the WYSIWYG API module as normal;
• Go to Administration > Configuration >
  Content authoring > WYSIWYG Profiles
• URL: admin/config/content/wysiwyg
• Choose the editor you’re going to use, for
  example let’s install the ckeditor one;
• Go to http://ckeditor.com/download and
  download the latest version of the library
Drupalist: Kalin Chernev   Course by Init Lab (http://initlab.org)   5
Installing the editor library, step 2
• In your website sites/all folder create a new
  folder named “libraries”
• Place the un-archived version of the library in
  the libraries folder you just created
• The following file structure has be available
  sites/all/libraries/ckeditor/ckeditor.js
• Refresh the WYSIWYG profiles page and select
  the editor for any desired input format

Drupalist: Kalin Chernev   Course by Init Lab (http://initlab.org)   6
Configuring your editor library
• Select the buttons you want to be available in
  the WYSIWYG editor




Drupalist: Kalin Chernev   Course by Init Lab (http://initlab.org)   7
Add the option to clean-up on paste
• This will make sure a nice cleanup is done if
  Word text is pasted in the editor




Drupalist: Kalin Chernev   Course by Init Lab (http://initlab.org)   8
Add the option to use default css
• This will fix your editor styling to be ok in any
  theme you’re using for the front-end




Drupalist: Kalin Chernev   Course by Init Lab (http://initlab.org)   9
Adding files management option
• You need to install IMCE module to have
  integrated files management capabilities to
  your WYSIWYG editor;
• In order for the IMCE module to be really used
  with the WYSIWYG API module, you’ll need to
  install the IMCE Wysiwyg bridge module
• After installing these 2 modules, you’ll need to
  go to the WYSIWYG profiles pages again and
  add the new IMCE button manually;

Drupalist: Kalin Chernev   Course by Init Lab (http://initlab.org)   10
Enabling the IMCE button
• Enabling the IMCE button will add the files
  management capabilities to your editor




Drupalist: Kalin Chernev   Course by Init Lab (http://initlab.org)   11
Time for questions




Drupalist: Kalin Chernev       Course by Init Lab (http://initlab.org)   12
Contacts
Kalin Chernev
       – E: kalata@shtrak.eu
       – T: twitter.com/kalinchernev
       – B: http://shtrak.eu/kalata




Drupalist: Kalin Chernev   Course by Init Lab (http://initlab.org)   13

Weitere ähnliche Inhalte

Was ist angesagt?

Continuous Integration (Jenkins/Hudson)
Continuous Integration (Jenkins/Hudson)Continuous Integration (Jenkins/Hudson)
Continuous Integration (Jenkins/Hudson)
Dennys Hsieh
 

Was ist angesagt? (20)

Jenkins
JenkinsJenkins
Jenkins
 
Jenkins introduction
Jenkins introductionJenkins introduction
Jenkins introduction
 
Jenkins tutorial for beginners
Jenkins tutorial for beginnersJenkins tutorial for beginners
Jenkins tutorial for beginners
 
Supermondays: Jenkins CI lightning talk
Supermondays: Jenkins CI lightning talkSupermondays: Jenkins CI lightning talk
Supermondays: Jenkins CI lightning talk
 
Continuous Integration (Jenkins/Hudson)
Continuous Integration (Jenkins/Hudson)Continuous Integration (Jenkins/Hudson)
Continuous Integration (Jenkins/Hudson)
 
Continuous Delivery Using Jenkins
Continuous Delivery Using JenkinsContinuous Delivery Using Jenkins
Continuous Delivery Using Jenkins
 
Jenkins advance topic
Jenkins advance topicJenkins advance topic
Jenkins advance topic
 
An Introduction To Jenkins
An Introduction To JenkinsAn Introduction To Jenkins
An Introduction To Jenkins
 
Jenkins-CI
Jenkins-CIJenkins-CI
Jenkins-CI
 
Azure slots for app deployment the continuous delivery way
Azure slots for app deployment the continuous delivery wayAzure slots for app deployment the continuous delivery way
Azure slots for app deployment the continuous delivery way
 
Jenkins Introduction
Jenkins IntroductionJenkins Introduction
Jenkins Introduction
 
JENKINS Training
JENKINS TrainingJENKINS Training
JENKINS Training
 
Jenkins CI
Jenkins CIJenkins CI
Jenkins CI
 
Git flow workflow example
Git flow workflow exampleGit flow workflow example
Git flow workflow example
 
Using JHipster 4 for generating Angular/Spring Boot apps
Using JHipster 4 for generating Angular/Spring Boot appsUsing JHipster 4 for generating Angular/Spring Boot apps
Using JHipster 4 for generating Angular/Spring Boot apps
 
Jenkins CI
Jenkins CIJenkins CI
Jenkins CI
 
Session 2
Session 2Session 2
Session 2
 
Session 2
Session 2Session 2
Session 2
 
GitHub Actions for 5 minutes
GitHub Actions for 5 minutesGitHub Actions for 5 minutes
GitHub Actions for 5 minutes
 
SydJS.com
SydJS.comSydJS.com
SydJS.com
 

Andere mochten auch (6)

E-Business in Rural Communities
E-Business in Rural CommunitiesE-Business in Rural Communities
E-Business in Rural Communities
 
Configuring and Testing PHP Support in Microsoft Windows 2000 ...
Configuring and Testing PHP Support in Microsoft Windows 2000 ...Configuring and Testing PHP Support in Microsoft Windows 2000 ...
Configuring and Testing PHP Support in Microsoft Windows 2000 ...
 
Email Effective Security Practices: 10 Concrete Steps to Consider
Email Effective Security Practices: 10 Concrete Steps to ConsiderEmail Effective Security Practices: 10 Concrete Steps to Consider
Email Effective Security Practices: 10 Concrete Steps to Consider
 
Fotolog: Scaling the World's Largest Photo Blogging Community
Fotolog: Scaling the World's Largest Photo Blogging CommunityFotolog: Scaling the World's Largest Photo Blogging Community
Fotolog: Scaling the World's Largest Photo Blogging Community
 
Solving the C20K Problem: PHP Performance and Scalability
Solving the C20K Problem: PHP Performance and ScalabilitySolving the C20K Problem: PHP Performance and Scalability
Solving the C20K Problem: PHP Performance and Scalability
 
Running and Developing Tests with the Apache::Test Framework
Running and Developing Tests with the Apache::Test FrameworkRunning and Developing Tests with the Apache::Test Framework
Running and Developing Tests with the Apache::Test Framework
 

Ähnlich wie Introduction to Drupal 7 - Installing and configuring WYSIWYG editors in Drupal

WebObjects Developer Tools
WebObjects Developer ToolsWebObjects Developer Tools
WebObjects Developer Tools
WO Community
 

Ähnlich wie Introduction to Drupal 7 - Installing and configuring WYSIWYG editors in Drupal (20)

Yii workshop
Yii workshopYii workshop
Yii workshop
 
Eclipse IDE, 2019.09, Java Development
Eclipse IDE, 2019.09, Java Development Eclipse IDE, 2019.09, Java Development
Eclipse IDE, 2019.09, Java Development
 
WordPress for Content Editors
WordPress for Content EditorsWordPress for Content Editors
WordPress for Content Editors
 
OpenCms Days 2014 - OpenCms Module Development and Deployment with IntelliJ, ...
OpenCms Days 2014 - OpenCms Module Development and Deployment with IntelliJ, ...OpenCms Days 2014 - OpenCms Module Development and Deployment with IntelliJ, ...
OpenCms Days 2014 - OpenCms Module Development and Deployment with IntelliJ, ...
 
Get Rapid Right-sized and Recent with the Liberty Repository
Get Rapid Right-sized and Recent with the Liberty RepositoryGet Rapid Right-sized and Recent with the Liberty Repository
Get Rapid Right-sized and Recent with the Liberty Repository
 
FooConf23_Bringing the cloud back down to earth.pptx
FooConf23_Bringing the cloud back down to earth.pptxFooConf23_Bringing the cloud back down to earth.pptx
FooConf23_Bringing the cloud back down to earth.pptx
 
From XPages Hero to OSGi Guru: Taking the Scary out of Building Extension Lib...
From XPages Hero to OSGi Guru: Taking the Scary out of Building Extension Lib...From XPages Hero to OSGi Guru: Taking the Scary out of Building Extension Lib...
From XPages Hero to OSGi Guru: Taking the Scary out of Building Extension Lib...
 
WordPress Security and Best Practices
WordPress Security and Best PracticesWordPress Security and Best Practices
WordPress Security and Best Practices
 
OpenCms Module Development & Deployment with IntelliJ, Maven and Jenkins
OpenCms Module Development & Deployment with IntelliJ, Maven and JenkinsOpenCms Module Development & Deployment with IntelliJ, Maven and Jenkins
OpenCms Module Development & Deployment with IntelliJ, Maven and Jenkins
 
CICD_1670665418.pdf
CICD_1670665418.pdfCICD_1670665418.pdf
CICD_1670665418.pdf
 
Jfokus_Bringing the cloud back down to earth.pptx
Jfokus_Bringing the cloud back down to earth.pptxJfokus_Bringing the cloud back down to earth.pptx
Jfokus_Bringing the cloud back down to earth.pptx
 
WebObjects Developer Tools
WebObjects Developer ToolsWebObjects Developer Tools
WebObjects Developer Tools
 
DevOps on AWS: Accelerating Software Delivery with the AWS Developer Tools
DevOps on AWS: Accelerating Software Delivery with the AWS Developer ToolsDevOps on AWS: Accelerating Software Delivery with the AWS Developer Tools
DevOps on AWS: Accelerating Software Delivery with the AWS Developer Tools
 
Modular PHP Development using CodeIgniter Bonfire
Modular PHP Development using CodeIgniter BonfireModular PHP Development using CodeIgniter Bonfire
Modular PHP Development using CodeIgniter Bonfire
 
Using Features
Using FeaturesUsing Features
Using Features
 
Os php-wiki1-pdf
Os php-wiki1-pdfOs php-wiki1-pdf
Os php-wiki1-pdf
 
Building reusable websites on Drupal 8: lessons learned from transforming red...
Building reusable websites on Drupal 8: lessons learned from transforming red...Building reusable websites on Drupal 8: lessons learned from transforming red...
Building reusable websites on Drupal 8: lessons learned from transforming red...
 
From WordPress With Love
From WordPress With LoveFrom WordPress With Love
From WordPress With Love
 
[Webinar] Automating Developer Workspace Construction for the Nuxeo Platform ...
[Webinar] Automating Developer Workspace Construction for the Nuxeo Platform ...[Webinar] Automating Developer Workspace Construction for the Nuxeo Platform ...
[Webinar] Automating Developer Workspace Construction for the Nuxeo Platform ...
 
An Introduction to Drupal
An Introduction to DrupalAn Introduction to Drupal
An Introduction to Drupal
 

Mehr von Kalin Chernev

Mehr von Kalin Chernev (20)

Style guides in drupal development workflows
Style guides in drupal development workflowsStyle guides in drupal development workflows
Style guides in drupal development workflows
 
RESTful with Drupal - in-s and out-s
RESTful with Drupal - in-s and out-sRESTful with Drupal - in-s and out-s
RESTful with Drupal - in-s and out-s
 
Trainings and education at hackerspaces
Trainings and education at hackerspacesTrainings and education at hackerspaces
Trainings and education at hackerspaces
 
Introduction to Frontend Development - Session 2 - CSS Fundamentals
Introduction to Frontend Development - Session 2 - CSS FundamentalsIntroduction to Frontend Development - Session 2 - CSS Fundamentals
Introduction to Frontend Development - Session 2 - CSS Fundamentals
 
Introduction to Frontend Development - Session 1 - HTML Fundamentals
Introduction to Frontend Development - Session 1 - HTML FundamentalsIntroduction to Frontend Development - Session 1 - HTML Fundamentals
Introduction to Frontend Development - Session 1 - HTML Fundamentals
 
SEO Fundamentals Outline Lecture 2
SEO Fundamentals Outline Lecture 2SEO Fundamentals Outline Lecture 2
SEO Fundamentals Outline Lecture 2
 
Search Engine Optimization Fundamentals
Search Engine Optimization FundamentalsSearch Engine Optimization Fundamentals
Search Engine Optimization Fundamentals
 
Hackerspaces in Bulgaria Lecture VarnaConf 2012
Hackerspaces in Bulgaria Lecture VarnaConf 2012Hackerspaces in Bulgaria Lecture VarnaConf 2012
Hackerspaces in Bulgaria Lecture VarnaConf 2012
 
Introduction to Drupal 7 - SEO
Introduction to Drupal 7 - SEOIntroduction to Drupal 7 - SEO
Introduction to Drupal 7 - SEO
 
Introduction to Drupal 7 - Performance optimization
Introduction to Drupal 7 - Performance optimizationIntroduction to Drupal 7 - Performance optimization
Introduction to Drupal 7 - Performance optimization
 
Introduction to Drupal 7 - Updating core, themes and modules. applying patches
Introduction to Drupal 7 - Updating core, themes and modules. applying patchesIntroduction to Drupal 7 - Updating core, themes and modules. applying patches
Introduction to Drupal 7 - Updating core, themes and modules. applying patches
 
Introduction to Drupal 7 Users and roles management
Introduction to Drupal 7 Users and roles managementIntroduction to Drupal 7 Users and roles management
Introduction to Drupal 7 Users and roles management
 
Introduction to Drupal 7 Themes and design
Introduction to Drupal 7 Themes and designIntroduction to Drupal 7 Themes and design
Introduction to Drupal 7 Themes and design
 
Introduction to Drupal 7 - Panels
Introduction to Drupal 7 - PanelsIntroduction to Drupal 7 - Panels
Introduction to Drupal 7 - Panels
 
Introduction to Drupal 7 - Homework - webforms on webforms
Introduction to Drupal 7 - Homework - webforms on webformsIntroduction to Drupal 7 - Homework - webforms on webforms
Introduction to Drupal 7 - Homework - webforms on webforms
 
Introduction to Drupal 7 - Webforms
Introduction to Drupal 7 - WebformsIntroduction to Drupal 7 - Webforms
Introduction to Drupal 7 - Webforms
 
Introduction to Drupal 7 - Blocks management and contexts
Introduction to Drupal 7 - Blocks management and contextsIntroduction to Drupal 7 - Blocks management and contexts
Introduction to Drupal 7 - Blocks management and contexts
 
Introduction to Drupal 7 - Homework on making latest news slideshow block
Introduction to Drupal 7 - Homework on making latest news slideshow blockIntroduction to Drupal 7 - Homework on making latest news slideshow block
Introduction to Drupal 7 - Homework on making latest news slideshow block
 
Introduction to Drupal 7 - Making a slideshow with Views 3
Introduction to Drupal 7 - Making a slideshow with Views 3Introduction to Drupal 7 - Making a slideshow with Views 3
Introduction to Drupal 7 - Making a slideshow with Views 3
 
Introduction to Drupal 7 - Homework - making team section
Introduction to Drupal 7 - Homework - making team sectionIntroduction to Drupal 7 - Homework - making team section
Introduction to Drupal 7 - Homework - making team section
 

Kürzlich hochgeladen

Kürzlich hochgeladen (20)

Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
 
Advantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your BusinessAdvantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your Business
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)
 
Developing An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of BrazilDeveloping An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of Brazil
 
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a Fresher
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
 

Introduction to Drupal 7 - Installing and configuring WYSIWYG editors in Drupal

  • 1. Introduction to Drupal 7 Bonus Session – Session 5.1 WYSIWYG Editor Drupalist: Kalin Chernev Course by Init Lab (http://initlab.org) 1
  • 2. Agenda • What is actually the WYSIWYG editor • Installing WYSIWYG editor • Most common configurations • Popular add-on modules for WYSIWYG editors Drupalist: Kalin Chernev Course by Init Lab (http://initlab.org) 2
  • 3. The WYSIWYG editor • WYSIWYG = what you see is what you get • In simple terms, this is a set of Word-like editor buttons that enable you do nice things Drupalist: Kalin Chernev Course by Init Lab (http://initlab.org) 3
  • 4. Installing a WYSIWYG editor in Drupal • To have a WYSIWYG editor in Drupal, you need – The WYSIWYG API module; – Any of the following external editor libraries: • TinyMCE; • FCKeditor; • jWysiwyg; • markItUp; • NicEdit; • openWYSIWYG; • Whizzywig; • WYMeditor; • YUI editor; Drupalist: Kalin Chernev Course by Init Lab (http://initlab.org) 4
  • 5. Installing the editor library, step 1 • Install the WYSIWYG API module as normal; • Go to Administration > Configuration > Content authoring > WYSIWYG Profiles • URL: admin/config/content/wysiwyg • Choose the editor you’re going to use, for example let’s install the ckeditor one; • Go to http://ckeditor.com/download and download the latest version of the library Drupalist: Kalin Chernev Course by Init Lab (http://initlab.org) 5
  • 6. Installing the editor library, step 2 • In your website sites/all folder create a new folder named “libraries” • Place the un-archived version of the library in the libraries folder you just created • The following file structure has be available sites/all/libraries/ckeditor/ckeditor.js • Refresh the WYSIWYG profiles page and select the editor for any desired input format Drupalist: Kalin Chernev Course by Init Lab (http://initlab.org) 6
  • 7. Configuring your editor library • Select the buttons you want to be available in the WYSIWYG editor Drupalist: Kalin Chernev Course by Init Lab (http://initlab.org) 7
  • 8. Add the option to clean-up on paste • This will make sure a nice cleanup is done if Word text is pasted in the editor Drupalist: Kalin Chernev Course by Init Lab (http://initlab.org) 8
  • 9. Add the option to use default css • This will fix your editor styling to be ok in any theme you’re using for the front-end Drupalist: Kalin Chernev Course by Init Lab (http://initlab.org) 9
  • 10. Adding files management option • You need to install IMCE module to have integrated files management capabilities to your WYSIWYG editor; • In order for the IMCE module to be really used with the WYSIWYG API module, you’ll need to install the IMCE Wysiwyg bridge module • After installing these 2 modules, you’ll need to go to the WYSIWYG profiles pages again and add the new IMCE button manually; Drupalist: Kalin Chernev Course by Init Lab (http://initlab.org) 10
  • 11. Enabling the IMCE button • Enabling the IMCE button will add the files management capabilities to your editor Drupalist: Kalin Chernev Course by Init Lab (http://initlab.org) 11
  • 12. Time for questions Drupalist: Kalin Chernev Course by Init Lab (http://initlab.org) 12
  • 13. Contacts Kalin Chernev – E: kalata@shtrak.eu – T: twitter.com/kalinchernev – B: http://shtrak.eu/kalata Drupalist: Kalin Chernev Course by Init Lab (http://initlab.org) 13