Working as a Drupal theming/development consultant on many "rescue" mission projects I seen many different mistakes web developers do when facing with Drupal for the first time.
These are the slides from Aidan Foster's Presentation at Drupal Camp Toronto 2011.
Drupal 7 has many out of the box improvements to improve the experience of content administrators, and other non-developer users with the new seven theme and it's related Dashboard and Shortcut Modules. But at it's core Drupal 7's admin are is a developer's tool and really designed for content editors.
This presentation showcases a case study of olympuspacific.com and how it customized content editor theme improved the editor experience using Views, Draggable Views, Media Management, Rules Modules
Finally there's building the site with the features module so you don't have to do all this work from scratch each time.
Media handling in Drupal (Drupalcamp Leuven 2013)Pure Sign
Drupal provides various ways to enrich your dull textual content by adding pictures, video's and other media. All of the available solutions come with their advantages and disadvantages or pitfalls to take into account.
This presentation will give you an overview of the media landscape in Drupal and walk through the options that are available to you.
Topics include:
* Media handling in Drupal core
* Module comparison: Media, Scald, Asset
* WYSIWYG integration
* oEmbed
Drupal 8: Most common beginner mistakesIztok Smolic
It's been a "long and winding road" since the 20 mistakes I made with my first Drupal project. Drupal 8 had me learning everything all over again, but this time around, I was prepared... or so I thought.
This is the presentation that I put together for DrupalCamp Philadelphia. It discusses the difference in building pages in Drupal using core block system vs Context module or Panels.
These are the slides from Aidan Foster's Presentation at Drupal Camp Toronto 2011.
Drupal 7 has many out of the box improvements to improve the experience of content administrators, and other non-developer users with the new seven theme and it's related Dashboard and Shortcut Modules. But at it's core Drupal 7's admin are is a developer's tool and really designed for content editors.
This presentation showcases a case study of olympuspacific.com and how it customized content editor theme improved the editor experience using Views, Draggable Views, Media Management, Rules Modules
Finally there's building the site with the features module so you don't have to do all this work from scratch each time.
Media handling in Drupal (Drupalcamp Leuven 2013)Pure Sign
Drupal provides various ways to enrich your dull textual content by adding pictures, video's and other media. All of the available solutions come with their advantages and disadvantages or pitfalls to take into account.
This presentation will give you an overview of the media landscape in Drupal and walk through the options that are available to you.
Topics include:
* Media handling in Drupal core
* Module comparison: Media, Scald, Asset
* WYSIWYG integration
* oEmbed
Drupal 8: Most common beginner mistakesIztok Smolic
It's been a "long and winding road" since the 20 mistakes I made with my first Drupal project. Drupal 8 had me learning everything all over again, but this time around, I was prepared... or so I thought.
This is the presentation that I put together for DrupalCamp Philadelphia. It discusses the difference in building pages in Drupal using core block system vs Context module or Panels.
Drupal is a CMS to build website.
For absolute beginners, the existing documentation can seem overwhelming.
This presentation demonstrates Drupal based on 3 websites.
The first website uses Drupal in a very simple, standard way. It is used to explain the concepts behind users, nodes and blocks.
The second website adds ckk & views and illustrates how to build a photo album with these modules.
The third website uses only custom content types combining different views with the pages module. It also uses 100% custom CSS, deviating from the "boxy" look of most drupal sites.
The goal of the presentation is to give an insight in how Drupal works and what it can do for you in 20 minutes.
Goal of the session is to explore some case studies for advanced content types to meet the needs of government agencies.
This session will cover recent government case studies for taking content types to a whole new level to allow our clients control over:
Order of content
Moderation of content
Revisioning of content
Bundle Publishing
Using tools such as Rules, Workbench, Node References, Context, and many more!
We'll go over the decision making process and why content types were a better route than nodequeues or simple view filters.
This introduction to Drupal 6 was presented to the Chicago Web Professionals meetup as the third in a series of CMS introductions (following WordPress and Joomla)
Are you looking at Drupal as your new CMS?
This presentation gives an overview of Drupal and some common use cases.
Targeted at IT managers looking to chose a new CMS or who just want to get more familiar with Drupal.
This talk, presented at Drupal Global Training Days Montreal - September 2016 walks through features of Drupal 8, examples of sites built with Drupal, an introduction to the Drupal community and topics for learning Drupal theming and module development.
A checklist for site builders: things to do after you've built out your content types and views and before you show the site to your client or deploy it on production. See the list at http://bit.ly/drupal-checklist.
Drupal architectures for flexible content - Drupalcon Barcelonahernanibf
We got to the point where the old Drupal mantra of creating content first to see it later is not enough to suceed with content editors. Drupal is competing and replacing other CMS and platforms where the lack of flexibility is the problem #1 for content editors. They are expecting full flexibity on how content is created, displayed, approved and published. However this introduce a common problem for web developers and site builders: how can you provide this full flexibility without having to be constantly on the hook for further development or configuration.
Modules like panels and panelizer, projects like Spark and distributions like panopoly and demo framework helped change the panorama in Drupal and the expectations that are set when sites are built.
In this session we will look to a set of common problems and real examples when creating content and layout for pages with demanding editorial teams. We will look and evaluate common options and recipes.
How can complex content and rich pages be structured ? Free HTML format in different fields? Structured data in complex fields? Use paragraphs or field collection? Different content items in different items/entities? How to glue it all together?
How can indivual page layout be managed providing flexibility but also control? Rely on templating system and view modes? Use contrib modules like panels and panelizer or display suite? Mix several approaches and modules?
How can I add any content to any page and choose its display ? How can I have a list of curated widgets ready to use by the content team to deploy anywhere or in any section?
How can pages and sections be managed before approved and published? Use preview systems and inline editors? Use workbench or workflow for layout? Rely on more complex content staging systems? Use separated environments?
These are daily problems that architects and developers face in every project. As a technical architect in Acquia it is uncommon a project where I am involved that does not need to solve one or more of these problems. In this session I will give some real examples and resume options and recipes that can be used to solve those problems today in Drupal 7 and look to Drupal 8 to explain how it can improve some of our possibilities and options and easy the life of one of our most important personas: the content editor.
In Drupal 7, we need to use a whole suite of modules to make our websites multilingual. Drupal 8 core provides much improved support for multilingual. This means that it's much easier/faster to create a multilingual site, and you won't need all those extra contributed modules. In this session, we'll look at:
How the Drupal 8 multilingual modules work
What steps you'll need to get a multilingual website up and running
Setting up multilingual components in Drupal 8
Video: http://www.youtube.com/watch?v=8ocFBRpoGTs
Working as a Drupal theming/development consultant on many "rescue mission" projects I seen many different mistakes web developers do when facing with Drupal for the first time. This presentations points out those mistakes and gives solutions for them.
Drupal is a CMS to build website.
For absolute beginners, the existing documentation can seem overwhelming.
This presentation demonstrates Drupal based on 3 websites.
The first website uses Drupal in a very simple, standard way. It is used to explain the concepts behind users, nodes and blocks.
The second website adds ckk & views and illustrates how to build a photo album with these modules.
The third website uses only custom content types combining different views with the pages module. It also uses 100% custom CSS, deviating from the "boxy" look of most drupal sites.
The goal of the presentation is to give an insight in how Drupal works and what it can do for you in 20 minutes.
Goal of the session is to explore some case studies for advanced content types to meet the needs of government agencies.
This session will cover recent government case studies for taking content types to a whole new level to allow our clients control over:
Order of content
Moderation of content
Revisioning of content
Bundle Publishing
Using tools such as Rules, Workbench, Node References, Context, and many more!
We'll go over the decision making process and why content types were a better route than nodequeues or simple view filters.
This introduction to Drupal 6 was presented to the Chicago Web Professionals meetup as the third in a series of CMS introductions (following WordPress and Joomla)
Are you looking at Drupal as your new CMS?
This presentation gives an overview of Drupal and some common use cases.
Targeted at IT managers looking to chose a new CMS or who just want to get more familiar with Drupal.
This talk, presented at Drupal Global Training Days Montreal - September 2016 walks through features of Drupal 8, examples of sites built with Drupal, an introduction to the Drupal community and topics for learning Drupal theming and module development.
A checklist for site builders: things to do after you've built out your content types and views and before you show the site to your client or deploy it on production. See the list at http://bit.ly/drupal-checklist.
Drupal architectures for flexible content - Drupalcon Barcelonahernanibf
We got to the point where the old Drupal mantra of creating content first to see it later is not enough to suceed with content editors. Drupal is competing and replacing other CMS and platforms where the lack of flexibility is the problem #1 for content editors. They are expecting full flexibity on how content is created, displayed, approved and published. However this introduce a common problem for web developers and site builders: how can you provide this full flexibility without having to be constantly on the hook for further development or configuration.
Modules like panels and panelizer, projects like Spark and distributions like panopoly and demo framework helped change the panorama in Drupal and the expectations that are set when sites are built.
In this session we will look to a set of common problems and real examples when creating content and layout for pages with demanding editorial teams. We will look and evaluate common options and recipes.
How can complex content and rich pages be structured ? Free HTML format in different fields? Structured data in complex fields? Use paragraphs or field collection? Different content items in different items/entities? How to glue it all together?
How can indivual page layout be managed providing flexibility but also control? Rely on templating system and view modes? Use contrib modules like panels and panelizer or display suite? Mix several approaches and modules?
How can I add any content to any page and choose its display ? How can I have a list of curated widgets ready to use by the content team to deploy anywhere or in any section?
How can pages and sections be managed before approved and published? Use preview systems and inline editors? Use workbench or workflow for layout? Rely on more complex content staging systems? Use separated environments?
These are daily problems that architects and developers face in every project. As a technical architect in Acquia it is uncommon a project where I am involved that does not need to solve one or more of these problems. In this session I will give some real examples and resume options and recipes that can be used to solve those problems today in Drupal 7 and look to Drupal 8 to explain how it can improve some of our possibilities and options and easy the life of one of our most important personas: the content editor.
In Drupal 7, we need to use a whole suite of modules to make our websites multilingual. Drupal 8 core provides much improved support for multilingual. This means that it's much easier/faster to create a multilingual site, and you won't need all those extra contributed modules. In this session, we'll look at:
How the Drupal 8 multilingual modules work
What steps you'll need to get a multilingual website up and running
Setting up multilingual components in Drupal 8
Video: http://www.youtube.com/watch?v=8ocFBRpoGTs
Working as a Drupal theming/development consultant on many "rescue mission" projects I seen many different mistakes web developers do when facing with Drupal for the first time. This presentations points out those mistakes and gives solutions for them.
Drupal is a very popular content management system that has been widely adopted by government agencies, major businesses, social networks, and more. This talk focuses on the penetration tester's perspective of Drupal and dives into streamlining the assessment and remediation of commonly observed application and configuration flaws by way of custom exploit code and security checklists.
Download the associated scripts, movies, and checklist here: https://github.com/gfoss/attacking-drupal
Creating Dynamic Landing Pages for Drupal with Panels - WebinarSuzanne Dergacheva
Have you ever wanted to create a stand-alone campaign page on your website? Or prototype a new homepage layout just to see how it would look? The Panels module gives us the tools to build all kinds of landing pages in Drupal. Panels also has lots of other functionality, allowing you to create layouts and take control of how content is organized and displayed. All this, without having to write custom code.
In this webinar, we'll walk through some of the top use cases for Panels. We'll also talk about some best practices and things to avoid to make sure that you're using Panels effectively on your website.
- See more at: http://evolvingweb.ca/training/creating-dynamic-landing-pages-drupal-panels
Creating Layouts and Landing Pages for Drupal 8 - DrupalCon DublinSuzanne Dergacheva
This presentation from DrupalCon Dublin covered site building techniques for creating landing pages and layouts, including using custom blocks, paragraphs, and panels, and then different theming approaches for creating these layouts.
Drupal 8 Quick Start: An Overview of LightningAcquia
Lightning is a a solid Drupal starterkit, that enables developers to create great authoring experiences and empower editorial teams. Lightning provides users with a lightweight framework for building working solutions in Drupal.
In our upcoming webinar, we will examine each component of Lightning and demonstrate how to leverage its features in any Drupal build. Topics included will review the use cases for each of the functional areas (layout, media, workflow, and preview) as well as the three development principles (security, automated testing, and integration). We’ll also give a summary of recent findings from the authoring experience summit at BADCamp and how they will affect the development timeline for Lightning.
Attendees will learn:
- How to significantly cut build time on advanced Drupal 8 projects using Lightning
- How Lightning improves the accuracy of your development estimates
- How you can contribute to the Lightning project
- Our 3 year vision for Lightning
Becoming a drupal master builder - Given at Drupal Camp London 2016
I've been building Drupal sites for a number of years and have a broad experience building Drupal sites with various levels of complexity. I often work with other agencies to build Drupal sites or to migrate existing sites and as a result I will often see some very common mistakes and errors that shouldn't be happening. Due to Drupal's popularity I also see Drupal sites in the wild and can clearly see the same mistakes going on there as well.
During this talk I'll show some basic site building tips as well as some more complex and technical strategies that will make your Drupal sites better and more maintainable. Rather than just show you what to do, I'll also be explaining why doing those things are important and how developers and their websites will benefit from them. Although I'll be mainly concentrating on Drupal 7, some of these techniques are also applicable to Drupal 8.
Everything You Need to Know About the Top Changes in Drupal 8Acquia
<p>Drupal 8 is on the way. And we know you want to know -- what does this mean for me?!</p>
<p>Don't fear, Angie 'webchick' Byron is here! This one hour webinar will provide you with detailed overviews on the major changes in Drupal 8, as well as several short video demos that will give you a glimpse into a few of the newest features and capabilities. Angie will explain what D8 means for:</p>
<ul>
<li>Site Builders: See Views in Core, more (and better) blocks, improved entity and field features...the list goes on!</li>
<li>Front-end Developers: We're talking HTML5, libraries, accessibility enhancements, new themes and UI elements, and faster performance, to name a few.</li>
<li>Back-end Developers: A new configuration management system, a completely rehauled Entity API, improved caching, and new built-in web services features.</li></ul>
Walks through the top 8 improvements coming to Drupal 8, including videos and code samples to demonstrate "before vs. after."
Given to the @DrupalNS meet up in Bedford, Nova Scotia on July 28, 2014.
Drupal upgrades and migrations. BAD Camp 2013 versionDavid Lanier
Originally presented at PNW Drupal Summit 2013. Revised for BADCamp 2013.
You have an aging Drupal 6 or even a Drupal 5 site. You know it's time to move up to Drupal 7. Now, how? There are two main ways to get there. You can perform a traditional upgrade, or you can migrate the data from the old site to a brand new site. In this session I will show how you can use these methods and discuss their benefits and drawbacks, including a thought process to go through when evaluating these options, drawing from some recent projects.
One Drupal to rule them all - Drupalcamp Londonhernanibf
Dries famous sentence (http://buytaert.net/one-drupal-to-rule-them-all) is becoming a reality for many organisations from small shops to the enterprise space. More and more stakeholders are following the idea of standardising their online presence in Drupal and leverage the same code and infrastructure amongst their different sites. What they are seeking is a drastic reduction in the time needed to create, launch and configure a Drupal site at the same time that they reduce the maintenance effort of the whole sites' network.
To achieve it, a drastic change needs to happen on the standardisation of development processes, more strict control of the overall architecture while supporting new changes and requirements, and repeatable and trustable deployment process to avoid the opposite pitfall of "one site to break them all".
In this session we will look to what needs to be thought when creating such an architecture from the development process to the infrastructure to host the different environments needed. We will look at different solutions that allow maintain these sites factories and walk you through several architectures explaining their advantages and differences.
Finally, we will look in detail to Acquia's Cloud Site Factory, a fully-hosted SaaS solution that allows organisations to quickly deploy and manage websites by the hundreds. Pre-define site templates, create new sites in a single click, manage roles and permissions across sites and connect to existing analytics and data systems.
Similar to Top 20 mistakes you will make on your 1st Drupal project (20)
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...UiPathCommunity
💥 Speed, accuracy, and scaling – discover the superpowers of GenAI in action with UiPath Document Understanding and Communications Mining™:
See how to accelerate model training and optimize model performance with active learning
Learn about the latest enhancements to out-of-the-box document processing – with little to no training required
Get an exclusive demo of the new family of UiPath LLMs – GenAI models specialized for processing different types of documents and messages
This is a hands-on session specifically designed for automation developers and AI enthusiasts seeking to enhance their knowledge in leveraging the latest intelligent document processing capabilities offered by UiPath.
Speakers:
👨🏫 Andras Palfi, Senior Product Manager, UiPath
👩🏫 Lenka Dulovicova, Product Program Manager, UiPath
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024Tobias Schneck
As AI technology is pushing into IT I was wondering myself, as an “infrastructure container kubernetes guy”, how get this fancy AI technology get managed from an infrastructure operational view? Is it possible to apply our lovely cloud native principals as well? What benefit’s both technologies could bring to each other?
Let me take this questions and provide you a short journey through existing deployment models and use cases for AI software. On practical examples, we discuss what cloud/on-premise strategy we may need for applying it to our own infrastructure to get it to work from an enterprise perspective. I want to give an overview about infrastructure requirements and technologies, what could be beneficial or limiting your AI use cases in an enterprise environment. An interactive Demo will give you some insides, what approaches I got already working for real.
UiPath Test Automation using UiPath Test Suite series, part 4DianaGray10
Welcome to UiPath Test Automation using UiPath Test Suite series part 4. In this session, we will cover Test Manager overview along with SAP heatmap.
The UiPath Test Manager overview with SAP heatmap webinar offers a concise yet comprehensive exploration of the role of a Test Manager within SAP environments, coupled with the utilization of heatmaps for effective testing strategies.
Participants will gain insights into the responsibilities, challenges, and best practices associated with test management in SAP projects. Additionally, the webinar delves into the significance of heatmaps as a visual aid for identifying testing priorities, areas of risk, and resource allocation within SAP landscapes. Through this session, attendees can expect to enhance their understanding of test management principles while learning practical approaches to optimize testing processes in SAP environments using heatmap visualization techniques
What will you get from this session?
1. Insights into SAP testing best practices
2. Heatmap utilization for testing
3. Optimization of testing processes
4. Demo
Topics covered:
Execution from the test manager
Orchestrator execution result
Defect reporting
SAP heatmap example with demo
Speaker:
Deepak Rai, Automation Practice Lead, Boundaryless Group and UiPath MVP
PHP Frameworks: I want to break free (IPC Berlin 2024)Ralf Eggert
In this presentation, we examine the challenges and limitations of relying too heavily on PHP frameworks in web development. We discuss the history of PHP and its frameworks to understand how this dependence has evolved. The focus will be on providing concrete tips and strategies to reduce reliance on these frameworks, based on real-world examples and practical considerations. The goal is to equip developers with the skills and knowledge to create more flexible and future-proof web applications. We'll explore the importance of maintaining autonomy in a rapidly changing tech landscape and how to make informed decisions in PHP development.
This talk is aimed at encouraging a more independent approach to using PHP frameworks, moving towards a more flexible and future-proof approach to PHP development.
Accelerate your Kubernetes clusters with Varnish CachingThijs Feryn
A presentation about the usage and availability of Varnish on Kubernetes. This talk explores the capabilities of Varnish caching and shows how to use the Varnish Helm chart to deploy it to Kubernetes.
This presentation was delivered at K8SUG Singapore. See https://feryn.eu/presentations/accelerate-your-kubernetes-clusters-with-varnish-caching-k8sug-singapore-28-2024 for more details.
JMeter webinar - integration with InfluxDB and GrafanaRTTS
Watch this recorded webinar about real-time monitoring of application performance. See how to integrate Apache JMeter, the open-source leader in performance testing, with InfluxDB, the open-source time-series database, and Grafana, the open-source analytics and visualization application.
In this webinar, we will review the benefits of leveraging InfluxDB and Grafana when executing load tests and demonstrate how these tools are used to visualize performance metrics.
Length: 30 minutes
Session Overview
-------------------------------------------
During this webinar, we will cover the following topics while demonstrating the integrations of JMeter, InfluxDB and Grafana:
- What out-of-the-box solutions are available for real-time monitoring JMeter tests?
- What are the benefits of integrating InfluxDB and Grafana into the load testing stack?
- Which features are provided by Grafana?
- Demonstration of InfluxDB and Grafana using a practice web application
To view the webinar recording, go to:
https://www.rttsweb.com/jmeter-integration-webinar
GraphRAG is All You need? LLM & Knowledge GraphGuy Korland
Guy Korland, CEO and Co-founder of FalkorDB, will review two articles on the integration of language models with knowledge graphs.
1. Unifying Large Language Models and Knowledge Graphs: A Roadmap.
https://arxiv.org/abs/2306.08302
2. Microsoft Research's GraphRAG paper and a review paper on various uses of knowledge graphs:
https://www.microsoft.com/en-us/research/blog/graphrag-unlocking-llm-discovery-on-narrative-private-data/
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...DanBrown980551
Do you want to learn how to model and simulate an electrical network from scratch in under an hour?
Then welcome to this PowSyBl workshop, hosted by Rte, the French Transmission System Operator (TSO)!
During the webinar, you will discover the PowSyBl ecosystem as well as handle and study an electrical network through an interactive Python notebook.
PowSyBl is an open source project hosted by LF Energy, which offers a comprehensive set of features for electrical grid modelling and simulation. Among other advanced features, PowSyBl provides:
- A fully editable and extendable library for grid component modelling;
- Visualization tools to display your network;
- Grid simulation tools, such as power flows, security analyses (with or without remedial actions) and sensitivity analyses;
The framework is mostly written in Java, with a Python binding so that Python developers can access PowSyBl functionalities as well.
What you will learn during the webinar:
- For beginners: discover PowSyBl's functionalities through a quick general presentation and the notebook, without needing any expert coding skills;
- For advanced developers: master the skills to efficiently apply PowSyBl functionalities to your real-world scenarios.
Search and Society: Reimagining Information Access for Radical FuturesBhaskar Mitra
The field of Information retrieval (IR) is currently undergoing a transformative shift, at least partly due to the emerging applications of generative AI to information access. In this talk, we will deliberate on the sociotechnical implications of generative AI for information access. We will argue that there is both a critical necessity and an exciting opportunity for the IR community to re-center our research agendas on societal needs while dismantling the artificial separation between the work on fairness, accountability, transparency, and ethics in IR and the rest of IR research. Instead of adopting a reactionary strategy of trying to mitigate potential social harms from emerging technologies, the community should aim to proactively set the research agenda for the kinds of systems we should build inspired by diverse explicitly stated sociotechnical imaginaries. The sociotechnical imaginaries that underpin the design and development of information access technologies needs to be explicitly articulated, and we need to develop theories of change in context of these diverse perspectives. Our guiding future imaginaries must be informed by other academic fields, such as democratic theory and critical theory, and should be co-developed with social science scholars, legal scholars, civil rights and social justice activists, and artists, among others.
Transcript: Selling digital books in 2024: Insights from industry leaders - T...BookNet Canada
The publishing industry has been selling digital audiobooks and ebooks for over a decade and has found its groove. What’s changed? What has stayed the same? Where do we go from here? Join a group of leading sales peers from across the industry for a conversation about the lessons learned since the popularization of digital books, best practices, digital book supply chain management, and more.
Link to video recording: https://bnctechforum.ca/sessions/selling-digital-books-in-2024-insights-from-industry-leaders/
Presented by BookNet Canada on May 28, 2024, with support from the Department of Canadian Heritage.
Transcript: Selling digital books in 2024: Insights from industry leaders - T...
Top 20 mistakes you will make on your 1st Drupal project
1.
2. WHO IS THIS GUY?
• @iztok
www.twitter.com/iztok
• Drupal site builder, themer
and developer
• Passion about UX and design
• Drupal consultant
www.iztoksmolic.com
• Manager at Agile Drop
www.agiledrop.com
• Drupal Slovenia Association
organizing meetups in Ljubljana
3. THE COMMON WRONG DISPOSITIONS
• I know MySQL/PHP, I know Drupal
• There is a module for anything like in Joomla/Wordpress
• Drupal has a long and steep learning curve
After 5 years I am here.
4.
5. 1. NOT KNOWING THE FURNITURE
Designer must be
aware of the
common elements.
Check this blog post
from Chapter Three
6. 2. OVER-DESIGNING FORMS
• HTML markup is predefined for form
• altering markup requires development skills
Solution
• Style forms: http://drupal.org/project/uniform
• Group
fields: http://drupal.org/project/field_group
• Add element (and wrappers) with
hook_form_alter
7. 3. BAD CONTENT ARCHITECTURE DECISIONS
• using too much content types
(e.g. is Article really so different from Public release? Maybe
we can use category to separate them)
• not using node types
(e.g. instead of listing staff as a table in the Page body,
maybe build the page with Views and content type Staff
member)
No real formula, just practice and experiences.
8.
9. 4. WRONG FOLDER STRUCTURE
If using single site installation (one Drupal core, one
website) put:
• themes in /sites/default/themes
• modules from drupal.org in /sites/default/modules/contrib
• custom modules in /sites/default/modules/custom
Do not put themes and modules in the folder on the root
level.
Never. You can use all folder instead of default – your call.
More about this: http://drupal.org/node/120641
10. 5. CHOOSING UNSUPPORTED MODULE
• Check the usage/download counter, last update, open
issues counter, all that can give a idea about the module
status.
• Read the description, in many cases authors let the
people know that module will be deprecated in favor of
some other more comprehensive module.
11. 6. ORPHANED MODULES
• Clean your environment, or even better, test modules on
other installations!
• Leaving old, unused modules can confuse you latter on,
not to mention other developers.
12. 7. USING DEFAULT BLOCKS SYSTEM
Use default blocks system
only if project is very very
simple.
A couple of attempts were
made to improve block
system, I bet on the
following two:
• Context, which is block
system on steroids
• Panels, introduces new
block-like concept
13. 8. PUTTING CONTENT/CODE IN BLOCKS
Default blocks allow user generated content, but you can't set permissions
for editing different blocks
• Bean, you can add fields to different blocks types, which have separate
permissions (like content types do)
• Boxes, blocks with a unique machine names
14.
15. 9. HACKING CORE/CONTRIB THEME
if you decided to use a theme from core or from drupal.org,
there is no need to go and edit its code. Make a sub-
theme
• more about creating sub-
theme: http://drupal.org/node/225125
16. 10. USING PAGE TEMPLATES FOR EACH SUB PAGE
Try to omit page--xxx-tpl.php templates. It duplicates the
code, and makes maintenance difficult.
Try using Context Layout or Panels if variations are really
needed.
Panels have dragable user
interface system and a
layout generator tool.
No code needed!
17. 11. LOGIC IN TEMPLATES
SQL queries and calculations don't belong to the template
layer. If logic is not so advance it can be placed in the
preprocess function in template.php file.
• About process &
preprocess: http://drupal.org/node/223430
18. 12. USING TOO COMMON CSS TARGETING
Drupal outputs a LOT of markup with specific HTML classes
and ids. Knowing which class is appropriate to target is
the key.
• Ids are usually unique identifiers for blocks/nodes/views
• views have classes with view name and display name
seperated. Don’t target displays (e.g. .views-display-id-
block)
• .items-list, .content, .view-content etc. are used all over
your Drupal site, don’t use for specific targeting.
19. 13. NOT USING THE BASIC DRUPAL FUNCTIONS
Drupal comes with some very handy functions, we should
use them
- l() and url() - in contrast of hardcoded relative URL address
can outputs aliased URL path
- base_path(), returns base URL of the Drupal installation
- theme() functions like theme('image_style',array()) to out
put styled image
20.
21. 14. CODING
There is a 80% possibility that what you want to build can be
build with a combination of modules.
Usual suspects:
• Views (your UI for SQL queries)
• views_field_view, views_bulk_operations
• Rules (executing commands on events)
• Panels (overriding default paths like node/%nid)
• Filed collection (join fields into one field)
22. 15. HACKING CORE AND CONTRIB MODULES
Fixing code directly in the module files makes the website
impossible to update. Instead Drupal provides hooks and
preprocess functions.
• More about hooks:
http://api.drupal.org/api/drupal/includes!module.inc/group
/hooks/7
23. 16. NOT USING API FUNCTIONS
• Database API, dynamic queries:
http://drupal.org/node/310075
• Entity query API: http://drupal.org/node/1343708
Bets to learn from examples:
http://drupal.org/project/examples
24. 17. NOT KNOWING HOW TO DEBUG
When you would usually use print_r() to get the content of a array
or object to your browser, Drupal has Devel
(http://drupal.org/project/devel):
• dpm($variable) – prints content of variable in human friendly
way
You can also store info to a log: http://drupal.org/project/object_log
Can’t find the right template?
Use Devel Themer (http://drupal.org/project/devel_themer)
25. 18. NOT RESPECTING THE CODING STANDARDS
Different approaches and coding styles make code less
organized and makes the job for other developers mode
difficult.
• two spaces indentation
• $var = foo($bar, $baz, $quux);
• $some_array = array('hello', 'world', 'foo' => 'bar');
• <?php print $title; ?>
26.
27. 19. FORGETTING ABOUT BACK-END UX
Drupal is criticized for having a bad user experience for end
users.
I argue that with the argument that since Drupal is a
framework, back end should be part of out efforts when
building a website.
28. 20. FORGETTING ABOUT YOU DRUPAL WEBSITE
Drupal needs love even after you have finished your website. Keeping core
and modules updates makes it easier to upgrade at some time and
keeps the system safe.
I know MySQL/PHP, I know Drupal
I confess that I still suck at PHP, but I can still build an advance Drupal project (even coding with Drupal “API”)
There is a module for anything like in Joomla/Wordpress
Drupal modules rarely bring full features like Image gallery or Slideshow, but together with Field UI, Views, Views Slideshow and Colorbox you can build a Slideshow video gallery.
Drupal has a long and steep learning curve
5 years ago I was designing posters and now I help senior PHP developers understand Drupal.