Easy Gmap provides a new field type for adding Google maps on your site with a map preview. It works by entering an address or clicking on the map.
Map is displayed for end users in iframe.
You just need to enter Google Maps API key here:
Drupal as a Content Management System (CMS), is known for its versatility and power. Unfortunately, it is also known to have a steep learning curve. The task of mastering the building of a Drupal-powered website can be quite daunting to novice users. The good news is that many online resources are available to help you overcome the learning challenges.
This article is your guide to the main online resources for mastering Drupal. Some resources are generally applicable to any modern Drupal releases, others are specific to Drupal 8 (the most recent release), or Drupal 7.
General resources Acquia Academy
Acquia is a company specializing in using Drupal to build enterprise websites. Drupal's original creator, Dries Buytaert, currently serves as Acquia's CTO. Acquia Academy is the training division within Acquia. It provides both free and paid training services.
The free training component comprises of videos as well as instructor-led online courses. If you want a quick introduction to Drupal 7 or 8, watch the videos. If you want a more formal course experience with exercises and reading assignments, you can take the online courses.
Drupal learners need a live Drupal website so that they can practice their skills. The Acquia training materials include instructions on how to obtain free trial access to the Acquia Drupal platform. This is a bonus to those learners who are not ready to install and run Drupal on their own machines.
Drupalize.me is a paid Drupal training website created in 2010 by Lullabot. After you become a paid member, you will have access to a library of 1,400+ Drupal videos. You can watch the videos in any browser on your desktop or mobile device, but you cannot download them. They don't offer a free trial. However, a small subset of the videos are free for you to sample.
BuildAModule is another membership-based, paid training service. It has 1,900+ Drupal videos. A very nice feature is that their videos are displayed with a clickable transcript. The transcript makes following and navigating a video much easier.
The introductory chapters in their videos are often free for you to sample. With a paid membership, you can watch, but not download, entire videos on their website.
Drupal Answers is a community-based, question-and-answer database for Drupal developers and administrators. The database contains answers to 63,000+ questions. Because of the target audience, the questions are technical in nature, and often involve how to accomplish particular tasks in Drupal. Many technical questions that Drupal beginners ask are answered there.
Drupal Answers is hosted by StackExchange, and sign-up is free.
Drupal Forums is the official Drupal.org question-and-answer database. In addition to technical, "how-to" support problems, this forum covers news and announcements about the Drupal community. Sign-up is free.
Drupal 8 Links & Resources
Drupal 8 Links is an aggregator website which collects links to Drupal-8-related resources. It has 120+ links to code examples, blog posts, videos, and podcasts. This is a great resource for Drupal 7 practitioners who want to update their knowledge to Drupal 8.
Beginner’s resources Drupal First Time User Guide
If you are a first-time Drupal user, this user guide is a great starting point. It is a community-maintained document. So, don't be surprised that this document is written with varying levels of details on a variety of topics. Some topics are substantiated with original text while others are links to external webpages.
You will find well-formed opinions from people who had done it and are now contributing back their experience in the form of best practices. For instance, you will find publishing workflow suggestions as well as a list of which contributed modules to learn.
Drupal Installation Profile and Distributions
Drupal beginners are often confused about which contributed modules to use and how to configure them to implement a particular type of service, e.g., e-commerce. The good news is that you can download pre-packaged Drupal distributions that are tailored for some common services. This article provides details on how to create installation profiles and distributions for Drupal 7. Although beginners may not need to package their own distributions at the early stage of learning, you will find the overview useful, especially the link to existing distributions that you can install and try out.
Exploring Themes in Drupal 8
This article explains how to create a starter theme in Drupal 8. It begins with an overview of starter themes and learnes you to work with libraries.
Site builders' resources What is a Drupal Site Builder?
This podcast explains the basic roles in Drupal development, namely, site builders, front-end developers, and back-end developers. It also explores the basic skill requirements for each role. If you are new to Drupal development, this will help you plan your career path.
Basic Site Building Concepts
Before you actually start developing a Drupal website, it is highly recommended that you read this article to get familiar with the concepts and terminology of Drupal. This article is especially helpful if you have some previous background in WordPress. You already know about modules, pages, and posts. But, with Drupal, you need to learn some new concepts such as nodes, content types, blocks, views, hooks, and articles.
How to Build a Website with Drupal
This article does not teach you how to create contents for your Drupal website. Instead, it focuses on how you should do the initial setup and configuration. For example, you will learn how to customize the title and slogan for your website, change the theme, and import basic contributed modules. This article was written for Drupal 7.
Developers' resources Drupal API Reference
Drupal is highly extensible. You can use the Drupal API to customize its most minute behavior.
All Drupal developers should bookmark the official API documentation portal. The documentation there is generated directly from the comments embedded in the source code. It is the most up-to-date and accurate source of information about the Drupal API.
What is a Drupal Developer?
This article is a perfect, written companion to the aforementioned podcast "What is a Drupal Site Builder?" It discusses the 3 main roles in Drupal development (site builders, front-end developers, and back-end developers), and the corresponding skill sets required. In addition, it introduces the non-development roles which you will see in a large Drupal project. Examples are system administrators, testers(QA), project managers, and user-experience (UX) designers. Toward the bottom of the article, you will find some good advice on growing your Drupal career.
Become a Drupal Developer
This article is best described as a lesson plan on how to become a Drupal developer. You will find links to video tutorials on Drupalize.me. Note that only some of the videos are free.
The emphasis is on back-end PHP development. Drupal 7 information is presented in the beginning of the article; Drupal 8, near the end.
The plan to become a Drupal developer includes the learning of PHP coding fundamentals as well as the Drupal APIs. Also, it advocates the learning of tools to increase productivity and promote teamwork. The tools include git, Drush, and Composer.
Guide to Theming in Drupal
This guide is your launchpad for learning how to change the theme of a Drupal 7 (or 8) website. It contains links to both Drupal.org as well as third-party resources. The guide is community-maintained.
Introduction to Drupal 8 Configuration Management
This article first explains what configuration management (CM) means with respect to a Drupal website. Then, it expounds on the changes introduced by Drupal 8 to CM. You will find the CM video embedded in the article very useful.
Custom training resources
Private training is available if you want a training program that is customized to your specific Drupal needs and requirements. Vardot is an Acquia Training Partner which delivers customized professional training.Tags: Drupal Drupal Planet Training Title: Learning Drupal: Your Guide to Main Resources
Drupal 8.2.0, the second minor release of Drupal 8, is now available. With Drupal 8, we made significant changes in our release process, adopting semantic versioning and scheduled feature releases. This allows us to make extensive improvements to Drupal 8 in a timely fashion while still providing backwards compatibility.What's new in Drupal 8.2.x?
This new version includes additional experimental modules to place blocks on pages, to edit configuration related to blocks without leaving the page, to create content moderation workflows, and to use date ranges. Several smaller authoring experience, site building, and REST and decoupled site improvements are included as well. (Experimental modules are provided with Drupal core for testing purposes, but are not yet fully supported.)Easier to place and configure blocks on pages
The new experimental Place Block module allows placing blocks on any page without having to navigate to the backend administration form. After selecting the region for placement, block configuration can be adjusted in a modal dialog allowing full control of all the details.
There is also a much easier way to modify block configuration, with the experimental Settings Tray module. Editing a block opens a tray in a sidebar with the block's title and other settings. For the site name block, for example, you can edit the site name directly in the sidebar. For menu blocks, you can adjust the menu there.Content moderation now included
Drupal has always supported both published and unpublished content, but more granular workflow support was not available in Drupal core. The new experimental Content Moderation module, based on the contributed Workbench Moderation project, allows defining content workflow states such as Draft, Archived, and Published, as well as which roles have the ability to move content between states.Support for date ranges
The Datetime module included with core only supports storing single points in time. The experimental Datetime Range module provides a new field type that also allows end dates. This is important for helping contributed modules like the Calendar module to work with Drupal 8 core.Site building, content authoring, and administrative improvements
Drupal 8.2.0 also improves stable functionality for administration, site building, and authoring. Drupal now enables revisions by default for new content types, to provide better accountability, to create a "safety net" for recovering from unintended changes, and to integrate with future workflow features. Content editors will enjoy a more seamless experience, as CKEditor's built-in dialogs are now styled to match Drupal-native dialogs, and creating any entity will always display a message linking to the new entity.
Other incremental enhancements include:
- The user interface text has been improved on numerous administrative pages.
- The redirection of site-wide contact forms is now configurable.
- The comment view mode can now be selected in the display formatter form.
- Relative URLs are converted to absolute ones in generated RSS feeds (ensuring that images and links work wherever the feeds are used).
- Administrators can now elect to remove a module's content entities in order to uninstall the module.
- The internal page cache has been improved for 404 responses.
The Drupal 8.2 release continues to expand Drupal's support for web services that benefit decoupled sites and applications, with bug fixes, simplified configuration, improved responses, and new features. It is now possible to read (GET) configuration entities like vocabularies and content types as REST resources, resolving a significant limitation for REST functionality in 8.1.x and earlier. Login, logout, and user registration are also now possible with REST. The authentication mechanism used by a REST Export Views Display is now configurable, and a cors.config service parameter was added for enabling and configuring cross-origin resource sharing (CORS). REST resource configuration is now also significantly simpler.Developer API improvements
Minor releases like Drupal 8.2.0 include backwards-compatible API additions for developers as well as new features. Read the 8.2.0 release notes for more details on the improvements for developers in this release.What does this mean to me? Drupal 8 site owners
Update to 8.2.0 to continue receiving bug and security fixes. The next bugfix release, 8.2.1, is scheduled for November 2, 2016.
Updating your site from 8.1.10 to 8.2.0 with update.php is exactly the same as updating from 8.1.7 to 8.1.8. Modules, themes, and translations may need small changes for this minor release, so test the update carefully before updating your production site.Drupal 6 site owners
Drupal 6 is not supported anymore. Create a Drupal 8 site and try migrating your data into it as soon as possible. Your Drupal 6 site can still remain up and running while you test migrating your Drupal 6 data into your new Drupal 8 site. Core now provides migrations for most Drupal 6 data, but the migration of multilingual functionality in particular is not complete. If you find a new bug not covered by the known issues with the experimental Migrate module suite, your detailed bug report with steps to reproduce is a big help!Drupal 7 site owners
Drupal 7 is still fully supported and will continue to receive bug and security fixes throughout all minor releases of Drupal 8.
The migration path from Drupal 7 to 8 is not complete, especially for multilingual sites, so you may encounter errors or missing migrations when you try to migrate. That said, since your Drupal 7 site can remain up and running while you test migrating into a new Drupal 8 site, you can help us stabilize the Drupal 7 to Drupal 8 migration path! Testing and bug reports from your real-world Drupal 7 sites will help us stabilize this functionality sooner for everyone. (Search the known issues.)Translation, module, and theme contributors
Minor releases like Drupal 8.2.0 are backwards-compatible, so modules, themes, and translations that support Drupal 8.1.x and Drupal 8.0.x will be compatible with 8.2.x as well. However, the new version does include some changes to strings, user interfaces, and internal APIs (as well as more significant changes to experimental modules). This means that some small updates may be required for your translations, modules, and themes. See the announcement of the 8.2.0 release candidate for more background information.
This year's DrupalCon, in my home town of Dublin, was a brand new experience for me. As a seasoned DrupalCon Veteran, (my first DrupalCon was in Paris in 2009), I thought I knew the ropes - how to choose sessions, what to expect, how to party like a bad-ass... I thought I knew what I would get out of it. Man, was I wrong.
First of all, I want to thank everyone who made my first DrupalCon this awesome and extra special!
Our whole team enjoyed a week full of new experiences, great sessions and - of course - old and new friends! The place, Dublin, was perfect to “seal” a new friendship or strengthen an old one with a good morning coffee (thanks to Commerce Guys by actualys and Mailchimp, the two coffee break sponsors!) or a good cold Guinness (I tried to remember the bar names, but actually I guess I sealed a lot of new friendships..).Drupal Drupal Planet Drupalcon Drupal 8 Events Security
Conlang is an abbreviated term for Constructed Language, essentially a made up language. Constructed languages are used in a lot of media to give a certain feeling to a setting, race, etc. You can see examples in the names and place names of your favorite RPG fantasy race or alien. Done right they’re ridiculously complex, take many factors into consideration and require a large time investment. That’s why some Conlang professionals make the big bucks. This is not an article about doing conlang right. That’s well beyond my expertise. This is instead an article about making a quick and dirty conlang generator based on a seed from an existing language so you can effortlessly name every guardsman, tavern, ceremonial birthing spear, whatever that your players pester you about.
I attempted to make such a generator for a game recently and found that they’re fairly easy to construct with Google Sheets. Other spreadsheet programs will work fine as well if you have them, but the logic will be slightly different.
To start with you’ll need to put your word list in a page on your Google Sheet. Just for fun, we’ll base this conlang on the names of the cast of Jersey Shore. I’ve chosen to ignore the difference between first, middle and last names and to count the dash in Ortiz-Magro as a name so it shows up in our final results. Once you have them listed, break them up by first, last, and middle syllables like so:
Once your root words are broken down by syllables, use the =counta() function to count the number of cells with values in each syllable column. Put these above the root words to make it easy to add more roots later if you want to.
From there, use a formula to subtract the count of column 2 from column 1’s count etc… This will give us an estimate of the proportion of words that have each number of syllables.
Here we can see on Planet J-Shore that around half of names have 2 syllables, around a 6th have 1, 3, or 4, and ~4% have 5.
Next add another row with cumulative syllable count like so:
The next step is to build lookup tables for our syllables. It’s easiest to do this on a new sheet. The plus sign in the lower left will make new sheets. You can re-name your sheets with the drop down arrow on the sheet tab.
Copy-Paste your syllables into columns on this new sheet. Put ALL middle syllable columns into one column here. You can get rid of extra spaces by selecting a column, then from the menu choosing Data>Sort Range picking “has header” and sort. Add a table of numbers just like you were making a table to roll on. (which is what we’re doing) Don’t worry that you have an odd number of syllables.
Create a new sheet for the actual generator. Put in a column for the number of syllables in each random word, one column for each potential syllable (in our case 5) and a final column for the constructed word like so:
In the syllables column add the following formula to each cell:
The fractions in the brackets are the values from the cumulative syllable row from our first sheet. This code creates a random number of syllables based on our observed number of syllables in our seed words.
The contents of the 1st, mid and last syllable columns is all slightly different, but similar to this:
“$A2>2” checks how many syllables the word has. I’m assuming that syllables get added in order of first, last, mid1, mid2, mid3.
“randbetween(1,17)” is the possible “rolls” on the table.
“Tables!G$2:G$18,Tables!H$2:H$18” is the sheet “Tables” and cell range for the “roll number” and result for that syllable type.
Here’s the code for each column in order:
The final column has the code:
which just sticks together all the pieces.
You can hide the first columns if you just want the output list, but I find them useful as a pronunciation guide. I might tweak this generator if I were going to use it by dumping the “-“ syllable, adding some more seeds, and assembling the individual name results into one to three name groups (nickname, first last, first middle last, and first last-last) but for the 15 minutes it takes to put together it does it’s job well enough.
You can view the final sheet here. Feel free to copy, tweak, and put in your own seeds for your own projects.
Addressfield Geocomplete integrates the Geocomplete Library with the Addressfield module to provide autocomplete capabilities. The Geocomplete Library utilizes Google Places API to offer this functionality.
Jupyter notebooks are used in data science for exploring / documenting / presenting data. If you haven't heard of Jupyter maybe you have by it's former name, iPython notebook. Since there are multiple "kernels" supported it was renamed to Jupyter ( for Julia-Python-R ). There is support for 3rd party kernels such as the Ruby kernel and thanks to the Jupyter-PHP project on github we can add PHP to the list.