Until they become conscious they will never rebel, and until after they have rebelled they cannot become conscious.
Whether you’ve been handed an existing Drupal site by your IT department or you’re starting from scratch, it’s important for a Marketer to fully understand how Drupal is put together. Understanding the different systems and layers will help you make better marketing decisions and build content that takes full advantage of Drupal.
This blog post may get a little deep, but don’t worry. If you come away with just a few good concepts about Drupal then you’re doing fine and you can always refer back to this post as you need to. (bookmarks are your friend)
These systems are the key parts that make up a Drupal site:
- The Theme Layer sits on top of your Drupal site and has final say on how things look to your site visitors.
- The Taxonomy System gives you the ability to categorize and tag your content.
- The Node System determines what a “content” is and how it is structured
- The User System creates separate “accounts” for each logged-in visitor.
- The Path System allows you to create site structure in your URLs
The best websites separate the look and feel from the content. That is, in theory, what the theme layer in Drupal does. You or your developer can create a Theme that is made up of CSS and a bit of php (don’t worry, it’s easy or mostly done for you in the theme) to create a look for your site.
For those who prefer a more visual representation, here's a great graphic Drupal.org created to explain theming architecture:
According to Drupal.org, "All layers can implement a themed representation of the output, but (with a few exceptions) only within the theming layers can overrides occur." So, making a single change to the theme will carry down to every single page of your Drupal site.
If you need a certain landing page to be different, it’s very easy to create a separate theme file for just one page. (see "page" section on that link)
Prefer that all your blog posts to have a different font size? You can easily theme content types separately.
Want to hide certain blocks on a form page? You can hide certain blocks on a form page.
Here's a 20 minute video from our friends at Drupalize.me that will help you understand all this a bit more: Introduction to Theming Basics.
If you only understand those few things then you're already well on your way!The Taxonomy System
Taxonomies are used to classify and categorize website content. In other words, they allow you to create a tags to help organize your content within your selected content type. Tags are essential to keeping your content organized and well-structured.
They are helpful internally to the editorial team writing articles so they have a place to nest their content on the site, or to the sales team when they're looking for a past example to help sell a lead on choosing their company's services. Tags also help website visitors find what they're looking for. After all, what's the point in having content if the consumers of that content can't find it?
Overall tag categories are collected in what are called vocabularies. Under vocabularies there are terms or tags followed by sub-terms/sub-tags. An example of this would be a events business with several different service offerings they cover on their blogs. So, there could be a vocabulary called Weddings or another called Birthdays or a third called Corporate Events. Within those vocabularies, tags could include venues, decoration, or catering with sub tags like indoor or outdoor. This video from BuildAModule has another great example of leveraging taxonomies to create different content categories.The Node System
You’ll hear the words “Content” and “Node” used almost interchangeably in the Drupal world. A node is nothing more than a group of “fields” (or "chunks" if you listen to Jeff Eaton...and I do) that are related to each other.
In other words, a node is a group of fields that all go together. For example, if you put these fields together:
Then you’d have a blog post “Content Type”. The Node system has an easy method for defining all the content types you could ever want. You might have different fields that are needed for a Press Release:
- Body text
- Breakout quote
- Contact first name & last name
- Contact email address
- Contact phone number
or a company event:
- RSVP form
See? It’s easy to put together exactly the fields you need for almost any purpose. Drupal provides you with a “Basic Page” and a few other types. The Blog module gives you a “Blog” type. And, you can easily create any of the types you want.The User System
You might be the only person logging into your site, or you may have a whole team that needs access to the site, or perhaps your consumers can log in and create their own accounts. The User system allows you to manage these users so that everyone may log in securely and access what you want them to access. You do this through creating roles such as: Administrator, Author, Developer or Subscriber.
Within each of these user roles, you can set up user access permissions and restrictions to certain content types, admin features such as modules or appearance settings.
The Path System
Drupal, unlike most other CMSs, does not force any kind of organization onto your content. All content is equal to all other content. That’s right, every new content that is created lives on the main node level of a Drupal site. For example, node/123 is just as important as node/1 or node/1000001. There is no built in categorization or layers in a Drupal website, Drupal assigns a number to each piece of content chronologically and you must create your own unique URL paths. While this may seem daunting, it creates deep flexibility in how you’re able to lay out your website structure. Moz has a great guide to URL structuring that covers best practices that your site structure should follow for SEO and user experience.
Search engines often look at how a website is structured to determine what silos (groups) of content that exist on a site. The bigger or deeper the silo the more likely that the site is an authority on that particular topic - especially if users find the content useful and spend a lot of time on the site, link to it, and share it on social networks.
An overview of Drupal's architecture and how Marketer's can use it to full benefitdrupal, Planet Drupal, drupal marketing
While understanding the architecture of your Drupal site might be overwhelming at first, understanding and utilizing these systems will help you create marketing content intelligently that creates a powerful impact. Take a look at your own site, use this post for reference, or bookmarkt it for later. Have questions? Hit us up in the comments, we're always happy to help.
In the world of content strategy, spreadsheets are a critical tool for planning and communication. In particular, content types are often defined and refined in spreadsheets before they're committed to code or CMS configuration.
It is a very common usecase to display a list of nodes on a page, and one or more blocks that give you the ability to filter by tags or categories. You might encounter such a use case on a "blog posts" or "event list" page. And it would be nice if the filtering wouldn't require a full page reload, but rather just inquire the server for new information, and update the list of content via AJAX.
Fortunately creating a list of posts is easy with the Views Module, and you can also make an exposed form block which will contain the exposed filters for tags and categories.
A problem arises when just the Views module is used: it only has support for displaying taxonomy terms (we use them for tags and categories) as a select list. A module that helps us solve this is Better Exposed Filters. It has support for displaying taxonomy terms as a select list, checkoxes/radio buttons, link list, and hidden values.
First a content type "Blog" should be created with two taxonomy fields for tags and categories, and any other relevant fields. The fields can be either term or entity references.
The next step is creating a view that displays blog items. After configuring all the relevant blog settings, the two taxonomy fields should be added as filters.
And afterwards, they should be set as exposed.
Once that is done, assuming the Better Exposed Filters module is installed, the exposed form type should be changed to BEF, and the form can also be exposed as a block.
The last step is changing the BEF settings for the taxonomy fields to be displayed as links.
Once the view is saved and previewed, the list of blog items should be displayed, the exposed form should appear with two sets of links for tags and categories, which once clicked will filter the results to display only posts with the respective tags or categories.
Unfortunately, even if "Use Ajax" was ticked, the filtering will not work via Ajax. This is a known open issue of Better Exposed Filters at https://drupal.org/node/1268150, that still isn't fixed, with the most relevant patch being in comment #81 against the DEV version of BEF.
The patch can be found at https://drupal.org/files/issues/filter_links_ajax.patch, and also in the issue queue at https://drupal.org/node/1268150#comment-8210373.
Once the patch is applied, clicking on the taxonomy links should filter the view via AJAX properly.Language English Tags: DrupalCheck this option to include this post in Planet Drupal aggregator: planet
Recently we have found many of our prospective clients asking us “How are you involved in the Drupal.org community and what do you give back?” which we think is a great question, because it means not only do our clients understand the importance of community contribution, but it means they’re also passionate about working with suppliers who understand the importance of contributing to the Drupal community which is what helps Drupal grow as a platform.
This is important for everybody involved, as many people could argue reasons for and against using different CMS’s, but at the end of the day it’s the strength of the community that really sets Drupal aside from other CMS’s.How do you begin getting involved in the community?
When I was first introduced to the Drupal community I assumed it would be hard to get involved since my initial assumptions were that submitting Modules and patches was the only way to contribute back to Drupal, and since I’m not a back-end developer I thought I’d struggle to get involved here.
Soon enough I found there really is something for everyone, no matter what your skill set is. I began by helping out in the content queue, more specifically by reviewing Marketplace listings. After a couple of months I was given a webmaster role, so I now feel I have my own responsibility within the community! Find out how you can help content moderation here.How does Microserve give back to the Drupal community?
Here is a list of what we have given back to the community and advice on how you can get involved too:Sponsorship/Association
The Microserve team attended our first DrupalCon in Prague this year, and as part of this step we also sponsored the event at silver level. We feel it was a great decision and hope to do the same again next year at Amsterdam, hopefully at a gold level. We would highly recommend it to other agencies, if not for the experience alone. See why you should sponsor here.
We are also Drupal Association Organisation members.
As a Drupal Development Agency we are one of many Supporting Partners that help make it financially possible to maintain and improve drupal.org.Global Training Day Initiative
When we began offering Drupal Training as a service we thought it was only right to host a Drupal Global Training Day. These days are free or low cost training events which are aimed at users who are new to Drupal. We thought the event was a success and was a great boost for Drupal in our local community which helped inject confidence into a variety of users who were uncomfortable with Drupal before attending the event. More information about the day can be found here.Modules/Patches
We have improved modules by submitting patches and helping within the issue queues, we have also submitted a number of our own modules:
Fast database logging and Extended block visibility by Mark Pavlitski
TTR Configurable Widget by Saemie Chouchane (see the accompanying blog post)
Textmarketer SMS Integration by Simon Dix
Who Sends API by Darren Whittington
After submitting Textmarketer SMS Integration, Simon wrote a blog on his experience throughout the submission process. Read it for instructions and tips on how you can submit your first module if you haven’t already.
Textmarketer SMS Integration and TTR Configurable Widget were initially based on features of an existing client project, and with the clients permission we extended this functionality to create modules which other members of the community would find useful. When appropriate we discuss community contribution with clients if we spot any functionality which we think would be beneficial to the community during a project.What else is there to do?
Want to get involved in the Drupal Community too? There are many other ways to get involved in Drupal which we haven't covered above, so you can be sure there will be something to suit your skillset.
Native in a non-English language? Why not help with Drupal translations.
Maybe you're a designer and the thought of technical contributions has deterred you. In that case why not help out with Usability, which is a key part right now with the release of Drupal 8.
How about marketing if this is your area of expertise?
However you choose to contribute it is all beneficial to the Drupal community and you should be proud of your contributions however large or small they may be. It's the users who make up the community and without contribution Drupal wouldn't be what it is today. We will continue to contribute wherever is possible and we hope anybody reading this will do the same!
Microserve are listed as just 1 of 10 drupal.org recognised Featured Service Providers within the UK. You can see our listing here to see more about us and find out about our individual team members - https://drupal.org/marketplace/microserve
This video showcases a Drush plugin called DSLM which stands for Drush Symbolic Link Manager. It's an alternative to core multi-site which puts the developer first when managing lots of sites in the same area. There are also a few patches I have in the queue that add additional functionality like sharing of large chunks of modules, themes, and libraries.
In this video tutorial we'll cover how to upgrade from Drupal 7.23 to Drupal 7.24. It's pretty painless, but there's a few tricks to it.
Author: Vijay Nandwani
Mentor: Matthew Lechleider
This tutorial would describe how can Drupal 8 module developers create a user interface tour for their own modules.
This tutorial would be about one of the most awaited features of Drupal 8, the Tour module. It can help developers create tours for their modules, which would benifit users.
It's amazing how the Drupal community has come together to raise funds for me on Gittip. So far I've received nearly $7000 in total. Without these funds, I would have been unable to meet my costs over the past four months and devote so much time to working on Drupal 8. On Gittip giving is anonymous, so I have no idea who to thank individually -- so thank you all!My situation
As I wrote in my last blog post announcing my fundraising drive on Gittip, my savings are finite, and my weekly income of $422 is no longer enough. In truth, to cover my costs I need $9000 a month before tax. In many ways I'm not the best guinea pig to become a fully funded core Drupal developer. I live in London, one of the world's most expensive cities, and I have a young family.
Currently I'm working at least 40 hours a week (often many more) on core. I'm one of the five people responsible for reviewing and committing changes to the Drupal 8 codebase. Since March this year I've committed 1425 patches (47% of all the commits during this timeframe) and reviewed thousands of lines of code. I'm also focusing on completing the Configuration Management Initiative (CMI). I've been able to do so much because I'm working exclusively on Drupal 8 full time.What I'm looking for and why
I would love to be able to maintain my current commitment to working on core. In an ideal world I would be able to do so by being entirely community-funded. This means my weekly target is $2000. So I'm raising my Gittip target to this level and appealing to the community for bright ideas and solutions.
At the moment I'm not beholden to any single enterprise's or company's demands because all of the money I receive is donated anonymously through Gittip. Most of the funding opportunities I've been offered over the past few months have had corporate strings attached. I've chosen not to pursue these because I believe in the value of independence and a balance of interests. A diversely funded Drupal core team benefits Drupal and its community.Backup plan
Obviously with the responsibilities I have to my family I would be remiss to not have a backup plan. It feels extremely unlikely (but you never know) that we'll be able to raise $2000 per week for me on Gittip. By the end of December my own funds will run out and I will have to get a job. This will mean that most of the forty-plus hours I currently devote to maintaining Drupal 8 core and to CMI will no longer be possible, unless I am specifically employed to do these things.
Drupal core has been built on the unpaid contributions of thousands of people, supplemented by funding for specific projects and company-sponsored contribution time for developers. Increasingly, however, some companies -- notably Acquia with the OCTO (Office of the CTO) team -- are recruiting people to work nearly 100% of their time on core.
This would make Acquia an obvious place to look for a job, but I don't think it would in the best interests of the Drupal community for me to work there at this time. Acquia's contribution to Drupal is exemplary, but contribution on such scale has led to concerns of undue influence. I'd like to help resolve these concerns rather than add to them.
Recently the WordPress company 10up wrote about the value of sponsoring full-time contribution to an open source project. We need more Drupal companies to step up and do something similar. So if your Drupal company has vision and recognises the benefits that a culture of contribution brings, get in touch!Tags:
[Skip to any section because you can]
I have been working in software development a long time. Early on I recognized the need for Process as a way of re-using best practices for teamwork. At that time, Process implied for most of us the Waterfall model, which divides a development project into discipline based phases, each to be visited once in turn, in a kind of cascade: Requirements; capture the requirements, do the Design, Implementation, Verification and Validation, Deploy, then shift into Maintenance mode. Most people still follow that model implicitly, it has stayed in the everyday consciousness of process, much like Newton's laws instead of the Theory of Relativity, much like the reactionary and sinister theory of Creationism over the scientific Theory of Evolution kicked off by Charles Darwin. But project difficulties and even failures based on the extremely high propensity (40% minimum) for requirements to change within the life-cycle of a project moved me to recognize the necessity for an Iterative and Incremental model. And when that became too top-heavy, at least in its wonderful, eye-opening but hard to tailor and work with Rational Unified Process, I moved on to a kind of personal synthesis of CMMI (love that continuous improvement and organization wide adoption!) and Agile and Scrum approaches. More recently I have loved the simpler work in process and visual approach of the Kanban as a lean variety of Agile:
“Some Agile methods take a more flexible approach to time than Scrum does. (For example, Kanban does away with the notion of a two-week batch of work and places the emphasis on single-piece flow.) But you can still make time within a Scrum sprint in which creative activities can take place.” Gothelf, Jeff (2013-02-22). Lean UX: Applying Lean Principles to Improve User Experience. O'Reilly Media.
When it comes to building survey style forms in Drupal, you really can't beat Webform. The module allows editors to create great looking forms directly within Drupal and the results can be exported out.
So for example, if you create a competition form using Webform, you could add a checkbox which allows users to subscribe to an email list on MailChimp directly from the form.
In this tutorial, I'll show you how to add a "Subscribe to newsletter" checkbox on any form created using Webform.
For the International Day of People with Disabilities (IDPwD) today on December 3rd, I want to take some time to reflect on the Drupal community’s work to support universal access to information technology. Drupal is an inclusive community, both in how we interact with each other and in the results of our work.
We understand the need to create software that is accessible, both for consumption and production of content. Our accessibility statement opens by saying:
As an inclusive community, we are committed to making sure that Drupal is an accessible tool for building websites that can also be accessed by people with disabilities.
Donna Benjamin and Jesse Beach wrote a great overview of the accessibility improvements efforts in Drupal 8. It will meet higher standards of access than our previous releases. As developers and site builders, we continue to incorporate new techniques and access technologies into Drupal. Accessibility to the core.
As a community, we're proud and thankful for the efforts of all those who have contributed time and energy writing, reviewing and testing patches aimed at improving the accessibility of Drupal. There is much work still to do. If you are able, please join the accessibility effort to make sure our next version is our best yet. Thank you!
About a week and half ago, we announced that the Association board approved our 2014 Leadership Plan and Budget. On Monday 2, December, we hosted a community all to discuss the details and share a little more in-depth our thinking and reasoning in the plan. I really want to thank the community members who came out and spent an hour reviewing the details with me! If you were unable to make it, that's ok! We recorded the session for you.
Check out the recording below, and please peruse the relevant documents
Realityloop: BitTorrent Sync and Drupal - Part 1: BitTorrent Sync powered, headless, Drupal photo gallery
Not even 24 hours after the release of the BitTorrent Sync (BTSync) API, an API that I was eagerly awaiting, we were happy to be able to release arguably the first implementation of said API in the form of the BTSync API Drupal module, and only a few weeks later I personally released a Beta release of the BTSync Field module.
Since then I've been planing on putting together both a text and a video tutorial/demonstration on exactly how one would use the modules, and maybe to touch on future plans I have working with the BTSync API. I was also approached by BitTorrent's Kathie Pham with interest in showcasing the work I have done with the API at Realityloop and in my own time, so even more motivation to get something put together.
I've decided that all the things I would like to demonstrate would be too much for a single post, so instead I will be doing multiple posts over a period of a few weeks (hopefully).
The Tutorial: BitTorrent Sync powered, headless, Drupal photo gallery
There are so many things that the API could be used for, I personally have many plans for future modules, more ideas than time, but the one thing that appealed to me the most, and the idea that the tutorial/demonstration is going to focus on, is photo galleries.
My father is a hobbyist photographer, and like many other web developers out there I have at one time in my past tackled the job of building a website for a family member, both pre and during my time working with Drupal; pre-Drupal with a manual process of image resizing, and using ImageCache/Image styles to automate the process with Drupal.
What I found is that no matter how easy you make a system, and there are so many things you can do to improve the usability in Drupal, it can always be made simpler.
The appeal of BTSync for a photo gallery site, to me at least, is the ability to manage the content in a completely headless state; no need for your users to log into the site at all, just drop their photos in a folder and they're done. This is exactly what I will be demonstrating below.
This tutorial will cover:
- How to setup the BTSync API module
- How to setup the BTSync Fields module
- Setting up a basic BTSync powered photo gallery
This tutorial assumes:
- An API enabled BTSync sever; see 'Enabling the API' in the Developer documentation
- A fresh 'Standard' install of Drupal 7
- A basic understanding of Drupal site building
Part 1 - Installing/enabling the modules.
For this tutorial I used the following modules:
- BitTorrent Sync API 7.x-1.0: http://ftp.drupal.org/files/projects/btsync-7.x-1.0.zip
- BitTorrent Sync Fields 7.x-1.0-beta1: http://ftp.drupal.org/files/projects/btsync_fields-7.x-1.0-beta1.zip
There are various methods of installing Drupal modules, with my personal preference being Drush or Drush make, but I will demonstrate installation via Drupals built in module installer:
- Navigate to your sites 'Install new module' interface: admin/modules/install
- Copy and paste one of the modules URLs, as provided above, into the 'Install from a URL' field.
- Click the 'Install' button.
- Repeat steps 2-3 until all modules are successfully installed.
- Click the 'Enable newly added modules' link or navigate to your sites 'Modules' interface: admin/modules
- Enable the newly added modules; Check the boxes next to the modules and click the 'Save configuration' button.
Part 2 - Configuring the BTSync API module.
Assuming you have already setup your BTSync server and it is API enabled, this step should be relatively painless.
- Navigate to the 'BitTorrent Sync API' configuration interface: admin/config/services/btsync
Note: If you are still on the 'Modules' interface, you can simply click the 'Configure' link next to the BTSync API module.
- Enter the following details:
- URL: The URL of your BTSync API server, likely the same as default.
- Username: The 'login' value as per the configuration of your BTSync API server.
- Password: The 'password' value as per the configuration of your BTSync API server.
- Click the 'Save configuration' button.
Part 3 - Setting up a content type / Configuring the BTSync Fields module.
The BTSync Fields module provides Field types and widgets for Drupals Field system. As of writing this, the 7.x-1.0-beta1 release only contains a single field widget; BitTorrent Sync (basic). This widget allows us to assign or generate a BTSync secret to a File or Image field and when Cron is run it will ensure all eligible files in the sync are associated with the Field. This is the basis of our headless photo gallery.
In this step we are going to setup a new content type and attach a Image field using the BTSync fields widget.
- Navigate to the 'Content types' interface: admin/structure/types
- Click the 'Add content type' link.
- Enter a human readable name for your content type (e.g., Gallery) and click the 'Save and add fields' button.
- Under the 'Add existing field' row, select the 'Image: field_image (Image)' item and update the 'Widget' to 'BitTorrent Sync (basic)'.
- Click the 'Save' button.
- On the next page, make the following changes:
- Required field: Ticked
- Allowed file extensions: jpg, jpeg
- Number of values: Unlimited
Note: These are just recommended settings for the sake of this tutorial.
- Click the 'Save settings' button.
Part 4 - Time to test it all out.
Now that (most of) the hard stuff is out of the way, we can actually test it out and see it working in action. To do so, we will be generating a BTSync secret during the creation of a Node of our previously created Content type, and then using that secret to sync our photos.
- Navigate to the 'Add content' interface (node/add) and click on your newly created Content type (e.g., Gallery).
- Give the content a 'Title' (e.g., BTSync Gallery).
- In the 'Image' field, click the 'Generate secret' button and copy the generated secret.
Note: If nothing happens, it's likely due to mis-configuration of the BTSync API module or that the BTSync API server you defined is currently offline.
- Click the 'Save' button.
- Setup a Sync folder with the generated secret in a desktop BTSync client (or at least an alternate BTSync instance).
- Add some Photos to the folder and wait for them to finish syncing.
When Cron is next run all eligible synced files will be attached to the field and they will display on our newly created gallery.
For the sake of this tutorial, you can force Cron to be run via the 'Status report' interface (admin/reports/status) by clicking the 'run cron manually' link.
Part 5 - Make it pretty(ier).
This approach in itself doesn't make a photo gallery, instead it makes a piece of content with a bunch of images attached. There are many different ways you can work over the display, each with their pros and cons. My preference is generally a Views based solution, but for the sake of keeping things simple I will be using a Field formatter based approach with the Gallery formatter module.
- As per Part 1, install and enable Gallery formatter module, version 7.x-1.3 (http://ftp.drupal.org/files/projects/galleryformatter-7.x-1.3.zip).
- Navigate to your Content types 'Manage display' interface: admin/structure/types/manage/[content_type]/display
- Choose 'jQuery Gallery' on the 'Format' dropdown on the 'Image' field.
- Click the 'Save' button.
There you have it, a simple BTSync powered, headless, Drupal photo gallery.
In the next post I will be covering over how to integrate with the BitTorrent Sync API module directly and with the Rules module, keep your eyes peeled.Tags: drupal planetdrupal 7btsynctutorial
If you've used a device with a Retina display to browse the web or develop a website, you might have noticed that some of the images look a little fuzzy. Retina devices require images that have twice the number of pixels to appear normally on the screen. This is a bit of a pain for front-end developers. It means that if you want to display a 100x100 image on a website, you also need a 200x200 version of that image retina devices, and then you need to scale it down to size when it's displayed.read more
HTML5 changed the semantic meaning of some elements and there has been little talk about it. I stumbled upon the difference while reading the HTML5 specification for the PHP HTML5 parser and serializer. What has changed is that there is now a difference between strong and bold along with a difference between emphasized and italics.
These elements have had quite a history.Bold and Italics Before HTML5
Bold was a visual styling and that should be in CSS rather than tags, right? So, we have the strong tag. The same type of thing happened for the italics tag. In the HTML4.01 spec and XHTML specs there were no longer bold or italics tags.
But, they didn't go away. Not in use.Strong and Bold
In HTML5 <strong> and <b> both exist and have a different meaning.
The <b> tag is for "offset text conventionally styled in bold". If you read deeper into the details you'll see it adds, "without conveying any extra emphasis or importance".
<strong> is different. It "represents a span of text with strong importance." There is semantic meaning of importance here. In fact, a <strong> tag within another <strong> tag has even more importance. There is nested importance. The html5 spec is enlightening on this.Emphasized and Italics
Just like <strong> and <b> we have changes to <em> and <i>. The <i> tag is for "text conventionally styled in italic". There is no semantic meaning. <em> "represents a span of text with emphatic stress". Like <strong>, <em> is a tag with semantic meaning and that matters when nested.Does The Spec Represent The Practice?
I'm not really sure. We'd need to go to those who read the markup while caring about semantic meaning to find out. I know that many tools don't take this into account. For example, CK Editor has buttons for italics and bold but uses the <em> and <strong> tags. This may be a part of HTML5 that just isn't widely understood or used.
Large-scale Drupal sites often maintain a separate "staging" server to test and preview changes before they're released to the public. If you're working on a smaller project, though, it can be useful to give a few trusted testers access to a few pages of the site. In those situations, the Protected Pages module might be just what you need.
Two friends were funny enough to take this from "a joke" to "a practial joke". Rachel and Stefan created "Tour de Drupal", a community movement to get as many Drupalista as possible to visit DrupalCon Amsterdam 2014 in 330 days by bike!
If you come to this DrupalCon, there is no excuse, you have to come by bike and put yourself on the map. While you are at it, follow our friends on @TourDeDrupal as well. Even I come by bike, and so should you Dries!
There is bound to be more funny stuff coming from the community in Amsterdam, I hope to be involved in some of this and will post it here as well. There is for example talk of an Eurosongfestival with Drupal songs and a revival of the Kitten Killers so bring your guitar as well.
So in the closing ceremony we now have lists of the amount Megabits used, liters coffee drunken and number of flat tires… :-)
After you’ve worked hard on defining your requirements and writing your job description, the next thing you want to do is get that posted in as many places as possible where it can be seen by your job seeker. In this series, we're outlining a 5-step strategy for building a great Drupal team. In this step, we’ll focus on getting your job posting seen.
It’s that time of year when companies are looking ahead to next year and budgets are being negotiated and finalized. With that in mind, we want to communicate the full menu of options for businesses interested in giving back to the Drupal project, and engaging with the community to share ideas and identify potential partners, customers and talent.Personal blog tags: Drupal Association
If you've spent any time with Drupal, you've heard of — and likely installed — the Views module. If you haven't, then you're very likely working harder than you need to! Views is Drupal's query builder, enabling you to create lists of just about anything, as well as providing basic formatting and the ability to do basic formatting of your items. Although Views will be merged into Drupal 8, if you've never used it before, take a look.
Since most Drupal designers have used Views, they generally know its power: Yes, it will relate data to other data, sort, filter, and so on. But one very helpful feature neophytes may not have discovered is its ability to rewrite fields. In essence, a field can be added to the display, but in the settings for that field you have the option to “rewrite” that field; it will keep the settings of that field, but will masquerade as something else: it can be changed to plain text, to a link, or even to another field entirely. Here, we’ll walk you through some examples, and then talk about other options this feature offers.Why would I do that?
There are plenty of reasons: your field may not contain all the data you want; it might have too much data; it might not have all the settings you want or behave in the way you need. However, some other field just might accomplish those chores. Read on.Lynette Miles
Lynette Miles is the co-author of Drupal's Building Blocks, and has worked in the tech industry for her entire professional career. She became involved with Drupal in 2006, and participates in the documentation team as well as coordinating the Views bug squad.