LATEST FROM OUR BLOG

Take your daily dose of (only) relevant news, useful tips and tricks and valuable how to's on using the latest web technologies shaping the digital landscape. We're here to do all the necessary information sifting for you, so you don't have to, to provide you with content that will help you anticipate the emerging trends about to influence the web.

What If You Need to Add More Blocks to Drupal? 3 Simple Methods to Consider
You're well aware that they might affect your site's performance. That it will take its pages more time to “assemble” their whole overloads of content blocks and yet....You just need more blocks, a whole lot more! You just need to add more blocks to your Drupal site! And who could blame you for that? They practically make such a handy means of nicely structuring your custom content and put together a nice, engaging layout! Put together they just turn that complex, yet user-friendly content architecture into reality! Here a block here, there a block, each one enabling you to put together the perfect puzzle for your website. What do you do when you've apparently reached some sort of a limit of maximum blocks that you can add to your Drupal site? Well, you increase that maximum number! And you turn this apparent dead end into an incentive to keep improving your Drupal website's layout! Here's how:   1. But First: A Few Words About Blocks To boil it down to just a few words: blocks are content containers!  They can “hold” text lines, images, lists, full body texts etc. And, the great thing(s) about them is that once you automatically enable them, as you install core or contributed modules on your site,  you can easily adjust them to your liking. Decide upon their size, shape and where you'd like to place them on your site! Where can you view your blocks? Right here:                         Administer >> Structure >> Blocks   Which are the regions (sidebar, footer etc.) on your site that you can place them? Well, it depends on your Drupal site's theme(s), in fact! More themes “spoil” you with the chance to place your blocks differently for each theme. It's in your Block Admin page that you can decide on their vertical sort-order per region. It's there that you'll find your checkboxes, as well, and the link leading you to your blocks configuration page. “Empowered” with these checkboxes to check as you wish and the configuration page, you get to “indulge” in customizing your blocks' visibility to your liking!   2. How Do You Add More Blocks to Your Drupal Site? You're still here, in the block management screen, trying to figure out how to create a new block. It's easy! You go to:                        Administer >> Structure >> Blocks >> Add   See? As simple as that! The management screen comes with a “surprise” “Add block” link for you! Take it from there: fill in your description box, then your block body, pick the region that you'd like this new block to be “sent” to by “wandering about” your “Region Settings” and... end with a click on your “Save block” link! There you have it: Drupal site building made easy with blocks! Feel free to move them around, to drag and drop them in specific regions of your site's theme.   3. But What If You Need More Blocks, A Lot More? Things get a bit “trickier” when your blocks adding “ambitions” go beyond from the “average” ones. When your business website's full functionality depends on being able to carry many, many more “content holders” ( 50-100 or even more). You risk the chance of getting some frustrating error messages, that's for sure! “Trickier”, yet not impossible! There still are a few methods for increasing the limit, the number of maximum blocks that you can add to your Drupal site. Let's point them out: 1. Increase your maxium input size in your .htaccess file It's the ideal solution to take when it's a Drupal multi-site installation that you're dealing with! Here's how you do it: Access the directory where you Drupal site resides >> insert these lines to your .htaccess file:                <ifmodule mod_php5.c="">php_value max_input_vars 2000</ifmodule>    Tip: make sure you're on command line or that the editor you're using has been set up to show “hidden files”! Another tip: if you don't have access to your .htaccess file, since your website is on a shared host, contact your web hosting provider for editing this file for you! 2. Increase your maximum input limit in your php.ini file Since the default value in max_input_vars is set for 1000, feel free to increase it. Double or nothing or... even more? Here's how you do it: Access the php.ini file >> insert the following line:                           max_input_vars = 2000    Tip: in most cases this file resides at /etc/php5/php.ini on web servers! 3. Increase your site's maximum input limit in your settings.php file This is the most “versatile” solution of all three. Most Drupal web developers can fix the “I need to add a lot more blocks to my Drupal site” issue with this easy “trick”: Access your settings.php file >> there, under the “PHP settings”, insert this line:                                     ini_set('max_input_vars', 2000);    Tip: you'll find your settings.php file at /sites/default or /sites/all in your Drupal website's root directory Why is it that this fix is the most recommended one? It's because you won't be “impacting” your PHP stack, but rather handling this specific issue only: lots of blocks (loaded with data, too, obviously), that you need to insert on your Drupal site. How about you? What other fixes do you rely on when you're dealing with an “overload” of content blocks that you need to add to your Drupal site? How do you “break the limits”? ... Read more
Adrian Ababei / Mar 16'2017
How to Clear Your Drupal Cache: 3 Handy and Reliable Methods
Before we get into details on why you should rush to clear your Drupal cache whenever you're dealing with a “White Screen of Death”, how about exercising your imagination a bit? Scenario no. 1: “You're a visitor, accessing one specific page of a Drupal website, then switching to another one, then... all of a sudden... the web page you will have just landed on instantly turns all white! All content disappears!” Scenario no. 2: “You're a Drupal web developer and you've just given your theme a “routine” update. Or maybe you've just finished developing a custom module. Everything seems to be working perfectly fine on your Drupal site when... tragedy... meaning WSOD... strikes and leaves you “defenseless”: staring at the big white nothing!”   Does any of these 2 scenarios bring back unpleasant memories?  Well, in today's post we're ready to help you put together your own “emergency   kit”! The one including all possible solutions to apply whenever WSOD strikes again, focusing, of course, on the “clear your Drupal cache” one. Keep reading: 1. But How Does Drupal's Cache System Work After All? Drupal's caching is a key performance-booster! What it does is saving and storing copies of the requested content on a Drupal site's page, so that when the next visitor accesses the same web page link, it will automatically display the stored content. A great way of saving your server's resources. Now, with all the “hard work” that its caching tables need to do (storing and then delivering the stored content, the menu links, the scrips), now and then “accidents” happen and they stop delivering content. Therefore: WSOD happens! 2. "White Screen of Death": What's Causing it? Maybe the term “causes” is not the most appropriate one. Let's replace it with “instances”: instances when WSOD occurs. Here are a few:   after you've updated the theme on your Drupal site   after you've updated a Drupal module   after you've run your updates on Drupal core itself   while you're developing a custom module for your (or your client's) site   after you've moved your Drupal site to another server What does this mean?  Well, it means that since we have a “bundle” of instances when this terribly frustrating error occurs, we also have a “bundle” of possible solutions to rely on for getting it fixed. And, speaking of them, our team of Drupal web developers', here at OPTASY, favorite one if the “clear your Drupal cache” emergency solution! 3. Which Are The Other Ways to Fix a WSOD Error? As already stated: clearing your Drupal cache is not THE one and only way to resolve the “big nothing” problem on your Drupal site. Here are just some of the other methods you could include in your “emergency kit”, whenever you're dealing with a “White Screen of Death”:   check your Watchdog tables   check your error log files   recreate your permissions   restart your web server    uninstall the problematic modules   enable error reporting (although, these are cases when a WSOD can lock down your site completely, caching the very “culprit” code itself, the one that might be causing the “white chaos”) And there are many other possible solutions to the “white nothingness” error. We've just listed some of them. Take them all into account and make sure you have this “emergency list” at hand when... the inevitable occurs! Needless to add that, based on our own experience as Drupal developers, we recommend you, as a way to fix your future WSOD errors, to clear your Drupal cache.  4. Which Are the Main “Clear Your Drupal Cache” Methods? 4.1 Use Drush  Rely on Drush command-line interface for a quick fix of your “White Screen of Death” error! Here are the Drush commands to use to clear your Drupal cache (depending on the Drupal version that you're using): In Drupal 7:   drush cc or drush cache-clear: for selecting which cache to clear     drush cc all or drush cache-clear all: for clearing all the caches at once   In Drupal 8: drush cr or drush cache-rebuild: for rebuilding your website and clearing all its caches                      4.2  Use the Database You could also clear your Drupal cache manually, by emptying all the cache tables stored in your database. Of course, it goes without saying that you should go for this method only if you're confident enough (leaving no room for human error in the equation) to handle those database tables: if you know what you're doing! This is a two-step solution, in fact:   use phpMyAdmin (or maybe you prefer another database administrative tool instead) to access your site's database.    manually empty the “cache” labeled (you'll see the “cache_” prefix there) tables from your database, without deleting them (do keep this “tiny detail” in mind!)    Note: Remember to make an update of your website before you go ahead manipulating its database! 4.3 Use the Performance Page  And the third “clear your Drupal cache” method on our list is the one implying the Performance Page.  Just go to admin/config/development/performance and click on the “Clear all caches” button. Cache clearing made simple! It looks like we've reached the end of today's post on how to clear your Drupal cache and why you should start seeing it as a handy solution to your WSOD errors!  And yet, allow us to give you one last piece of advice: make a habit of testing your updates first instead of running them directly on your live website! It's probably one of the simplest ways of keeping the “White Nothingness” at bay! ... Read more
Adrian Ababei / Mar 15'2017
Tips To Hire Best Web Design Agency In Toronto
When you’re making a decision about which Toronto web design agency to hire, you’re making a decision about the future of your business. A well designed, quickly loading, a good looking website will bring you, clients, increase sales and lead to success. A bad website… well, let’s just say it will cost you more. If you’re a small business, looking for an affordable web design Toronto studio is understandable. It’s perfectly achievable too. There are good web design agencies in any price range. There are bad ones in all price ranges as well. So how do you make sure to hire the Toronto web design agency that’s right for you? Here are a few considerations that can help you make the right decision. Look for relevant experience. Markets and industries are different. If an agency worked with fashion shop websites in Europe, it doesn’t mean they will know how to build a website for a Toronto hi-tech company or a local car repair shop. They may, or they may not. Picking a company that worked with clients in your industry locally is the safer choice. Affordable is not the same as cheap. Remember there’s the trio of things: Fast, Cheap, Good. You can only ever choose two of them. Choose fast and good, and it won’t be cheap. Choose cheap and fast, and you won’t get quality results. But it can be affordable. As we just said above, there are good companies in all price ranges. Just don’t make it your top priority. See how communication works. Are emails answered quickly? Do they provide detailed answers? The company you’re hiring should sound interested and reliable. They should be able and happy to explain what exactly you’re getting for your money. Make sure you’re also available, to establish good communication and trust, of course. Portfolios are important, but checking them won’t hurt. Unfortunately, it’s not impossible for businesses - in any field, for that matter - to exhibit projects that are not their own. Luckily, it’s easy to check. All you need to do is contact their client and ask how the service was. This way you gain a confirmation that the portfolio project is real, and also find out about how good it was working with the firm. An honest Toronto web design agency will only encourage that. We hope this helps. Good luck in your search and a subsequent new project!... Read more
Adrian Ababei / Mar 02'2017
What Are Some of the Top Drupal Modules for SEO? 5 Essential Ones
Speed is a crucial ranking factor! So what do you do when you're a Drupal website owner or a Drupal web developer facing the challenge of having to supercharge your site with “only” the bare essentials in terms on Drupal modules for SEO?   There are two possible scenarios here:   you invest a huge amount of time reading all that has been written on each one of Drupal's SEO-oriented modules, you install each one of them and “take them for a spin” and eventually (after hundreds of cups of coffee and lots of more or less “zen” meetings with your developers and SEO “gurus” you manage to eliminate the “redundant” SEO modules from the “must-haves” list   you scan through our list of 5 “bare essentials”, including the indispensable Drupal SEO modules, leveraging all the research work we've done and our own experience as web development company in Toronto.    If scenario no. 2 aligns with your goals of reducing time and boosting your SEO strategy's efficiency, then let's not wait any more time!   Here is out list of 5 essential Drupal Modules for SEO:   1. Metatag   “Getting your website Google-friendly by describing its content for the search engines”. This is how we could sum up what this Drupal module does.   The search engine results related to your website get more relevant!   To detail a bit: Metatag allows you to add various meta tags to your web pages. The list includes tags ranging from title tag (a significant on-page ranking factor) to meta description, canonical URL etc.   The great thing about it (if you're short on team members who could add the proper metatags to each and every web page on your site) is that you get to set it up so that it automatically adds meta keywords and tittle tags for you.   Still, consider this automation as the very last solution on your list, since nothing can beat a copywriter/content writer/SEO specialist  in person adding the best context-based keywords to your content.   And there's more! Metatag is a highly customizable module and where do you add that it's “equipped” with multilingual support, too!   2. Google Analytics    You do have a Google Analytics account, right?    Just teasing! Anyone operating in the digital landscape has at least one GA account!   Well, Drupal's ready to help you leverage the most-used website statics service through a dedicated module.   Install it, select precisely those downloads/links/content types on your website that you want to closely “monitor” and turn the insights you'll get into (more) traffic for your website.   Besides its quick and easy installation process and its feature allowing you to track precisely those sections on your website that you're most interested in, the Google Analytics module comes to simplify your whole data tracking workflow, too!   It means that won't be “forced” to add the GA tracking code to each and everyone of your “target” pages. It's enough for you to put the tracking ID in the configuration page (the module's configuration page) and Google Analytics will take it from there!   Find out where your visitors come from, at what time of day, what pages they go to more often, what are their preferences, what keywords they type in the search box etc. etc.   Say “hello!” to “powerful” data!   3. Pathauto   Be honest with yourself: you can't expect your website to be “search engine friendly” if it's (still) a bundle of “/node/4” type of URL aliases!   This is where Pathauto comes in handy! Install it and get your website a link aliases “makeover”!    What this modules does is that it aromatically generates search engine and (implicitly) user-friendly URL aliases for various types of content on your website.   Say “goodbye” to “/node/4” type of URL aliases and say “hello” to “far easier to digest” /category/title-of-article instead types of links.   And when we say “various types of content”, we do refer to terms, taxonomy, users, modes.    This is definitely one of those Drupal modules for SEO that you don't want to skip supercharging your website with. It will translate into a major boost in rankings!   4. Redirect, One of the Essential Drupal Modules for SEO    Website optimization means (among many other things) “dealing with duplicate content issues”.   Here is another one of Drupal's modules for SEO, Redirect, that lifts a heavy burden off your shoulders (or at least off your team's shoulders).   It cleans up and prevents duplicate content issues.    The checks that it runs include:   tracking down trailing slashes tracking down the current URLs' alias and redirecting them if those aliases are not being used scanning access to private URLs, ensuring that your website's visitors can access them   5. XML Sitemap   XML sitemaps are probably the most efficient way of making your Drupal website more “inviting” for search engines. More “welcoming” for bots to crawl in and “inspect” your site's deep structure.   And you do want do make your website “search engine-welcoming” now don't you?   Drupal's XML Sitemap module, one of the must-have Drupal modules for SEO indeed, automatically puts together your website's sitemap, according to your own settings, and it “delivers” it to search engines.   Due to their dynamic nature, search engines always get the newly updated version of your website's system of URLs.   Now allow us to encourage you to adopt a good  XML sitemap-related practice, as well: if you're dealing with a large website, it's always best to organize your multiple XML sitemaps into categories!   Other good practices linked to XML sitemaps and their “automatic” nature (the module gets automatically updated every time you delete or add a new web page to your site) would be:   removing noindex pages “freeing” your sitemap from PPC pages  removing all the blocked pages   avoiding to weight down your sitemap(s) with non-200 pages   … and the list of common sense (after all) “rules” could go on and on!     And these are the “bare essentials”, the key Drupal modules for SEO that you need (not “should”) to install on your website!   They do make the basic, yet powerful SEO “kit” that will supercharge your site with all the must-have SEO-oriented functionality. It's the perfect “kit” that will help you avoid the risk of using too many of your website's resources with unnecessary SEO modules and tools.    As you can see, we've left out the off-site SEO tools, the content optimization ones (that you'll find useful in case you have no dedicated SEO specialist or team in your company and you want to implement your SEO strategy in-house) and plenty of other Drupal modules for SEO which fall into the “optional” category.   Now your turn! What does your own “kit” of essential Drupal SEO modules include?   ... Read more
Adrian Ababei / Feb 21'2017
OPTASY Gains Notoriety as a Top Web Developers in Canada
The power of a business’ website is not to be underestimated; it is the storefront to ecommerce companies, the credibility for professional services, a first impression regarding branding and marketing for website visitors and it’s the epicenter of the decision making process for consumers. A great website can drive the visitor to research more about your product or services and find confidence that your company is head and shoulders above the competition. At OPTASY, we put our expertise, creativity and talent into the outstanding websites that we design for our customers and are excited to learn that we have been chosen as one of Canada’s top web development companies by technology research company Clutch.   Based in Washington, D.C., Clutch creates a reputable business directory that exceeds most technology review lists that you may have come across. With intricate questionnaires and verified client reviews, Clutch ensures that only the best of the best make it to their prestigious reviews index. In this competitive industry of technology and web development, it is a high honour to be acknowledged on this list of exceptional companies.   There were many factors which brought OPTASY to the top of the list; great communication, increased customer traffic and revenue being some of the most common qualities listed. According to a client in the medical field in which OPTASY upgraded their website, "I’ve had to have discussions with OPTASY during the last part of our project, making sure that the website was SEO-ready. Our traffic increased after the upgrade, as well as our revenues… OPTASY was very responsive, fast, and offered great communication."   What is equally impressive is that many clients of OPTASY have been with us for years and plan on using us for updates to their Drupal web services. One development agency commented, "OPTASY has provided development services for our company, mainly Drupal, JavaScript, and PHP-related. We rely on OPTASY’s principal for both development and architecture in certain cases … We have an ongoing relationship with OPTASY and started working together in 2012."   We are extremely proud of our team and the amazing work that they do which has earned us recognition among our peers and others in the technological industry. Our mission involves having the best experts who strive towards designing premiere Drupal web services while creating incomparable customer experience. We are fortunate to have clients that acknowledge and appreciate our dedication and we look forward to the future as we continue to provide the tools for great online business. ... Read more
Adrian Ababei / Jan 19'2017
Drupal or Wordpress? Depends on The Type of site You Will Build!
Drupal or Wordpress definitely make the most popular CMSs of the moment and considering that they do share quite a lot of similarities, too, making a straight choice between them can get quite energy and time-consuming.   How should you know for sure which one is THE one that will respond better to your web project's specific needs?    Before you dive into our in-depth comparative review of the two famous CMSs, (that we hope it will manage to steer you in the right direction), we need to put this straight right from the start: there is no such thing as “one is better or worse than the other”.   Both Drupal and Wordpress work wonderfully when it comes to suit specific needs, therefore, there' no question of hierarchy here, only a matter of  “suitability” so to say.    Each one of the two is designed for a specific type of website (and, thereby, comes with a specific set of expectations from its future owner), that's all! Drupal or WordPress: Which One Is More Advanced in Terms of Functionality? Here's something to reflect on: Drupal's far more advanced functionality (compared to Wordpress's) is, at the same time its strength and its “Achille's heel”.    How come?   It all depends on the level of technical knowledge of the one deciding to “unleash” and handle its functionality. It can lure and be an “irresistible' challenge for some, but it can discourage others!   Drupal requires someone with more than “some” technical experience (or at least one who's well aware, from the start, that there is a steep learning curve involved) for handling all its various features- content types, taxonomies, blocks, views- and livening it up to its full potential. Once handled by “technical savvy hands”, it can handle all types of refineries that Wordpress can't: it can handle heavy content and multiple website stakeholders (website admins, content editors, publishers you name it).   As for Wordpress, it will definitely manage to cast a spell upon you if have basic technical skills. Designed as a blogging platform, Wordpress's performance can be affected to a great extent if it's “forced” to carry away a too heavy load of plugins and content “on its shoulders”. Otherwise, if you keep your Wordpress website light, it can reach pretty much the same level of performance as a content-stuffed, large-scale Drupal website.   See? Told you!   It all revolves around the type of website that you need to build (and also around your level of technical knowledge).   Drupal is more robust, but it's quite “picky” when it comes to “revealing its true power” to the one handling it: it's a CMS built by developers for developers, after all.   Wordpress keeps its performance within good parameters as long as you don't overload it (and it requires zero technical skills, too)! Drupal or WordPress: Which One Is More Flexible? HIGH PERFORMANCE and FLEXIBILITY sure are the 2  pillions of any great website on the online landscape, wouldn't you agree?   "Flexibility" is another word for “Drupal”. The CMS practically “overwhelms” you with a wide collection of free themes, modules and tempting customizing options, which you can pick, tweak and use for constantly editing and boosting your website's looks and performance.    And yet, it's a “gift with a twist” that Drupal makes you! There's no point in hiding it (and even we, as Drupal developers in Toronto aren't going to conceal this detail): you need to be a developer for efficiently handling all its modules. They require customization and therefore technical skills.    But once you've learned how to install, costume and update modules in Drupal, how to “unleash” all that extra functionality that these modules “encapsulate”: oh boy, it's such a confidence-booster! You'll get to build a website capable of handling thousands of users and thousands of content-stuffed pages!   Wordpress isn't a cheapskate, either, when it comes to “spoiling” its users with no less than “millions” of plugins and themes. Moreover, it definitely has a strong advantage for the non-tech savvy ones: you don't need to be that technical for successfully integrating all those plugins and perform all the needed editing yourself: on colours, font, layout, you name it. Ease peasy!   But you get to do all that only as regards small size websites, you should definitely keep that “tiny” detail in mind! Drupal or WordPress: Which One Ranks Higher in Search Engines? When comparing Drupal to Wordpress in matters of SEO-related features, what you should know is that there is no matter of “better” or “worse”! It's just a matter of “two different, yet equally efficient approaches”!   Let's dig into more details!    With “tantalizing” plugins, such as Yoast's SEO, Wordpress helps you ideally optimize your website for search engines in no time (and with no great technical skills required either, remember?). It “spoils” you with a quick and easy way of optimizing your site.   As for Drupal, it comes with a certain “edge” given by the fact that it can handle way larger websites. Loads of content and truckloads of daily visitors to handle, you can just figure it out yourself, come with a different approach to SEO, with totally different SEO needs and strategies. Moreover, you need to know what you're doing, when handling Drupal, if you want to efficiently optimize your site.   Here's another “detail” for you to reflect on: when it comes to page load times (and you're well aware of Google's “weakness” for websites that load fast) Drupal comes equipped with robust and (most important) out-of-the-box catching features, as compared to Wordpress, where you have caching plugins that you get to use for speeding up your website! Drupal or WordPress: Which One Handles Security Better? Whitehouse.gov is built on Drupal!   Need I say more? Drupal takes security to a higher level, that's for sure, and no wonder since it's been designed to suit the specific security needs of enterprise-level websites!   Wordpress, since it's been designed as a blogging platform, is more vulnerable. It takes just a hacked plugin for hundreds (or more) of  Wordpress websites to get “infected”, so just reflect on this for a minute or two before you make your final choice.   Size does matter! The size of the website that you develop determines its future security needs, as well (so, you can't compare a blog to a governmental website, right?).   There's more! Choosing the right platform specific hosting application is decisive when it comes to managing security risks: you have Acquia and Pantheon if you go for Drupal you have WP Engine and since recently Media Temple, too, if you go for Wordpress We, here, at our web development company in Toronto, manage to “sleep well at night” since we are Acquia partners! Drupal or WordPress: Which One Is Easier to Use? This is the aspect that Wordpress excels at! Anyone can use it!   You get to set up your Wordpress site and make it look sharp and functional in no time without having to be a programming languages guru! With its simple user interface, it turns building a website into a matter of minutes and even its customization doesn't pose great problems or causes severe headaches.   Things get a bit trickier with Drupal! It's not hard to use it, it's just a bit more challenging to learn how to use it in the first place!    Once “armed” with enough technical skill, the sky is the limit with Drupal: you can develop far more advanced (and therefore confidence-boosting) websites. Its interface, too, is easy to use, so that won't be a problem. It just requires a bit more time (and will) to learn how to mix and match its core features and how to edit anything in the back-end, too.   And, the good news is that it looks like Drupal 8 paves the way to turning its CMS more accessible for non-developers (such as content editors, for instance), too. So, there are chances that Drupal steals the “crown of easiness to use” away from Wordpress in the future to come! Stay tuned!   Also, you can relax: they both get your back covered!   That's right, both CMSs are supported by active user communities, so you can easily get the answers to your questions or the needed documentation!   Another highly important “detail” is that both Drupal or Wordpress reward you with freedom in terms of design! You get to design your templates to your liking, no matter which one of the CMSs you'll go for!   We'll end our comparative review with 3 last questions that you should ask yourself before you go for one CMS or another:   1. Does your future website have to handle multiple user permissions?   2. Will it feature multiple content types (and page templates)?   3. Does it require enterprise level security? ... Read more
Adrian Ababei / Dec 14'2016
Drupal vs Joomla: Which One to Choose for Your Web Project? And Why?
You are aware, aren't you, that there's a lot at stake when choosing the “right” CMS, the one that meets your particular web project's needs? So, you definitely need to think it through and to consider all the main aspects!   Still, no need to panic now! To get stressed out that you risk to make the wrong choice, for you can't tell which one is the perfect fit for your particular work scenario.   The best way to find your answer if by asking yourself the right questions!   As simple as that!   What's your level of knowledge of the main programming languages (CSS, HTML, PHP)?   What type of website will you be developing (a corporate website, an e-commerce website, a social network etc.)?   What future do you anticipate for this website? Are there any chances that it should grow significantly? Will it require new functionality and is it likely to face the challenge of traffic overloads later on?   And so on...   Are You Joomla's or Drupal's “Target” User?   Are you're a “tech savvy” developer, with a consistent coding experience in the basic programming languages? Then you're the type of target user that the community developing Drupal envisioned for this platform!   Are you confident that the site you're about to build will grow and, therefore, get more and more “greedy” when it comes to new features and constant customization (and you have a certain “weakness” for the after-launch “polishing” and constantly upgrading processes? Then you should definitely go for Drupal.   Do you have basic technical skills instead? Are you looking for a super easy to use CMS that doesn't require certain language programming skills? Then Joomla is the platform that you'll find be comfortable with! It will allow you to have your e-commece or social networking site up, running and looking attractive in no time!   Is It A Joomla-Specific or a Drupal-Specific Website That You'll Build?   What type of website are you planning to develop?   And (after you've discovered whether you're Drupal or Joomla “material” answering to the question in the previous paragraph) this might just be the question that will help you make a choice between the two popular CMSs!   Is it an ecommerce website that you'd like to set up quick and easy, with no customization implied or maybe a fully functional social networking website and you have basic technical skills? Then you've got yourself a winner: Joomla!   Are you facing an a lot more challenging project, where you need to rely on your technical expertise and deep experience as a web developer for building large scale websites? Then it's Drupal that will help you meet and exceed your client's daring business goals. For instance here, in our web design company in Toronto, we often face the challenge of developing content-packed websites. So, we know that we can rely on Drupal: its been designed for handling truckloads of users and large amounts of data, you know.   And where do you add that, due to its catching features, Dupal loads faster, too? And it requires less server resources than Joomla, as well?   Checked and double checked! If you're planning to start a daring (even a multisite) website project, one that's sure to grow steadily in traffic and content in the future to come, then go for Drupal!   How Do Drupal and Joomla Respond to Your Need of Customization?   FLEXIBILITY and CUSTOMIZATION are Drupal's “little name” and respectively “middle name”!   So, you bring in your passion for “getting your hands dirty” up to your elbows in lines of code and it will spoil you with an overwhelming array of themes, plug-ins and all sorts of other configurable options!   Select the ones that respond to your website's ever growing needs, mix and match them and then skillfully integrate them, boosting both its looks and functionality!   It's true, Drupal “expects” you to be more of a technical savvy (compared to Joomla), but it also gives you unlimited freedom: feel free to come up with any needed improvements to your site, to create custom modules, to play with themes, to upgrade its out-of-the-box features to your (or your client's) liking. Sky it the limit!   Oh, and I almost forgot: they're all free! It's a “detail” that you should take into account if you consider that some of Joomla modules and plug-ins are not free of charge!   So, yes, when it comes to flexibility and customization, it depends a lot on your own needs:   Do you actually want to be able to constantly customize the look and feel of your website? Drupal enables you to do that painlessly.   Do you just want to set up a functional site as quickly as possible, without investing to much time and skills into its customization? Then Joomla, with its already famous easy to use interface, will help you set up your social network or online shop as quickly and stress-free as you say: “Joomla”!   What About Security? Which One Makes A More “Secured” Choice?   It would have to be Drupal!     And I'm not saying it because it's Drupal that we're building wesites on here, in our digital agency in Toronto! Just think about it (for it's pretty obvious): how many hacked Drupal websites have you heard of compared to Joomla or Wordpress sites?   It's true that those who've “pledge to remain 100% faithful” to these two CMSs will come to “counterattack” stating that this is only because there aren't as many websites built in Drupal as there are in Joomla or Wordpress.   And yet, it's a proven fact: Drupal takes security to another level, compared Joomla. Its worldwide community of developers is constantly “hunting” down threats and is always on the lookout for any weaknesses showing up in the system. Moreover, whenever they spot security vulnerabilities, they patch them up and “expose” then on the website.   Still, even if with its not that strong approach to the security factor, Joomla, too, responds to security vulnerabilities and it gives you the chance to strengthen your site's level of security, to upgrade it with new extensions. Yet, it is important to keep in mind that you'll need to constantly run the necessary updates for keeping it properly shielded!   Which Are Joomla's and Drupal's SEO Capabilities?   If you're concerned about the SEO aspect (and you should be, especially if it's the challenge of a large scale, multilingual website project that you need to respond to), then there's no “better option”, there's just ONE option: Drupal!   It “beats” Joomla in terms of SEO capacities, being equipped with far more advanced SEO features.   Still, it's true that you can optimize your Joomla website for the search engines, too. The main difference is that you'll need to actually create those custom SEO-related features yourself (and since this CMS “boasts” to be “a dream come” true for the non technical savvy ones, this aspect might just be an unpleasant surprise for you).   How Do They Handle Technical Support?   When it comes to their help portals, if you're a beginner you'll find Joomla's technical support far more accessible.   You can find the answers to all you Joomla-related “dilemmas” and you'll be able to get all the guidance you'll need as compared to Drupal's support options, which are more “from developers to developers”: a lot more technical.    So, there's no "better" or "worse" help portal! It's just a matter of responding to their own target users and “speaking their language”.   What other strong and weak points of these two popular content management systemshave you “dug up” yourself ? What other similarities and major differences? We're looking forward to reading about them in the comments below! ... Read more
Adrian Ababei / Dec 13'2016
Drupal AMP: Drupal's Accelerated Mobile Pages Module
Drupal's ready to turn into your best ally in your endeavours to constantly comply with Google's ever-changing “rules”! With mobile-friendliness being the ultimate goal and the main words on the lips of all marketers and web developers these days, it would be quite “reckless” to ignore all the efforts that the Drupal community has put into developing this module: Drupal AMP (Accelerated Mobile Pages).   Just think about it:   as a marketer speeding up your website's load time on mobile means happy users (boosting UX) and therefore, “overwhelming” organic traffic for you   as a content editor, it instantly eases your whole workflow: you're given the easy-to-use toolkit for making your content mobile-friendly in no time   as a web designer, it lifts a great deal of the “pulling off the best solution for crafting responsive design” weight off your shoulders   In short: it's “Optimize for mobile or die trying!" Not really an exaggeration if we think that you only have less than 5 seconds to catch your users' attention and to get them hooked on your website. 5 golden seconds when, if your site loads all its awesome content at a really slow speed or makes content look weird on mobile devices, you can as well “bid farewell” to your users. They'll be off to greener pastures in no time: to websites ideally optimized for the web, that doesn't waste their way too valuable time.   What Web Pages Does It Target?   That's right, you should know before installing the Drupal AMP module that it doesn't address your whole website. It targets blog posts and informational, news article-based pages on your website!   So, it's not geared towards e-commerce websites!   How Does It Work?   If you're still undecided, facing the challenge of picking between Drupal AMP module and other solutions available out there for helping your site gain speed on mobile devices, consider this: the Drupal AMP module is an open-source project!    So, if you're a future-oriented type of developer/marketer, you know what this means: it will constantly get tested and improved!    But how does it work precisely?    Once you integrate it into your website, it creates a new view mode for the targeted content type.Then, you get to choose the AMP field formatters that will handle your target content's conversion for the mobile (formatters for video, text or images). Next, it's the PHP library that “comes into the picture”, processing the entered HTML and doing its best to come up with the proper AMP HTML equivalents.   It practically gets to “work its magic” on any type of content that you want to optimize for the web.   Let's dig into the AMP Theme and the AMP PHP Library!   OK, now walk us through short “descriptions” of each one of the AMP module's 2 main components:    AMP Theme: familiar with the AMP HTML (a subset of HTML) and its standard? The one aimed at encouraging beautifully looking, quickly loading content on mobile? Well, then you should know that what the AMP Theme does is actually producing the markup that this standard requires for websites venturing in the mobile world. Moreover (for it's still a Drupal theme that we're talking about, so it's got “flexibility” written all over it), it enables content managers to come up with custom-made AMP pages. They gain total control over how these pages on mobile will actually display their content!   AMP PHP Library: it handles the final corrections and repairs. Whenever the entered HTML doesn't comply with the AMP HTML standard, it's the PHP library that makes the right images, Youtube HTML, Tweets and Instagram conversions and creates the issues reports. Take it as a “quality assurance” tool!   In a nutshell: with Drupal 8 you can now respond to the challenge of the “developing for the mobile landscape” trend: quickly displaying AMP HTML pages on your website! How Do You Install Drupal AMP? Familiar with Composer Manager? For it's this module that will help you a great deal installing and therefore, boosting your website with all the “mobile optimization features” that AMP comes packed with!   So, here are first steps to take:   first, a composer.json file (in the Drupal AMP module) confirms the dependency on the AMP PHP library (which features its own dependencies)   other modules could state the same library dependencies   last, the Composer Manager module gathers all the info in the composer.json files of the modules (all those installed on your website) and puts them all together, thus avoiding the risk of ending up with several modules installing the same dependencies.           Now walk us through the installation process:   Keep in mind: We'll be enabling the Composer Manager module before we go on and install the Drupal AMP one! enter this command (in your Drupal's website directory): drush dl amp, amptheme, composer_manager and get your AMP theme, AMP module and Composer Manager downloaded.   enable the first items needed for your installation: drush en composer_manager, amptheme, ampsubtheme_example. It's at this step that we're enabling the “ExAMPle subtheme". Take a look at its code, for it will reveal to you how you can, later on. customize your AMP pages.    use Drush for enabling your AMP module: drush en amp              Next, you'll be notified about dependencies being downloaded.    There you have them all enabled and ready to be used: the AMP theme, the AMP module, the AMP PHP library and the example subtheme, too. Configure Your Site For The Drupal AMP Module Go to /admin/config/content/amp, the AMP module's configuration page. There, pick the content types that you'd like this module to come up with AMP equivalents for!     Bravo! You're now closer than ever to show off your optimized website which loads its high-quality content faster than ever on mobile!  ... Read more
Adrian Ababei / Dec 01'2016
Get An Insight Into The Page Request Handling Mechanism in Drupal
  If you really want to evolve from a web developer skillful enough to put together a functional “puzzle” out of Drupal's core modules, to one custom-making his new modules, then you need to take a close look at the whole process behind this apparently simple sequence: “you hit an URL, then (as if by magic) the required page instantly gets loaded”.   So, ready to take a sneak peek “behind the curtains”? If yes, then allow us to be your guide!     1. Drupal Separates The Internal Path from the Domain Name   Once the server gets the message, once the URL is sent, Drupal focuses on the internal path and on it only. Therefore, it just “cuts it off” from the URL.   2. Then Drupal Calls Index.php   Take the index.php as some sort of a “control tower” (you can find it in the root directory of the Drupal install), the one that processes all the incoming requests.    Now, let's have a closer look! Index.php is made of 4 lines, each one of them performing a certain function:   define('DRUPAL_ROOT', getcwd(): the very first line that runs once Drupal gets a page request require_once DRUPAL_ROOT . '/includes/bootstrap.inc': its role is that of loading  bootstrap.inc in the includes/subdirectory.bootstrap.inc drupal_bootstrap(DRUPAL_BOOTSTRAP_FULL): it loads pretty much everything: the modules and functions, the needed data into the memory... menu_execute_active_handler(): as the name says it, it's the one actually handling the page request, delivering the final web page to the end user    3. Now Drupal Goes Through the Bootstrap Process   This is where the “major loading” happens: it is now that Drupal loads the libraries, initializes the database, sets the right sessions...    The bootstrap process a self-start one, requiring no input, no intervention from you, the website's “creator”, and yet... you can't possibly not know what happens during this whole process running on its own!   How about going rapidly through all the 8 phases of this highly complex bootstrapping process?   1. DRUPAL_BOOTSTRAP_CONFIGURATION: Drupal calls upon it wherever it encounters php errors or exceptions. If so, then an error handling code is prepared, settings.php gets loaded, configuration gets initialized...   2. DRUPAL_BOOTSTRAP_PAGE_CACHE: it checks whether the IP is blocked or not, whether the cache is enabled or not in order to serve the page from the cache   3. DRUPAL_BOOTSTRAP_DATABASE: it loads the database and checks whether any $databases array has been defined. If no, then it redirects to install.php   4. DRUPAL_BOOTSTRAP_VARIABLES: it loads the variables from the database variables table, then it overwrites the ones defined in settings.php, while loading all the other modules needed during this process      5. DRUPAL_BOOTSTRAP_SESSION: it initializes the session handlers. There are several custom session handlers in Drupal:   _drupal_session_open() and_drupal_session_close(): to open and close a connection _drupal_session_read(): gets the session from the sessions table _drupal_session_write(): checks whether the session has been updated and writes a new one to the databse _drupal_session_destroy(): it deletes cookies and cleans up a specific session _drupal_session_garbage_collection(): it deletes the outdated sessions   6. DRUPAL_BOOTSTRAP_PAGE_HEADER: it practically sets up the HTTP header   7.  DRUPAL_BOOTSTRAP_LANGUAGE: called upon only for multilingual websites, it initializes the right language for the future web page   8. DRUPAL_BOOTSTRAP_FULL: the very final step, where all the modules are enabled and hook_init() is invoked     4. Drupal's Menu System Steps In   From all of Drupal's modules, it's the menu system that “guides” the internal path to a callback function.   PATH... MODULE... MENU SYSTEM... CALLBACK FUNCTION... LOAD CONTENT   5. Finally, It's the Theme System That Styles the Requested Page   Being more than just a theme (since it's a mix of theme functions and templates), the theme system is the one “dictating” the content/ the web page's final look.    CONTENT... THEME SYSTEM (CSS, HTML, JS etc.)... BROWSER   Of course that each process of this whole page request handling mechanism in Drupal requires a lot more in-depth knowledge, but this is pretty much the overall mental scheme that each developer should know for:   1. boosting his self-confidence with powerful knowledge   2. being able to come up with his own future custom modules       ... Read more
Adrian Ababei / Nov 11'2016