By now, you should have heard about the latest buzz that is Google AMP - but if not, check out our previous introductory post to learn about the benefits (and potential pitfalls).
If you’re a CTO who’s thinking of migrating to Drupal 8, you might be dealing with a number of questions about what this change means for your business. This week, we’re continuing to answer all of your lingering queries. In part 1 of this series, we covered planning for Drupal 8, and some important implications for Drupal 7. This week, we’re going to delve into the hot topic of Drupal 8’s new functionality, as well as some crucial issues relating to the front end. Are you sitting comfortably? Good, then we’ll begin.New functionality in Drupal 8 9. Does Drupal Commerce feature in the Drupal 8 release?
Drupal Commerce is not maintained by the Drupal core team but maintained by a company - Commerce Guys. They have a Drupal 8 version of the module in active development.
The new Drupal 8 version is described as offering significant improvements over the old versions of Drupal Commerce, including better add to cart facilities, faster product creation and more intuitive product administration.10. Are multilingual sites handled differently in Drupal 8?
Previous versions of Drupal had only partial support for multilingual websites. Multilingual projects usually involved stitching together a number of contributed modules to provide support for various elements of Drupal to be translated and each worked in a slightly different way. This inconsistency caused many projects budget and deadline pressures.
There has been a significant overhaul of multilingual capabilities in Drupal 8. Translations of all core elements are done in a sane and consistent manner in Drupal 8 core.
The installation system natively supports 94 languages. There are simple processes for installing new languages and language updates. The administration interface is entirely translatable. Assets, such as files or images, can now be assigned to a language or shared between languages.11. How is the content editor experience different in Drupal 8?
Drupal 8 ships with the popular CKEditor WYSIWYG web editor. This means this tool is supported as standard and so will be maintained to continue to integrate well with it.
The new NavBar module in Drupal 8 core offers a clean administration tool for accessing all sections of the administration interface.
Drupal 8’s quick edit feature allows content editors the ability to do simple editing and changes in the page instead of loading a form specially for editing content.
On the horizon there are improvements to media handling in Drupal 8 as well which will give Drupal 8 a superior interface for managing assets such as files and images but this did not make it into core.12. Does Drupal 8 handle complex user and content permissions any differently?
Under the hood the content access permission system has been rewritten in Drupal 8 but the behaviour for content administrators is much the same as before.
It is expected that contributed modules will be providing the fine grained additional permission control they did in previous versions of Drupal. The popular choice in previous versions of Drupal for this was Organic Groups, which hadn’t been refactored to match more recent core versions. To provide stable functionality in Drupal 7 we have been using the Group module instead, we are planning to create a Drupal 8 release too.The front-end and Drupal 8 13. Does Drupal 8 change theming and front-end standards approach?
In Drupal 7 PHP based templates made it too easy for developers to place logic in their templates which should have been managed in modules. Over time, templating code which was not strongly controlled would become fragile and it would be hard to find bugs and add new functionality.
Theming has changed significantly with the introduction of the Twig templating system in Drupal 8. Developers will now be able to write almost all markup in Twig templates rather than PHP code in functions. Though there will be an initial investment in learning required by development teams, the long term results will be cleaner templates which are more maintainable.14. How is accessibility handled in Drupal 8?
There have been some improvements made to accessibility in Drupal 8.
WAI-ARIA landmarks, live regions, roles & properties are included which improves the accessibility of dynamic areas of the page. Drupal’s Form API now puts errors in-line rather than having the errors displayed in different regions to the form element which had the input error.
A general approach in Drupal 8 is to use standardised libraries to deliver functionality rather than trying to develop well known and well developed functionality from scratch. By working with library developers, best-of-breed technologies can be developed in partnership with a larger community.
One of the effects of this is that accessibility for a particular function can be developed by teams of people who really understand that field. A good example here is using the jQuery UI library to provide autocomplete functionality in Drupal 8. The Drupal community can now help the jQuery UI community in producing a better, more accessible tool.
We hope you’ve found this post useful and that it’s answered some of your most pressing Drupal questions. In the next part of our mini-series, we’ll be covering Drupal 8 in the enterprise, as well as architecture changes and those all important security issues.
If you’d like to receive the next part in the series, it’s simple: just sign up to our newsletter below.
As previously announced, there will be a Drupal 7 core bug fix/feature release this week (alongside the upcoming Drupal 8 patch release).
The release will be labeled Drupal 7.50 (which is a version jump compared to the current 7.44 release); this is to indicate that this release, although still part of a stable release series, is a bit larger than normal and makes a few more changes and new features available than normal.
The release is expected on Thursday, July 7 to give a bit more time for final testing.
The final patches for Drupal 7.50 have been committed and the code is frozen (excluding documentation fixes, fixes for any regressions that may be found in the next couple days, and changes/additions to "experimental" features not yet intended for production sites). So, now is a wonderful time to update your development/staging servers to the latest 7.x code and help us catch any regressions in advance.
There are six relevant change records for Drupal 7.50 which are listed below. This is not the full list of changes, rather only a list of notable API additions and other changes that might affect individual sites or particular contributed modules, so it's a good place to start looking for any problems:
- New "administer fields" permission added for trusted users
- Drupal 7 core is now protected against clickjacking by default (X-Frame-Options: SAMEORIGIN)
- Added support for full UTF-8 (emojis, Asian symbols, mathematical symbols) on MySQL and other database drivers when the site and database are configured to allow it
- Performance improvements for drupal_get_filename(), which will now trigger a PHP warning when it can't find a file (unless the new $trigger_error parameter is set to FALSE)
- PHP callables can be used in more places in the Ajax system and form API (for PHP 5.4 and higher)
- Users are now logged out automatically when following a password reset link
For more information on the release, see the tentative CHANGELOG.txt for Drupal 7.50, the corresponding list of important issues that will be highlighted in the Drupal 7.50 release notes, and the full list of changes in the Drupal 7 commit log.
If you do find any regressions, please report them in the issue queue. Thanks!
Note: Our recently-added Drupal 7 co-maintainers (stefan.r and Fabianx) and I will consider continuing to do larger Drupal 7 releases like this one every six months or so (in keeping with Drupal's new release cycle), if there is interest and continued contributions from the community. See the ongoing discussion for further details.
For anyone who's ever looked up a definition of a Drupal term and been left wondering what it all means, here are some practical real world explanations you can use to navigate the Drupalverse. Watch this space and use comments to send us your requests.
Aliases: URLs in Drupal often have multiple addresses or aliases. This helps avoid complex machine generated addresses and makes your pages more search engine friendly. Through a variety of methods aliases can be generated automatically according to predefined patterns and then changed or updated in bulk. It is one of Drupal’s most powerful features and is used for everything from SEO to structuring a site and its navigation.
Block: A block is essentially a container that can hold content, lists of content, code, images or text strings and can be placed into a region on a page. Blocks can be created programmatically by a Drupal module or manually. Core Drupal can be extended with contributed modules that create other containers with different names that can be used by Drupal in a similar manner as blocks. This can become confusing to understand and manage especially when more than one method is used on a site. Blocks are the primary means for managing page layout in Drupal core. Blocks can be placed in a region and then configured to be visible only under specific conditions such as a user’s role or the type of content displayed in the main content region of a given page. Once common, the use of executable code in a block in order to bring about a desired behavior on a page can introduce security risks and management overhead. Justified exceptions should be managed closely. Other methods such as development of a custom module are preferred. The ability to add additional fields to blocks in Drupal 8 makes placing marketing automation and web analytics code in blocks more practical.
Content Type: A content type is a collection of data fields grouped together in a logical set to facilitate content entry and display. Default behaviors, such as preview, publish, save as draft or revision, are set up for each content type. Drupal core is preconfigured with two content types, Article and Basic Page. Users with appropriate permissions can create their own custom types. Think of a content type as the structure of the form you create to save multiple posts. A website about food might have a content type ‘Recipe’ that would include individual fields to collect data about ingredients, quantities, cooking time, etc. The Recipe content type could be used to create hundreds of individual Recipe records.Tagged with Comments
Discovery is the part where you make it your business to find out what you don’t know you need to know. Discovery is a process, not a workshop or a questionnaire. There’s a reason why it's called Discovery. You may think you know what you're going to find but often you don’t. Your goal is to uncover any unanticipated issues or complexity and ultimately use the process to generate consensus around priorities and a project plan.
There are three fundamental steps to any really good discovery process. If you don’t fully embrace these steps and execute them with rigor you stand a good chance of missing something critical that can stall or even completely undermine your project. Rushing through discovery will almost always guarantee delays and additional costs. Many organizations will contract for discovery separately. The good news is the steps are simple. They are: think, ask, listen; rinse and repeat. Think carefully about your overall goals, your specific objectives, your resources and budgets and then formulate a thorough list of questions. Do this singularly by yourself and then invite your team members to do it with you. Broaden it to all your stakeholders. Don’t just go to your stakeholders for answers. Go to them for the questions too. Having them be part of the discovery planning will help you achieve buy-in later in the project and will support accountability.
Once you’ve got your questions go out and get your answers. Look at things from all angles and perspectives. Then begin to iterate. Rinse and repeat means that you challenge the answers you’ve been given and you seek to validate them from other angles and different sources.
There is a science to a good discovery but good discovery is also an art. Experienced technologists know what to ask and what to listen for. They know how to reform questions to get more precise and accurate information that will help generate a project scope and specifications.
These steps are the same whether you do your own discovery in-house or with help from a consultant or services organization. Make sure you have at least one person on the discovery team who has senior-level experience with the technology you expect to build out your project with whether it is Drupal or something else. Certainly take advantage of any specific methodologies, templates and/or applications that align with your organization's policies and workflows.Tagged with Comments
Half of the Google Summer of Code coding period has passed and my project now has all the core functionality in it. For those who don’t know, Pubkey Encrypt is a D8 module in development, which aims to encrypt and secure websites’ data-at-rest using login credentials. I started week 6 work by finalizing everything we had done till then, so to get the module in shape for an immediate alpha release. I think it’s very important to release the project early, with a bit less functionality and tagged as an alpha version, instead of releasing it with full functionality at the end of GSoC. This is because of the fact that the module deals with security. And as is the case with any security-related project, there is a lot of chance for unexpected issues to come up during alpha testing in a real-world environment. Luckily, we are ahead of the project timeline we planned in February, by a few weeks. So I’m confident that we’ll be able to tackle any such issues that might come up unexpectedly, no matter how severe they are.
Clutch.co, a research firm based in Washington, D.C. dedicated to identifying the leaders in a variety of digital industries, has named ImageX as their top Drupal development agency. ImageX was awarded this spot after nine client projects were reviewed by Clutch, with ImageX achieving an overall client satisfaction score of 4.8/5.
There are many suggestions for how to go about theming field collections and several confusing problems.
Each day, more Drupal 7 modules are being migrated over to Drupal 8 and new ones are being created for the Drupal community’s latest major release. In this series, the Acquia Developer Center is profiling some of the most prominent, useful modules available for Drupal 8. This week: Google Analytics.Tags: acquia drupal planetanalytics
Recently, I started using the Paragraphs Module to create landing pages.
If you haven’t used it before, go check it out. It’s really user-friendly. I feel like it’s a replacement for field collections. However, unlike field collections, paragraphs allow you to choose a different set of fields each time.Contributed modules mentioned in this post:
Finding a great hosting company is kind of like winning the lottery. You never know who to choose or who to trust with your own website or your client's websites.
With the help of the Drupal Linkedin Group and my own 20+ years of website experience, I've put together a list of some great hosting options for your Drupal Website.
Whether you need cheap Drupal hosting for a startup or top-notch hosting for a huge client, there are some great Drupal hosting options for you.
Deploying your website to production shouldn't be stressful. It should be easy. You should release with confidence.
To make that a reality, you need a repeatable, reliable and most importantly automated deployment process. BLT provides tools for connecting your GitHub, Travis CI, and Acquia Cloud accounts together to ensure that changes to your website are validated, tested, and deployed automatically.Tags: acquia drupal planetbltdeploy
DrupalCon is one of my favorite weeks of the year. Now that it’s over, I’ve had some time to go back and reflect a bit about the week and what I got out of it.
Let’s delve into Drupal module development!
Here is a practical guide by InternetDevels developer
on how to create modules for Drupal 8.
In this article, we will look at the process of building modules for Drupal 8. Specifically, we will create two pages, one of which will add data to its own table, and the other will display the content the right way for us. So let’s begin!Read more
The Dish on Crushing it as a Drupal Developer
Whether you are with an organization switching to Drupal, or you have chosen to make Drupal the focus of your web developer career, your future can be a lot of different things depending on your goals, your focus and your personality. It’s never easy shifting your career, and with Drupal, there are no official, defined developer career recipes to guide you.
The good news is, the ingredients are out there. Within the open-sourcey, especially welcoming, social melting pot that is the Drupal Community, there are a lot of career resources, organizations, individuals, advice and success stories that you can draw on to help you make good choices. Here are a few tips to add to the mix.
Learn early on to do things the right way
Drupal is to web development what snowboarding is to winter sports. They say that it takes a lot longer to learn to snowboard than to ski, but once you get the hang of it, you learn advanced things more quickly, and are able to do a lot more (and have a lot more fun) on a snowboard than you could on skis.
Investing a good amount of time and focus on learning the foundations of Drupal and developing habits based on best practices will really help you reach proficiency, and let you go farther, faster in the long run. The key is making sure you take the time to learn best practices, and don’t go for shortcuts before you’ve got the basics.
Another part of learning the right technical skills is to learn key elements of Drupal, not just in the right way, but in an order that will give you stackable skills. Getting key concepts down at the start will help to not only build your abilities, but feed your confidence. At DrupalEasy, we call them the Big 5:
We feel that mastering these concepts is so important, that in our long-form career training program, the curriculum is designed with examples and excercises that specifically draw on the Big 5 as solutions over and over to ensure that they become second nature for every participant.
Don’t be shy, even if you are
The Drupal Community is unique. There is always an opportunity to help, and there always seems to be someone to provide a little guidance or an answer when you have a question. Make sure you become part of Drupal.org, find an IRC channel that you feel comfortable with, and go to local meetups.
We really can’t overstate how key getting involved in the Drupal community is to your technical and professional success. Once you register on Drupal.org, you can access myriad ways to get involved and help with the Drupal project. Helping to test, sorting out issues and contributing to documentation will not only help build your skills and confidence, it will build your reputation. Even before you are ready to contribute on the technical side, you can join your local Drupal Users’ Group and start by attending, meeting others, and eventually helping to organize events.
Drupal friends and mentors really come in handy as you progress along your career path, more so than in other industries because of the nature of Drupal. We all rely on each other to build, enhance, fix and grow the project, so the more we work together, the better the project, and the better we will be as Drupal professionals. We feel really strongly about this as well, which is why we require all of our Drupal Career program participants to get involved, and we provide everyone a community mentor to kick-start their community efforts from the start of the program.
Just do it, and do it again, and again
With anything, if you want to master it, you need to practice, and practice a lot. Build sites for fun and experience. Like snowboarding, it is especially hard when you first start out, but if you stick with it, and take the struggles as opportunities to learn and get better, you will surely succeed. You’ve also got a lot of potential help and guidance through the community (since you have already taken that advice to heart,) so take advantage of it early on and be prepared to give back when you can.
Our training programs stress this concept of practice, repetition of key skills as you learn more and more, as well as different methods to help you learn them. We are strong believers in building your skills and really understanding Drupal, and that means live instruction by practicing experts, lesson guides, examples, exercises and screencasts to help you soak in the material in different ways. However you learn, take advantage of resources, find different ways to absorb and engage, and practice, practice, practice.
If you would like to learn more about how to succeed in Drupal and our long-form training program, you can sign up for one of two, no-cost Taste of Drupal workshops coming up and explore the resources below.
Taste of Drupal free workshop
Drupal Career Online Program