Warning message

Documentation is currently being migrated into the new system. Some pages might be temporarily missing, and some guides might appear empty. Thank you for your patience while we are improving Drupal.org documentation.

Installing contributed modules: Find, import, enable, configure - Drupal 8

Last updated on
12 November 2016

This documentation is incomplete. Add more information.

Extend your Drupal 8 site's functionality beyond the features that come from the built-in 'Drupal core' modules, by installing addon contrib Modules from drupal.org ⎘. ('contrib' is short for 'contributed by Drupal community members', just like you, my friend. Thank you.)

 | Jump down to Contents ⤵Drupal 7 - Installing modules ➸⃞  | 

This page will detail, from a beginner's point of view, how you can find a module or theme to use, import it into your Drupal 7 site, enable a module (turn it on), and then configure a module.

Themes: All of the information on this page applies equally to adding a new theme to your site, up through the point at which you have the theme imported. Although this page was initially designed primarily for modules, it has now had a few bits of 'themes' information added. You can assume that everything below that applies to modules also applies to themes-- except not the 'enabling' nor 'configuring' information related to your site's "Modules" page.

In the final section Advanced Linux, Drush, and Git topics ⤵, a few stray items relating to using the Linux command line, Drush ⎘, and Git currently reside. Hopefully, a new home for these will be found, so that they can be moved off of this page.

Note: When the symbol "⎘" follows a link, it means that the link opens in a new browser tab/window, leaving this page open.





The permanent URL for this page is:
https://www.drupal.org/node/1897420
Do not link to this page, nor to any of the new Documentation pages using the 'friendly URL' in the address-bar. The URL for the page will change every time someone decides to change the page's 'title'. If you want to link to one of the new drupal.org documentation pages, login to drupal.org, (or register, and confirm your registration in your eMail), click the "Edit" button for the page you want to link to, and remove the "/edit" portion of the URL that you then see in your browser's address-bar.





Contents

      | Page Top ⤴ |

  1. In a nutshell

  2. Warning: Backup your site before using an un-tried module

  3. Windows issues with Drupal running locally (on your computer)

  4. Find a module to use

  5. Module project page

  6. Understand the various module versions available

  7. Codebase and database overview

  8. Module location in the codebase

  9. Importing the module

  10. Enabling modules

  11. Configuring modules

  12. Module documentation and help

  13. Updating the module

  14. Uninstalling the module

  15. Advanced Linux, Drush, and Git topics

 | Contents' beginning ⤴ | Page Top ⤴ |

  1. In a nutshell

       | Contents at this point ⤴ | 

    This page will be of greater benefit to you if you have an existing Drupal 8 site.

    You should feel free to experiment with any module, because you can always disable the module and remove it from your site.

    I recommend that if you are trying out modules that you have Not used before, only install one 'new-to-you' module at a time. And before you move on to another module, test the first module as thoroughly as necessarily to see how it changes things on your site, in particular, whether or not it breaks things that are already working.

    'Lower-case only' alphabetic character use in folder and file names

    I recommend that you always use only lower-case for the alphabetic characters in your Drupal site's folder names, and file names. You will never have a problem if you follow that simple recommendation.

    Drupal modules 'In a nutshell':

    • Find a module (or theme) to use.

    • Go to that module's (or theme's) "project" page, and see if it seems like something to try.

    • Pick a version of the module (or theme) to use.

    • Import the module (or theme) into your Drupal site.

    • Enable the module on your site.

    • Configure the module, if needed.

    • Know how to safely uninstall the module.

  2. Warning: Backup your site before using an un-tried module

       | Contents at this point ⤴ | Jump over warning ⤵ | 

    That warning is Not really relevant if you are just getting started with Drupal, because on the off-chance that a module breaks your site beyond your ability to quickly fix it, you can just create a new site. It's good practice to create additional Drupal sites.

    If, however, your site reaches a point at which you would hate to have to re-build it from the beginning, read on.

    Backup your site, and test your backup to see that it works before you use a module that you have not used before, especially if it is an 'Other releases' or 'Development releases' version that has not yet been released as being suitable for a live website.

    Before using a contrib module that you have not used before, you should always backup your site first, in particular your database with a record of which version of Drupal core that was used with that database.

    Also, critically, you should always test the contrib module on a test site (also known as a 'development' site), not on a live site (also known as a 'production' site), just in case the module breaks your site.

  3. Windows issues with Drupal running locally (on your computer)

       | Contents at this point ⤴Jump over this 'Windows' section ⤵ | 

    Assuming you have successfully gotten Drupal 8 installed and running on your Windows computer, keep the following in mind.

    • "\" versus "/"

         | Contents at this point ⤴ | 

      A Windows computer file system uses a back-slash character ("\") as a separator between parent\child folders, but for simplicity sake, the following guide will only use the forward-slash character ("/"), as is used on MAC and Linux computers, and used on online webhosts using UNIX based Apache servers.

    • Windows folder/file path length warning

         | Contents at this point ⤴ | 

      Unlike MAC and Linux, Windows has an upper-limit on the length of a file's path and name. That Windows limit is 260-characters, as explained on the Microsoft page "Naming Files, Paths, and Namespaces" at the section Maximum Path Length Limitation ~ msdn.microsoft.com ⎘.

      ...the Windows API doesn’t allow the length of the path for a file/folder longer than MAX_PATH, which is defined as 260 characters

      The maximum length is actually further reduced by 4-characters to 256-characters, because a null character is required at the end, and the letter of your drive effectively has three back-slash characters preceding it: (\\\C:),(\\\D:), etc. [260 -4] = 256

      I advise you to keep the 'parental' path to your codebase as short as possible.

      The problem is that four files in my Drupal 8 installation's codebase have path/name lengths of 210-characters, which includes counting each back-slash as one character. For example:

      sites\default\files\php\twig\c88a15bf_block--system-messages-block.html.twig_89f0066b838ddf08c371dd7dc45cc611d6453976ffdca0ee234493d9d2bc300d\e418dc82e69563a7713254f2f31e8fa4fbfa76ac6b5f0b13f3aabdb6cbfd89b1.php

      So, if the path from the top of your drive down to your codebase, including your d8-root folder and its final backslash, is longer than 46-characters, you will likely experience errors. [260 -4 -210 = 46]

      Note, for example, the default path that is used by Acquia Dev Desktop as the default installation location for your 'Sites' folder, which is intended to contain all of your Drupal sites:

      C:\Users\*YOUR-USER-ACCOUNT-NAME*\Sites\*YOUR-D8-ROOT-FOLDER-HERE*\.

      If you have a long Windows desktop user account name, and if you use a long name for your d8-root folder, you could exceed 30-characters for the path length, which would result in the above 'twig *.php' file having a path length over 260-characters, and in your getting errors when you try to install and run Drupal 8 on your computer.

      And regardless of what location you use for the 'Sites' folder, remember that if you add subfolders within the 'Sites' folder for additional organization of your Drupal sites, the character-length of those sub-folders will also apply to the Windows maximum path length, including one-character for each back-slash between folder levels.

      A good solution would be to specify the location for your sites as close to the top of a drive as you can get it, as for example C:\Sites\, D:\Sites\, etc.

      That will also help you avoid any problems you might otherwise encounter with any files you add to your site that have long filenames. (video files, audio files, images, etc.)

      Once you get your site online, path lengths should no longer be an issue, since webhosts most commonly use a Unix based Apache server.

  4. Find a module to use

       | Contents at this point ⤴ | 

    Go to the main page for contrib Modules from drupal.org ~ drupal.org/project/project_module ⎘.

    [ Themes: contrib Themes from drupal.org ~ drupal.org/project/project_theme ⎘]

    That page is the 'Modules' sub-tab of the drupal.org main section 'Download & Extend'

    Core compatibility: "8.x" - Set the fourth item down from the page-top, 'Core compatibility', to "8.x".

    Other search options: Feel free to change any of the other search items. You can also put a keyword or two in the textarea box for 'Search modules'.

    The item 'Sort by' is, by default, set on "Most installed", which means that the search results will be sorted by the most-popular first.

    Click the button "Search".

    On the search results page, the 'name' of each module (or theme) is a link to it's home-page, known at drupal.org as its 'project' page.

    Click on the name of a module (or theme you would like to investigate further.

  5. Module project page

       | Contents at this point ⤴ | 

    This section is an overview of a few things of importance on project pages. In addition to contrib 'modules', contrib 'themes' are also known on drupal.org as 'project'(s), and all drupal.org project pages have the same basic layout.

    Module project pages vary in depth of detail, however, because the content of each project page is created by one of the module's developers.

    The project page is usually worth reading carefully.

    Among other things, if the module is dependent on another module(s), or possibly an extra 'library'(s), that information will be posted. It is not critical if you forget about a module or library dependency, however, because later when you try to enable or use the module, you will get a notice about what you are missing.

    'Downloads' section

    A project page will always include links to get the various versions that are available for that module.

    Those 'Downloads' links will be discussed in more detail in the next section, Understand the various module versions available on its project page ⤵.

    'Issues for...':

    The module's project page will always include links under the heading 'Issues for...'. Those links are in the right-hand column when your browser window is wide enough, or they are near the page bottom under the 'Downloads' and 'Maintainers for...' sections when your browser window is narrower.

    The 'Issues for...' links take you to the issues queue for that specific module project. The issues queue is the official place where all of the problems ('Bug report'), support requests, ('Support request') and new-feature requests ('Feature request') can be found and searched for.

    So, if you run into problems with a module, search the module's issue queue. If your problem (or request) has not already been addressed, post your question or issue using the link 'Create a new issue', and someone will try to help you out.

    Resources:

    Just under the 'Issues...' section, in the section under the heading 'Resources', I always look for the link 'Read documentation'. That link will not always exist, but if it is there, it is a link to what the project's developers consider the most useful information for their project.

    The 'Read documentation' link might take you to a page on drupal.org in the 'Documentation' section, or the link might take you to a page off of the drupal.org site.

    Generally speaking though, every contrib module will have a "README.txt" file and/or an "INSTALL.txt" file in its top-level folder that you can view after you download the module, or after you import it into your site.

    The various Documentation resources available for a module (or theme) will be discussed in greater detail near the bottom of this page, in the section Module documentation and help ⤵, but notably at this time, you can view any project's 'README.txt' file, or see its other documentation without downloading anything, by following the instructions below in the 'Module documentation and help' sub-section Module "README.txt" file ⤵

  6. Understand the various module versions available

       | Contents at this point ⤴ | 

    On the "project" page, see the section 'Downloads' under which are the sub-headings 'Recommended releases', 'Other releases', and 'Development releases'.

    The picture below is for Drupal 7, but hopefully you get the idea.

    Table of Drupal module versions categorized by 'recommended', 'other', and 'development' versions

    The version you choose must be compatible with the version of Drupal you are using. So since you are using Drupal 8, you can only use a 'Version' that begins with '8.x-...'. But do not worry. If you try to use a Drupal 6 or 7 version on a Drupal 8 site, your site will not allow it to be used.

    'Recommended releases'

    Look for the uppermost 'Version' that you can find for Drupal 8. That is the version that you should try first, and hopefully it will be under the sub-heading 'Recommended releases', which means that it is stable enough to use on a live site (also known as a 'production' site).

    'Other releases'

    If no 'Recommended releases' is available, your next best option is to try an 'Other releases' version, if available.

    'Other releases' are generally on their way to becoming a 'Recommended releases' version.

    But, on the other hand, on a rare occasion an 'Other releases' version is an older stable version of the module before major changes were made to it. In that somewhat rare case, the older stable version will have been moved from the 'recommended releases' when the newer version was ready. One reason for keeping an older version around in the 'Other releases' section would be if some other separate module project were dependent on the older 'Other releases' version for that dependent module to work properly.

    'Development releases'

    The 'Development releases' version of the module is in some stage of development.

    It is the current 'state of the art of development' version, as the developers are working out bugs, or are adding new features.

    Be aware that the 'development release' might be being prepared for a future version of Drupal. Taking Drupal 8, for example, even though today Drupal 8.1 is the current recommended version of Drupal 8 core, the module's 'development release' might be being prepared for future use with the Drupal core version 8.2, or 8.3, which will have features not found in the current 8.1 core version.

    'Version' column

    This column is for the version number of the module on that row.

    For more information about the version numbering scheme that is being used, go the drupal.org page Version numbers ⎘.

    'Download' column

    This column contains the download links you use to actually get the module.

    *.tar.gz versus *.zip file formats for all project downloads #

    Each module is available in both the *.tar.gz and *.zip formats. Each of these files contains all of the module's files and folders in a single file that has been archived (multiple files and folders in one file), and compressed (made small as possible).

    The *.tar.gz version is smaller, but the contents of the *.tar.gz and *.zip files are identical.

    MAC and Linux users should use the *.tar.gz version

    Windows users:

    Use the *.zip version if you intend to extract the file onto your computer.

    • A Windows extraction of a *.zip file onto a personal computer is a one-step process. If, however, you extract the *.tar.gz file onto your Windows computer using, for example, the built-in Windows tool, (that was first introduced in Windows 7, or 8) the extraction process will first extract the *.tar.gz file to a *.tar file, and then you will have to repeat the extraction process with the *.tar file to fully complete the extraction.

      Granted, as a Windows user, if you are only grabbing the download link for an automated import of the module using the steps below in the section 'Automated module import with URL', then either version would do. Similarly, if you are only downloading the file onto your computer before using the automated import method detailed below under 'Automated module import of local file', then either version would do.

      In other words, Windows users will only find difficulties when they are extracting the *.tar.gz file onto their computer, because of the two-step requirement, and because older versions of Windows do not have a built-in tool for extracting *.tar.gz files.

      In conclusion, Windows users: Use the *.zip version.

    Additional *.tar.gz & *.zip info, and for all your 'freeware' needs

       | Contents at this point ⤴ | 

    For more information on *.tar.gz and *.zip files, including where to get free programs to work with them for Linux, MAC, and Windows, so that you can more easily 'extract' them, or create them on your computer (versus, for example, the limited built-in program within Windows), go to the drupal.org page that discusses this in more detail using the theme Zen project as an example. It starts at the heading *.tar.gz versus *.zip ⎘ and continues through the "For all my freeware needs,..." discussion.

    Leave the project page open

    We will return to the project page for your module later in this guide when it is time to actually import the module, so just leave it open.

  7. Codebase and database overview

       | Contents at this point ⤴ | 

    Although a Drupal site requires a server program (Eg. Apache or IIS), a database program (Eg. MySQL or MSSql), and a PHP interpreter to run, everything that is unique to your site is contained in your database and codebase.

    Database

    The database is something which I have never needed to edit or adjust. It takes care of itself, so to speak. It is stored separately and away from the codebase.

    Online, the database is one or two directory levels above 'public_html'. If you are running Drupal locally on your computer, the database is, using Windows as an example, somewhere at the location you installed the 'stack', possibly in 'C:\Program Files'.

    Codebase

    The codebase is a set of the files and folders that you can navigate around in, just like any other set of files and folder on your computer.

    The codebase is made up of Drupal core, contrib modules, contrib themes, and any other extra files you have added, like images or videos. These files are the ones that you will on occasion need to, or want to modify.

    The top level folder of your Drupal codebase will be referred to on this page as [d8-root].

    If you are running Drupal on your computer 'local'-ly, your codebase is in a location that your 'stack' knows where to find it. That location might be set by you, or might be in a default location determined by a stack installer, if that is what you used.

    Windows example: As an example, if you installed your Drupal site using Acquia Dev Desktop on a Windows computer, your codebase will by default be within:

    C:\Users\*YOUR-USER-ACCOUNT-NAME*\Sites\*YOUR-D8-ROOT-FOLDER-HERE*

    Please note that the 'Sites' folder above, which is intended to hold all of your Drupal installations, is Not the 'sites' folder within your codebase at [d8-root]/sites

  8. Module location in the codebase

       | Contents at this point ⤴ | 

    All of the module's (or theme's) files and folders will be contained in a single parent folder in your codebase. That parent folder will be named similarly to the module itself, using lowercase-alphabetic characters, and occasionally the underscore character ("_") between multiple words.

    When you import a module into your Drupal codebase using either of the two automated processes discussed below, the module will be placed at the default recommended location:

    [d8-root]/modules/*NEW-SINGLE-MODULE-FOLDER-HERE*/*MULTIPLE-MODULE-FILES-AND-FOLDERS-HERE*.

    [Themes default location: [d8-root]/themes/*NEW-SINGLE-THEME-FOLDER-HERE*/*MULTIPLE-THEME-FILES-AND-FOLDERS-HERE*]

    Manual import location

    If you import a module 'manually', you should place your module in that same default recommended location, *HERE*:

    [d8-root]/modules/*HERE*

    [Themes: [d8-root]/themes/*HERE*]

    After you perform a manual extraction of a *.tar.gz or *.zip file, be sure to check the file/folder structure to make sure that the module's folders are in the proper place, and are structured properly. This will be discussed below in more detail at Check file/folder structure after manual extraction ⤵

    Other possible locations

    While it is possible to use locations other than the default recommended location for modules, you should have a very specific reason for using any other location.

    One legitimate exception would be, for example, if you are running a Multisite Drupal ⎘ with several Drupal sites sharing the same codebase, and you want your new module to only be available to a 'specific_site'. In that case, the module should go into the folder:

    [d8-root]/sites/specific_site/modules/*NEW-SINGLE-MODULE-FOLDER-HERE*

    [Themes: [d8-root]/sites/*specific_site*/themes/*NEW-SINGLE-THEME-FOLDER-HERE*]

    {{COMMENT: I am guessing about the proper location for a site-specific module in a multi-site Drupal 8 installation. That may NOT, in fact, be correct for Drupal 8 as it was for Drupal 7. If you know otherwise, please correct the paragraph above. If you know I guessed correctly, please delete this comment. Thanks.}}

    Otherwise, with a multi-site setup, if a module will be shared between all sites, it should be placed in the normal default recommended location:

    [d8-root]/modules/*HERE*.

    [Themes: [d8-root]/themes/*HERE*

    For simplicity sake

    The rest of this page will be based on your using only one Drupal website, and Not a multi-site setup.

    Do Not use the core 'modules' folder

    Be careful not to use the Drupal core 'modules' folder for you new module.

    The 'modules' folder that resides at [d8-root]/core/modules is reserved for Drupal core modules (the ones that come with the original download of Drupal). Your contrib modules should Not be placed there. They could go there, but they should not.

    [Folder reserved for 'core' themes: [d8-root]/core/themes]

    If you keep your contrib modules out of [d8-root]/core/modules, that makes it easy to update your site later, because you can delete the entire [d8-root]/core/modules folder, and replace it with the updated version of the core [d8-root]/core/modules folder.

    Themes, likewise: If you also keep your contrib themes out of the core 'themes' folder at [d8-root]/core/themes, when you update Drupal core, you can delete the entire [d8-root]/core folder, and simply replace it with the updated version of the [d8-root]/core folder.

    Using sub-folders of the 'modules' folder

       | Contents at this point ⤴ | 

    Some advanced users who intend to modify the contrib modules, or to create modules of their own, or who simply have a lot of contrib modules, organize their non-core modules in sub-folders of the contrib 'modules' folder [d8-root]/modules.

    Keep in mind that each module must be unique in both the 'machine name' used for its folder name, as well as the name it uses in the *.info.yml file.

    {{COMMENT: If the above paragraph is not entirely accurate, or if you can think of a better way to phrase it, or if you can add more details for clarity, please 'Edit' this page, or add your suggestions using the 'Discuss' link. Thank you.}}

    A typical organization scheme might be:

    • [d8-root]/modules/contrib
      for original versions of contributed modules

    • [d8-root]/modules/custom
      for all custom modules

    • [d8-root]/modules/features
      for modules created using the 'Features' contrib module ⎘.

    If you put your new module into a sub-folder of the 'module' folder before you first use it, then you can rest assured that Drupal will use your new module without any problem.

    Moving modules that have already begun to be used

    If you want to move modules that you have already begun using on your site, see the page Moving modules and themes [This is a Drupal 7 page] ⎘.

  9. Importing the module

       | Contents at this point ⤴ | 

    Importing a new module (or theme) into your site can be done in several ways. From a beginner's stand-point, the three ways are:

     - Automated module import with URL
     - Automated module import of local file
     - Manual module import

    Module import - Overview

       | Contents at this point ⤴ | 

    The process of getting your module into your codebase is at times referred to, elsewhere, as 'installing' the module. I use the word 'import' instead of 'install', because the import methods discussed below simply place the module into your codebase. Until you enable the module, it is dormant, and unused by your site.

    The two 'automated' methods are accomplished using your browser in the administrative area of your site, just like any other task you might perform on your Drupal site. The two automated methods can be used for both 'local' and 'online' sites, and are occasionally referred to as using your Drupal site's front-end UI (User Interface).

    The 'automated' methods take care of placing the module where it goes in your codebase, and also takes care of extracting the module's file and folders from the *tar.gz or *.zip file.

    The automated import processes will extract all of the module's files and folders into your codebase at

    [d8-root]/modules/*NEW_MODULE_HERE--A_SINGLE_FOLDER*/*MULTIPLE_MODULE_FILES_AND_FOLDERS_HERE*

    [Themes: [d8-root]/themes/*NEW_THEME_HERE--A_SINGLE_FOLDER*/*MULTIPLE_THEME_FILES_AND_FOLDERS_HERE*]

    'Automated import' is not allowed by some servers

     | Jump over this. ⤵ | 

    I have read that some servers do not allow the two 'automated' methods of importing a module. I do not know any of the details of that sad situation, but I assume it relates only to 'online' sites. If this is the case for you, use the third method, 'Manual module import'.

    I can only guess that if this is a problem for your online site, it is related to the fact that an online site normally uses a directory level somewhere above 'public_html' to temporarily store the *.tag.gz or *.zip file while it extracts the files and folders to your site; And, that your webhost does not allow your account to access that higher level. Contact your webhost provider, and see if the problem can be resolved for you.

    If you need a 'Drupal friendly' webhost without this issue, and which also gives back to the Drupal Association, check out the discounted 'new account rates' from several providers at the drupal.org page Drupal Shared Hosting ~ drupal.org/hosting ⎘.

    Automated module import with URL - Overview

       | Contents at this point ⤴ | 

    With this first automated method, you go to the module's project page at drupal.org, and copy the URL for the version of the module you want to use. You paste that URL into the appropriate box on the appropriate page of your site, and click "Install".

    If your site is online, this process is particularly fast, since it involves two online servers talking to each other, and bi-passes your personal computer. And, my online webhost server also extracts files at least ten times faster than my home computer can.

    Pros: You do not have to download the module, you do not have extract it, and you do not have to worry about putting it where it goes in your codebase.

    Automated module import of local file - Overview

       | Contents at this point ⤴ | 

    With this second automated method, you start with the module in a *.tar.gz or *.zip file on your computer.

    That file will usually be the one that you downloaded from the module's project page.

    The *.tar.gz or *.zip file might also be a *.tar.gz or *.zip file you created yourself after having made custom changes to the module. That is a fairly uncommon thing to have to do, however, and I have never had need to do it myself.

    With the *.tar.gz or *.zip file on your computer, you go to the appropriate page on your Drupal site, you click the button 'Browse', and navigate to the file's location on your computer. Then, click "Install".

    Pros: You do not (usually) have to extract the *tar.gz or *.zip file after downloading it, and you do not have to worry about where the module goes in your Drupal codebase.

    Manual module import - Overview

       | Contents at this point ⤴ | 

    The 'manual' method amounts to your manually put the module where it belongs in your codebase.

    That will either be locally on your computer, or at an online site by uploading it with your webhost Control Panel, or with SFTP.

    Also, you must manually extract the module's files from the *.tar.gz or *.zip file, either before importing it, or after.

    A manual import for a 'local' site running on your computer is not really such a chore, particularly if you are already familiar with using *.tag.gz or *.zip files.

    With a manual import to an 'online' site, it is much faster to upload the module as a single *.tar.gz or *.zip file, as opposed to uploading the multiple files and folders from an extraction of the *.tar.gz or *.zip file.

    If, for an online site, you first upload the *.tar.gz or *.zip file, you can easily extract it using your webhost Control Panel's 'File Manager' in a matter of two or three seconds, by doing this:

    How to extract an online *.tar.gz or *.zip file using your webhost Control Panel

    1. Login to your webhost Control Panel.
    2. Go to "Files" > "File manager".
    3. Navigate to the *.tar.gz or *.zip file.
    4. Click on the file once to highlight it.
    5. Click the page-top button "Extract".

    The import methods work for 'themes' also

     | Contents at this point ⤴ | Jump over this. ⤵ | 

    It is worthy of note that all three of the import methods apply equally to contrib 'themes'.

    The only difference is that the recommended location for contrib themes is different that the recommended modules folder.

    The themes use the 'themes' folder, and the modules use the 'modules' folder. Those two folders are 'siblings' to each other, with 'sibling' meaning that they are together in the same parent folder. They are, in fact, together in the Drupal 8 root-directory (folder) of your site.

    • Modules - [d8-root]/modules/*NEW_MODULE_HERE--A_SINGLE_FOLDER*
    • Themes - [d8-root]/themes/*NEW_THEME_HERE--A_SINGLE_FOLDER*

    For the two 'automated' import methods...

    You can use either the 'Install new module' button near the top of the 'Modules' page, or you can use the 'Install new theme' button near the top of the 'Appearance' page, to import either a module or theme.

    The respective addresses you will see in your browser's address bar are
    [d8-root]/admin/modules/install
    and
    [d8-root]/admin/appearance/install
    but both pages are essentially identical, and will work fine with either modules or themes.

    You will Not, however, see 'Install new module' and 'Install new theme' on the 'Modules' or 'Appearance' page, if the Drupal core module 'Update manager' is not enabled. That is the subject of the next section.

    Enable the Drupal core module 'Update manager'

     | Contents at this point ⤴ | 
     | Jump down to sub-section "Security: Enable 'Update manager' regardless" ⤵ | 
     | Jump down to section "Module import - The steps" ⤵ | 

    Both of the automated import methods require that you have the Drupal core module 'Update manager' enabled. For security reasons, however, you should have it enabled regardless of whether or not you intend to use those import methods.

    Your 'Update manager' might already be enabled, but it will Not be if you disabled it, of course, and it will Not be enabled if during the browser-based installation of your Drupal site, you did not leave the check-mark for the box "Check for updates automatically".

    Check to see if the 'Update manager' is enabled by going to your 'Extend' page.

    At the 'Extend' page, scroll to the bottom of the top section 'Core'. If you see that the box for 'Update manager' is checked, then it is enabled.

    (Of course, the box for 'Update manager' might be checked, and yet it might not actually be enabled if you check-marked the box recently, and you neglected to click the page bottom button "Install", and, you have not yet navigated away from the 'Extend' page.)

    Refresh the 'Extend' page, and check for the check-mark again. If the box for 'Update manager' is not checked, put a check-mark in the box. Scroll to the bottom of the page, and click the button "Install".

    'Install new module' still not showing after enabling 'Update manager'

    After you are sure that you have enabled 'Update manager', it is quite possible that you may not yet be seeing the button/link "Install new module" at the top of the 'Extend' page.

    I have found that for Drupal 8.3-dev, I must also either 'run the update script', or 'clear all caches' to get get the "Install new module" button/link to show up. ('Clear all caches' is easier) The detailed steps to do those two things are below at Broken site problems - Run the update script, and 'Clear all caches' ⤵.

    Note: 'Clear all caches' is easier, quicker, and does work for me, without my having to 'run the update script'.

    Security: Enable 'Update manager' regardless

       | Contents at this point ⤴ | Skip over this ⤵ | 

    Regardless of whether or not you intend to use one of the automated methods for importing your module, you should always have your Drupal core module 'Update manager' enabled.

    It is important that you are notified when Drupal core updates are available that are 'security updates', so that you can IMMEDIATELY update your site.

    Otherwise, you run the extremely rare but possible risk of having your site hacked into after the Drupal security team releases the details of a Drupal site's vulnerabilities, as they do, if needed, on the third Wednesday of the month between 12 noon and 5pm Eastern time. Security release numbers and release timing explained ~ drupal.org ⎘.

    For all the scary details relating to the most infamous occurrence of this, (known officially as 'Drupageddon', without the 'l', but also commonly known as 'Drupalgeddon', with the 'l') do a Google search for Drupalgeddon 2014-10-15 ~ google.com ⎘.

    During the original browser-based creation of your Drupal 8 site, the check-box for 'Update notifications': "Check for updates automatically" may not have been left selected.

    Or, you may have un-installed the 'Update manager', because you do not want to see daily notices in your email about your Drupal site having updates available.

    Set it to weekly, if that is the case, by going to [d8-root]/admin/reports/updates/settings, which you can get to by going to "Manage" > "Reports" > "Available updates" > click the sub-tab "Settings". On the configuration page, select the radio-button for 'weekly', instead of the default option 'daily'.

    For more information about what the core module 'Update manager' can do, see the drupal.org page Update manager (and Update status) ⎘.

    Module import - The steps

       | Contents at this point ⤴ | 

    These are the actual steps for importing a module using the three different methods.

    As recommended above, at this point, you should have the Drupal core module 'Update manager' module enabled, and you should be seeing, "Install new module" at the top of the 'Modules' page. That is, in fact, required for the two 'automated' module import methods discussed below.

    Also, as mentioned above, the first two 'automated' methods for importing a module, in some rare cases, are not permitted by some servers, and so the third method, 'manually' importing your module, will be required instead.

    I have never experienced that 'server' problem, but I can not imagine that the problem relates to a 'local' Drupal installation. I have never had that problem on my $8-USD per month 'Drupal friendly' shared webhost account I found 5-years ago at Drupal Shared Hosting ~ drupal.org/hosting [$3-USD per month for 3-years if pre-paid on new accounts only] ⎘, so I presume that the problem relates only to 'shared' webhosting accounts at sub-standard companies.

    Automated module import with URL - The steps

       | Contents at this point ⤴ | 

    This is the easiest method to use, and is what I do every time I am checking out a new module (or theme). It works for 'local' Drupal sites running on your computer, and for 'online' sites at a webhost.

    This automated import process will extract all of the module's files and folders into your codebase at [d8-root]/modules/*NEW-SINGLE-MODULE-FOLDER-HERE*

    [Themes: [d8-root]/themes/*NEW_THEME_HERE--A_SINGLE_FOLDER*/*MULTIPLE_THEME_FILES_AND_FOLDERS_HERE*]

    This 'automated' method requires you to have the Drupal core module 'Update manager' enabled. Jump up to Enable the Drupal core module 'Update manager'. ⤴

    Go to 'Extend' page.

    Go to your 'Extend' page, and near the page-top, just under the word 'Extend', you should see the button/link "Install new module".

    Drupal 8 website 'Modules' page 'Install new module' button for importing a new module

    If you do not see the button/link "Install new module" at the top of the 'Modules' page, return above to this page's section Enable the Drupal core module 'Update manager' ⤴ and carefully follow all of the steps outlined there.

    Click "Install new module".

    The page you are taken to does not have a title, but the address is [d8-root]/admin/modules/install

    Go to your module's drupal.org project page, and 'Copy' the module's download link

    Return to the project page for the module you want to install, and scroll down to the 'Downloads' section.

    If you need help deciding which version to use, jump up to the section Understand the various module versions available ⤴.

    In the 'Download' column, RIGHT-click the text-link for either the *.tar.gz file, or the *.zip file. (Windows: use *.zip)

    In the drop-down 'context menu' that appears, if you use:

    • FireFox - Click "Copy link location"
    • Chrome - Click "Copy link address"
    • Internet Explorer - Click "Copy shortcut"
    Return to your site

    Drupal Update manager page snippet for installing a module

    Paste the URL, which you have 'copied', into the box for: 'Install from a URL'.

    [Ctrl]+[V] - I prefer to do my 'pasting' by clicking once inside the box, so that the cursor is flashing on the left. Then I hold down one of my two "Ctrl" (Control) keyboard keys, and then I press the key "V". (The MAC 'Command' key = my Windows 'Ctrl' key)

    Click the button/link "Install".

    This automated import process will extract all of the module's files and folders into your codebase at [d8-root]/modules/*NEW-SINGLE-MODULE-FOLDER-HERE*

    [Themes: [d8-root]/themes/*NEW-SINGLE-THEME-FOLDER-HERE*]

    If your site asks for your FTP username and password

     | Jump over this. ⤵ | 

       {{COMMENT: I am not sure how any of the two following paragraphs might apply, because it was posted by someone else. I will say that FTP, per se, is Not secure, and that instead you should figure out how to use SFTP (Secure File Transfer Protocol.}}

    If your site asks for your FTP username and password, it is referring to the username and password that you use to access your online webhosting account. If you have multiple sets of login credentials, use the set that you use to access your 'Control panel', as opposed to the set for your account finances.

    A note about FTP: If FTP is not enabled for your server, you may receive an error message. Drupal will not be able to diagnose the problem, and will only tell you that there is one. It's up to you to determine whether your server is properly configured for FTP.

    "Installation was completed successfully."

    On the next page that loads, you will see "Installation was completed successfully."

    Click the link "Enable newly added modules" to return to the Drupal 8 'Extend' page.

    [Themes: Click the link "Enable newly added themes", and you will be taken to your site's 'Appearance' page]

    Not that I am recommending it, but if you want your module moved from its current location at [d8-root]/modules/*NEW-SINGLE-MODULE-FOLDER-HERE* into a sub-folder, as for example into

    [d8-root]/modules/contrib/*NEW-SINGLE-MODULE-FOLDER-HERE*

    now is the ideal time to do it, before you start using it, as was discussed above at Using sub-folders of the 'modules' folder ⤴.

    Although I recommend that you read the next two sections that describe the other two methods for importing a module into your site, you can jump over them and continue at the section Enabling modules ⤵.

    Automated module import of local file - The steps

       | Contents at this point ⤴ | 

    This method is used to automatically import a module into a local or online site from a *.tar.gz or *.zip file on your computer.

    This 'automated' method requires you to have the Drupal core module 'Update manager' enabled. Jump up to Enable the Drupal core module 'Update manager'. ⤴

    This automated import processes will extract all of the module's files and folders into your codebase at
    [d8-root]/modules/*NEW_MODULE_HERE--A_SINGLE_FOLDER*/*MULTIPLE_MODULE_FILES_AND_FOLDERS_HERE*

    [Themes: [d8-root]/themes/*NEW_THEME_HERE--A_SINGLE_FOLDER*/*MULTIPLE_THEME_FILES_AND_FOLDERS_HERE*]

    Go to the 'Extend' page.

    Go to your 'Extend' page, and near the page-top, just under the title 'Extend', you should see the button/link "Install new module".

    [As mentioned above, the 'Install new modules' button/link works just fine for themes as well.]

    Drupal 8 website 'Modules' page 'Install new module' button for importing a new module

    If you do not see the "Install new module" button/link, carefully follow all of the instructions above at Enable 'Update manager' ⤴

    Click "Install new module"

    The page you are taken to does not have a title, but the address is [d8-root]/admin/modules/install

    Download module from project page

    Return to the drupal.org project page for the module you want to install.

    Scroll down to the 'Downloads' section.

    In the 'Download' column, find the version you want to download. If you need help deciding which version to use, jump up to the section Understand the various module versions available ⤴.

    Click the text-link for either the *.tar.gz file, or the *.zip file (Windows: use *.zip)

    Typically, that will start the download of the file.

    If you need help controlling exactly where downloads are saved onto your computer, see this section on a different drupal.org page: Know your browser's file-download location; or change browser's download location. ~ drupal.org/1248034#dl_location ⎘.

    Return to your site page 'Extend'

    Drupal Update manager page snippet for installing a module

    Under the heading 'Upload a module or theme archive to install', click the button "Browse".

    Navigate on your computer to the location of the *.tar.gz or *.zip module file you downloaded.

    Click the button/link "Install".

    This automated import process will extract all of the files and folders from the archived/compressed *.tar.gz or *.zip file into your codebase at [d8-root]/modules/*NEW-SINGLE-MODULE-FOLDER-HERE*

    [Themes: [d8-root]/themes/*NEW-SINGLE-THEME-FOLDER-HERE*]

    If your site asks for your FTP username and password

     | Jump over this. ⤵ | 

       {{COMMENT: I am not sure how any of the two following paragraphs might apply, because it was posted by someone else. I will say that FTP, per se, is Not secure, and that instead you should figure out how to use SFTP (Secure File Transfer Protocol.}}

    If your site asks for your FTP username and password, it is referring to the username and password that you use to access your online webhosting account. If you have multiple sets of login credentials, use the set that you use to access your 'Control panel', as opposed to the set for your account finances.

    A note about FTP: If FTP is not enabled for your server, you may receive an error message. Drupal will not be able to diagnose the problem, and will only tell you that there is one. It's up to you to determine whether your server is properly configured for FTP.

    "Installation was completed successfully."

    On the next page that loads, you will see "Installation was completed successfully."

    Click the link "Enable newly added modules" to return to the Drupal 7 'Modules' page.

    [Themes: Click the link "Enable newly added themes", and you will be taken to your site's 'Appearance' page.]

    Not that I am recommending it, but if you want your module moved from its current location at...

    [d7-root]/sites/all/modules/*NEW-SINGLE-MODULE-FOLDER-HERE*

    ...into a sub-folder of the 'modules', as for example, into a sub-folder named 'contrib', at...

    [d8-root]/modules/contrib/*NEW-SINGLE-MODULE-FOLDER-HERE*

    ...then now is the ideal time to do it, before you start using it, as was discussed above at Using sub-folders of the 'modules' folder ⤴.

    Although I recommend that you read the next section that describes the third method for importing a module into your site, you can jump over it and continue at the section Enabling modules ⤵.

    Manual module import - The steps

       | Contents at this point ⤴ | 

    With this method of importing a module, you manually put the module where it belongs into your 'local' or 'online' codebase. You will also have to extract the module's files and folders from the module's *.tar.gz or *.zip file either before or after the move to the codebase.

    Download module from project page

    Return to the project page for the module you want to install.

    Scroll down to the 'Downloads' section.

    In the 'Download' column, find the version you want to download. If you need help deciding which version to use, jump up to the section Understand the various module versions available ⤴.

    Click the text-link for either the *.tar.gz file, or the *.zip file (Windows: use *.zip)

    Typically, that will start the download of the file.

    If you need help controlling exactly where downloads are saved onto your computer, see this section on a different drupal.org page: Know your browser's file-download location; or change browser's download location. ~ drupal.org/1248034#dl_location ⎘.

    Local

    If your site is running locally on your computer, paste the downloaded file at [d8-root]/modules/*HERE*.

    Note: For more information on working with *.tar.gz and *.zip files, including where to get free programs to create them on Linux, MAC, and Windows, see the drupal.org page mentioned above at its heading: *.tar.gz versus *.zip ⎘

    Local

    If your site is running locally on your computer, paste the downloaded file at [d8-root]/modules/*HERE*.

    [Themes: [d8-root]/themes/*HERE*]

    Extract the file's contents into that folder by doing the following.

    For Windows, to extract the contents of the *tar.gz or *.zip file, RIGHT-click on the file, and in the drop-down context menu, click "Extract here" to use the built-in Windows extractor. Or better yet, use a program like 7-zip ~ 7-zip.org ⎘.

    On modern Mac systems, double-click the .tar.gz file.

    Check the structure of the folders after a manual extraction to make sure that the module's folders are in the proper place, and are structured properly. This will be discussed in more detail in the next section Check file/folder structure after manual extraction ⤵

    You can now delete the *.tar.gz or *.zip file if you like.

    Online

    If your site is 'online', upload the file using your webhost Control Panel, or use SFTP (secure file transfer protocol). I highly recommend against using FTP because it is not secure.

    Put the *.tar.gz or *.zip file at [d8-root]/modules/*HERE*.

    [Themes: [d8-root]/themes/*HERE*]

    You can then extract the *.tar.gz or *.zip file using your webhost Control Panel 'File Manager'. Navigate to the file, highlight it, and then click the page-top button "Extract".

    Or, to extract it after it is online, your SFTP program might have a feature for accomplishing that task.

    You can now delete the *.tar.gz or *.zip file from your website, if you like.

    Check file/folder structure after manual extraction

     | Contents at this point ⤴ | Jump over this. ⤵ | 

    You should examine the files and folders structure of your module after you perform a manual extraction to make sure that everything is in its proper place.

    This is not something you have to do after using one of the two automated import processes, but is something you should do after you manually extract a *.tar.gz or *.zip file on your computer, or online.

    The problem lies in the possibility of the module's parent folder being created twice: Once as a parent folder, and again as a child of that parent, with both folders having the same name.

    The possibility of that problem is not limited to, but is common when, for example, you are dealing with *.tar.gz files on a Windows computer.

    Using, for example, the module 'Token', what you do Not want to have is a parent and its child both named 'token', like this:

    [d8-root]/modules/token/token/*MULTIPLE_MODULE_FILES_AND_FOLDERS_HERE*

    If you see that situation, eliminate one of the two identically named module folders by moving all of the *MULTIPLE_MODULE_FILES_AND_FOLDERS* up one level, so that you get this (again, using the 'token' module as an example):

    [d8-root]/modules/token/*MULTIPLE_MODULE_FILES_AND_FOLDERS_HERE*

    [Themes: Similarly, using the theme 'Bootstrap' as an example, you do Not want to have multiple 'bootstrap' folders inside of each other, and so if you see the following, it is a problem: [d8-root]/themes/bootstrap/bootstrap/*MULTIPLE_THEME_FILES_AND_FOLDERS_HERE*]

  10. Enabling modules

       | Contents at this point ⤴ | 

    After a module has been imported, it is only taking up space. It is not actively using any of your sites resources except storage space. Only after you enable it does it become active, and if you disable it, it again returns to a dormant state, just taking up space, but no longer affecting your site.

    To enable your new module, go to your site's 'Extend' page.

    [Themes: To enable your newly added theme, you will need to go to your 'Appearance' page. See above at

     | 'Appearance' page overview ⤴

    'Appearance' page overview ⎘  for an overview of your site's Appearance page, including information on the possibility of using two different themes on your site at the same time-- one theme for the site in general, and another theme for 'admin' pages only. Please note also that the official, though currently incomplete, page for installing D8 themes is Installing themes ⎘  (This link opens in a new tab/window.) The following two sections on this page relate to 'enabling' and 'configuring' modules, both 'core' and 'contrib' modules, including module 'permissions' information. If that does not seem to interest you, you might, never-the-less, before leaving this page, be interested in the information below: Broken site problems - Run the update script, and 'Clear all caches' ⤵, or Module documentation and help ⤵, which apply equally to D7 and D8 for fixing site problems, and for researching anything Drupal related.]

    Module enabling: In a hurry? If you put a check-mark in the box for a module on the 'Extend' page, and scroll to the page bottom and click the button "Install", you will enable that module.

    'Extend' page overview (part 1)

       | Contents at this point ⤴ | 

    On the 'Extend' page, every module that exists in your codebase had a row of its own in the tabular list.

    The top of the table does not have names for the columns.

    Check-box column

    The first column on the left is for check-boxes.

    When the check-box is not checked, it means the module is not enabled. If you were to check it, and scroll to the bottom of the page, and click the button "Install", that would 'enable' that module.

    When the check-box is checked, it means that the module is enabled, and therefore 'working' on your site.

    Name column

    To the right of the check-boxes is the module's 'human readable' name.

    Description column (part 1)

    The third column is for 'descriptions'.

    If you 'are' seeing descriptions to the right of each module name, then you can skip over the next section, which is the 'fix' for those who do not see them.

    The following 'fix' section does include an overview of the 'Appearance' page for themes, however, in case you are interested.

     | Skip the 'Fix', & jump down to 'Extend' page overview (continued [part 2]) ⤵. | 

    Fix: Show hidden module descriptions on 'Extend' page

       | Contents at this point ⤴ | Jump over "Fix:..." to "'Extend' page overview (continued [part 2])". ⤵ | 

    If you are not seeing the column with the module descriptions to the right of the column with the module names, but rather, you are only seeing the column of check-boxes and module names to the right, then your browser window is too narrow for whichever 'responsive' theme you are currently using for the administration pages of your site.

    In other words, your responsive 'Administration theme' is hiding the descriptions because your browser is too narrow to display them within the browse window.

    To correct this situation, start by closing the vertical left-hand administration menu, if you have it open, by clicking the admin-menu item "Manage".

    If you are still not seeing the description for each module to the right of its name, then do the following, notably the third item, set your admin theme to 'Stark'.

    Use a larger browser window

    Make your browser window larger. If that does not work, or, if that is not possible because, for example, you are on a mobile device...

    Use smaller font

    Try making the font as small as you can, and yet still usable.

    Core theme Stark for 'Administration theme'

       | Contents at this point ⤴ | 

    If the descriptions still do not show up, you can go the the themes' 'Appearance' page, and set the theme 'Stark' as your 'Administration theme'.

    The table on the 'Extend' page will no longer be 'responsive', but rather, it's rows will extend off the sides of your screen.

    You will have to scroll left-to-right, side-to-side, but at lest you should be able to see the module descriptions for a change.

    'Appearance' page overview

     | Contents at this point ⤴ | Skip "'Appearance' page overview", and jump to "Install Stark and set as 'Administration theme'" ⤵ | 

    The 'Stark' theme comes with Drupal core, and will reveal the 'descriptions' column, though you will have to scroll horizontally (left - right) to view those descriptions.

    Go to the 'Appearance' page, and find the theme 'Stark'.

    It will quite possibly be in the section 'Uninstalled theme'. That section is closer to the bottom of the page, under the section 'Installed themes'. By default, Stark is not enabled upon the creation of a Drupal 8 site.

    'Install' versus 'Install and set as default'

    The administrative (admin) pages of your site, by default, use a different theme than your non-admin pages.

    'Bartik' is the default theme for non-admin pages, but whichever theme you see at the top of the 'Appearance' page is the theme that is currently being used for your non-admin pages.

    'Seven' is the default theme for admin pages, but you want to set Stark as the admin theme so that is is used on the admin page 'Extend'.

    Before you can set Stark as your admin theme, it has to be enabled ('Install'-ed).

    Under the image and name for 'Stark 8...', you will see the text-links 'Install', and 'Install and set as default' (or, possibly, those links could be on the right).

    If you were to click 'Install and set as default' for Stark, that would enable it, but that would also set Stark as the theme for your non-admin pages, and that is something that you may not want to have happen. Additionally, clicking 'Install and set as default' does Not immediately set Stark as the admin theme, so, I recommend "Install".

    If you click 'Install' for Stark, it will become enabled, and after that you can set it as your admin theme, instead of using 'Seven', or whichever theme you are currently using that is not allowing you to see the descriptions on the 'Extend' page.

    Install Stark and set as 'Administration theme'

       | Contents at this point ⤴ | 

    So, click 'Install' for Stark (unless you want to check out Stark as the theme for non-admin pages, in which case, click 'Install and set as default'.)

    After the 'Appearance' page reloads, scroll down to the very bottom of the page, to the section 'ADMINISTRATION THEME'.

    Tip: By clicking on "ADMINISTRATION THEME", repeatedly, you will toggle what is known as the 'accordion' feature for this item. Specifically, that section will toggle between being 'expanded' and being 'collapsed'.

    Under the sub-heading 'Administration theme', click the downward pointing arrow on the right, to display the list of enabled themes.

    Note aside: The list item 'Default theme' means that the admin theme to be used should simply be whatever theme is currently being used as the 'Default theme' for the non-admin pages. So, whatever theme is currently at the top of the Appearance page will be used as the admin theme as well. And if you change the default theme for the non-admin pages at the top of the appearance page, then that 'front-end' non-admin theme will be used as the administration theme also, from that point forward.

    In the drop-down menu for the 'Administration theme', click on 'Stark', so that it displays in the textarea box.

    Click the page-bottom button "Save configuration".

    Return to the your 'Extend' page.

    'Extend' page overview (continued)

       | Contents at this point ⤴ | 

    On the 'Extend' page, to the right of each module name is the first line of that module's description.

    'Accordion' toggle: By clicking on that first line of the description, repeatedly, you will toggle what is known as the 'accordion' feature for the module descriptions. Specifically, the descriptions will toggle between being 'expanded' and being 'collapsed'.

    Click the top line of the 'description' in the row for the module you installed, to fully expand the description.

    Machine name: The item 'Machine name' will be the same as the name of the parent folder of your module if you are looking at the 'main' module for the module you installed. If the 'Machine name' does not match the folder name of your module, then you are looking a module that is not the main module, but rather, is possibly one of the other modules of a set of multiple modules that came as a set when you installed your module.

    Requires: If this item exists, it will list all of the modules that your module depends on.

    Those other listed modules will need to exist on your site, and be enabled for your module to work.

    Following each module in that listing, you will see either see nothing, or you will see '(disabled)', or '(missing)'.

    'Nothing' is good. That means that the module that your module requires, is already on your site and enabled.

    '(disabled)' means the other module is on your site, but it is not enabled. You do not have to bother with enabling any '(disabled)' module, because when you try to enable your module, you will be prompted to let the Drupal system enable the '(disabled)' module for you.

    '(missing)' means that the other module is not on your site (assuming it is a 'module' that is missing, and not something else, like a 'library'), and you will have to go that module's project page at Drupal to get it.

    One quick way to get to its drupal.org project page is to copy the name as it is listed following 'Requires', and past that name at the end of the URL:

    https://www.drupal.org/project/

    For example, I have the module 'Paragraphs' as my chosen new module, and its description displays:

    Requires: Entity_reference_revisions (missing)

    So, into my browser address-bar, I put:

    https://www.drupal.org/project/Entity_reference_revisions (...Do not worry about the 'e' being an upper-case 'E')

    ...and I press the keyboard key [Return/Enter].

    Later, after I have entity_reference_revisions installed, the description for Paragraphs displays...

    Requires: Entity Reference Revisions (disabled)

    ...which is a nice change, referring to the name change from 'entity_reference_revisions' to 'Entity Reference Revisions', since 'Entity Reference Revisions' is how that module is listed on the 'Extend' page, and so now I know what specifically to look for in the name column to find 'that' new module.

    Missing libraries and other possible non-module requirements of a module

    At times, a module will be dependent on something besides another module that is missing from your site, as for an example, a library.

       | Skip over this ⤵ | 

    {{COMMENT: I have too little experience, too long ago, and none of it successful, to be able to give relevant details here. And, unfortunately, individuals with that knowledge are likely sufficiently advanced Drupal users such that they will never be at this page and see this comment. It a 'Catch-22'. Therefore, my friend, if in the future, you, in your merry Drupal travels, discover those relevant details, and you think back to having been here, if you would be so kind as to return here, and post your knowledge, you will be serving an untold number of other new Drupal users, who will be, as you now are: in the dark. Additionally, I would be forever in your debt. (The value my gratitude can easily and legitimately be argued to be in range of, lets say, for you math Majors, the number that as a denominator renders a fraction beyond any description.) PS: Please delete this comment after you have added relevant details. Thanking you in advance. PSS: For you non-math Majors, a fraction with zero as the denominator is classified as being 'undefined'. ¿Estabe, mi amigo (amiga)? Broma.}}

    'Required by:' The item 'Required by', when it exists in a module's description is most helpful if, and when, you are considering uninstalling that module, because you can see which other modules, if any, that uninstalling it will affect.

    The 'Required by:' modules that are listed (if any) will be followed by either nothing, or by '(disabled)'. '(disabled)' means it exits on your site, but it is not enabled; whereas if '(disabled)' is not displayed, then that module is both 'on your site' and 'enabled'.

    Multiple modules packaged in one project

    Please Note that it is not unusual for a contrib module to actually be a of set more than one module. Yet, even if a single contrib module project comes with multiple modules, all of the modules from a single download will be found together in a single section on the 'Extend' page.

    If your module came as a set of more than one module, one of them is the main module, and, usually, the other module(s) will be dependent upon the main module to work.

    You will usually want to enable the main module, but you may or may not want to enable the other modules (if any) that came with it.

    The description to the right of the module name (in the tabular list on the 'Extend' page) should give you a good idea of which module is the main one.

    And, as explained earlier, the description will tell you which other modules it is dependent on, if any, and whether or not they already exist on your site, and whether or not they are enabled.

    Do not worry though, because if the module you try to install has another module that it depends upon, and which is either not on your site, or is not enabled, you will get a helpful notice to that effect. If the other module is on your site but not enabled, the notice you will get will also be giving you the option to continue by allowing it to enable that other module for you.

    If, on the other hand, the module you are trying to install is dependent upon another module that is not already on your site, you will have to return to drupal.org, and get that other module from its project page.

    Also, a module might be dependent on something other than another module, as for example, upon a 'library' that needs to be found and downloaded. In that case also, when you try to enable the module, you should get a notice telling you what you are lacking.

    The description for a specific module will also usually list which, if any, of the other modules you have on your site, both enabled and not enabled, that are dependent upon that module.

    If it should happen to be that the module is designed strictly for development purposes, and that it should not be used on a 'live' site for security reasons, or, as another example, because it dramatically slows down the responsiveness of your site, that information would, at a minimum, have been explained on the module's project page, and might also be in the description on the 'Modules' page.

    At the very bottom of the description, the often seen (, but not always,) links 'Help', 'Permissions', and 'Configure' will be displayed if they are available for your module.

    Those items will be discussed individually in the next section, "Configuring modules", after you are done enabling your new module.

    Enable your new module

       | Contents at this point ⤴ | 

    Find your new module on the 'Modules' page

    Your new module will never be in the top section 'Core', which is reserved for Drupal 8 modules. Not all of the modules that originally came with Drupal 8 core are in that top section, but the majority are.

    Your module could be in any one of the following sections, but, as to which one, that is dependent on how the module's developer(s) wanted to categorize it.

    Scroll down the page until you find the module you installed.

    Put a check-mark in the left-hand box for any of the modules that you want to enable.

    Click the page-bottom button "Install".

    "Some required modules must be enabled"

    If you happen to be installing a module which 'requires' another module (or several) that are already on your site, but are not enabled, you will get this notice:

    
    
    ____________________________ Some required modules must be enabled You must enable the *REQUIRED-MODULE-NAME-HERE* module to install *YOUR-MODULE-NAME-HERE*. Would you like to continue with the above? ____________________________ 

    That will be followed be a button "Continue", and a text-link "Cancel".

    Click the button "Continue".

    When the 'Extend' page reloads, and displays at the top, "The configuration options have been saved", then you know you have successfully enabled your new module.

    If you would like to double-check that the module is installed, scroll down the module list, and make your new module has a check-mark in its box.

    Broken site problems - Run the update script, and 'Clear all caches'

       | Contents at this point ⤴ | Jump over "Broken site problems..." down to "Configuring modules" ⤵

    When my site is acting strangely, or displays bizarre errors, or displays a blank page, particularly after I have just enabled a module, the first thing I do is refresh the page I am on.

    After that, I have quite often found that 'running the update script', followed up with 'clearing all caches', solves the majority of any problems.

    Of the two, 'Clear all caches' is an easier, and quicker 'fix' to try, and is at times effective, but the steps below will start with 'running the update script', because that is the most thorough of the two, and is the first thing I do anytime my site is giving me trouble.

    I will generally always follow up my running of the update script with clearing all caches, out of habit, since my Drupal 7 site's module 'DHTML-Menu' required me do do so every time I ran the update script.

    So, the following two steps seem to me to be the most logical things to do first when addressing any site problems, and you should feel free to run the update script, or clear all caches, anytime you want.

    • # Run the update script for your Drupal 8 site

      Add a single forward-slash character, and 'update.php' behind your website address in your browser.

      Eg. http://sample-site/update.php

      Press your keyboard-key [Return/Enter].

      At the page 'Drupal database update', click the button "Continue".

      The next page should report, 'No pending updates.' Click the link "Administration pages".

      If, by any chance, that page does not display 'No pending updates', but rather indicates that updates are pending, then apply the pending updates. That would, by the way, be an indication that you should have run the update script at some earlier point in time, as for example, after having updated a module, or perhaps, after updating Drupal core.

    • Clear all caches

      Go to your site page: "Administration" > "Configuration" > 'Development': "Performance"

      [d8-root]/admin/config/development/performance

      Click the button "Clear all caches".

    • Run Cron

      Go to the page 'Reports' > 'Status Reports' and click 'Run cron' near the top of the page.

    • rebuild.php

      Try running "rebuild.php" in the same manner that you ran the update script with "update.php" above.

    Lastly, I try a search at Google.com. If I had error reports associated with the problem, I load the first portion of the error message into the search box.

  11. Configuring modules

       | Contents at this point ⤴ | 

    Go to the 'Extend' page if you are not already there.

    On the 'Extend' page, each table row is for one module, and begins on the left with a check-box, followed immediately to the right by the Module's name.

    To the right of the module name is a third column with the module's description.

    If you see the descriptions, jump down to 'Accordion' toggle for the descriptions ⤵

    If you are not seeing descriptions

    If you are not seeing a description for each module to the right of its name, then your 'responsive' administration theme is hiding the descriptions.

    The details of this problem, and the details of its solution were discussed above starting at Fix: Show hidden module descriptions on 'Extend' page ⤴, but the following brief outline is a summary of those steps for resolving that situation.

    Quick fix outline for hidden descriptions on the 'Extend' page

    Close the left-hand vertical administrative menu if it is open.

    If you are still not seeing the descriptions, then you need to do one of the three following things that were discussed in greater detail above in the section Fix: Show hidden module descriptions on 'Extend' page ⤴.

    • Larger browser window

      Make your browser window larger. If that does not work, or if it is not possible because, for example, you are on a mobile device...

    • Smaller font

      Try making the font as small as you can, but still usable. If the descriptions still do not show up,...

    • Set 'Stark' as the 'Administration theme'

      The 'Stark' theme comes with Drupal core, and will reveal the 'descriptions' column, though you will have to scroll horizontally (left - right).

      Go to the 'Appearance' page, and click "Install" for the theme 'Stark' (Not "Install and set default")

      After the 'Appearance' page reloads, go to the bottom of the 'Appearance' page, set Stark as the 'Administration theme', and click "Save configuration".

      Return to the 'Extend' page.

    'Accordion' toggle for the descriptions

    On the 'Extend' page, at the table row for you new module, click the top line of its 'description' to fully expand the accordion toggle feature for its description.

    At the bottom of the description, the links 'Help', 'Permissions', and 'Configure' will be displayed for your module when they are available.

    Those links, however, will only be displayed after a module has been enabled.

    Save time by not having to go hunting.

    I consider the 'Extend' page to be the best place to establish whether or not a module has 'permissions' options, or 'configure' options, associated with it. And, conveniently, those are direct links to those options when applicable.

    It is true that a configuration page for a module will be accessible from your site's 'Configuration' page, but you need to know ahead of time whether or not a configuration page for a module even exists, and then you need to know under what heading it is located on the 'Configuration' page.

    Instead, I find the module on the 'Extend' page, and check to see whether or not it has a 'Configure' link, which takes me directly to the configuration page.

    It is also true that you can go to the 'Permissions' page via the Admin-menu item 'People' > "Permissions" to set permissions for a module, but it would be very helpful to know ahead of time whether or not permissions for a module even exist, and if so, it would also be helpful to know exactly under what heading name they are classified on the 'Permissions' page.

    Instead, I find the module on the 'Extend' page, and check to see whether or not it even has a 'Permissions' link, which takes me to the right spot on the 'Permissions' page.

    Module 'Help' link

       | Contents at this point ⤴ | 

    The amount of readily available help documentation provided by the developers of a module varies between modules, both in terms of existence, depth of detail, and in its level of usefulness to new users.

    Module documentation will be discussed in more detail below in the section "Module documentation and help", but for now, the 'Help' button found on the 'Extend' page will be briefly discussed in terms of its usefulness for module configuration.

    On the 'Extend' page of your site, if for a particular module you see a "Help" link, click on it and see what you get.

    The page that opens is being generated by your site, using information contained within your imported module folder.

    I recommend that you at least scan the help page to get an idea of what it contains.

    That page might contain details that will be relevant for you when you next use either the 'Permissions' or 'Configure' buttons for your module (if applicable).

    Other module documentation and help options will be discussed below in the section Module documentation and help ⤵.

    When you are done exploring the 'Help' page, return to the 'Extend' page.

    Module 'Permissions' link

       | Contents at this point ⤴ | 

    Not all modules have 'permissions' associated with them, but if a module does, you should be seeing a 'Permissions' link for the module to the right of its description on the 'Extend' page.

    Whenever a module is first enabled on your site, the 'Administrator' role is automatically granted full permissions for that module.

    Yet, some modules will require that you set permissions for the 'Anonymous user' and 'Authenticated user' roles to get a module to work for those roles in the manner that you want it to.

    Permissions information for your new contrib module might have been at the 'Help' link discussed just above, or it might be in 'README.txt' or 'INSTALL.txt' files at the top level of the module folder as will be discussed below in the section Module documentation and help  ⤵.

    Permissions overview

       | Contents at this point ⤴ | Jump over "Permissions overview" to "Your module's permissions" ⤵ | 

    If you have never been to the 'Permissions' page before, it would be helpful for you to have an idea of what it looks like as you read further.

    To get to the 'Permissions' page, you can click on any one of the 'Permissions' links on the 'Extend' page; or, in your page-top admin menu, click "People", and at the "People" page, click the page-top tab (or link) labeled "Permissions".

    By default, your Drupal site creates three permission levels, one for each type of basic site user: 'Anonymous user', 'Authenticated user', and 'Administrator'.

    The 'Administrator' role user accounts

    As you might guess, you are an 'Administrator', and as such, your account is granted the highest level of permissions allowed on your site: permission to do anything and everything.

    The 'Administrator' role will always have all of the permissions granted to it, and it is not possible remove a permission from the 'Administrator' role. (That is something different from Drupal 7.)

    The 'Authenticated user' role user accounts

    'Authenticated user' accounts are accounts that are created, for example, by complete strangers, who come to your site, and register for an account.

    When authenticated users are 'logged in' to their accounts, your site classifies them as having a role of 'Authenticated user', and they will be granted permission to do the things, but only the things, that you have set permissions for an 'Authenticated user' to do.

    By default, the 'Authenticated user' role has relatively few permissions granted to it, but by default an 'Authenticated user' can post comments, and use shortcuts.

    The 'Anonymous user' role user accounts

    An 'Anonymous user', however, can do little more, by default, than view site content, and use the site-wide contact form.

    You are in control

    You can change the various permissions for each role as you like.

    You can also create any number of additional new accounts, and specify each account as being either an 'Authenticated user' account, or an 'Administrator' account. You give each account a minimum of a username and password, though you might also assign an email address as well.

    Additional user roles

    In addition to the three user roles that come with Drupal core, you can create any number of additional user roles if, for example, you want individuals that you trust to be able to administer certain things, but you do not want them to have permission to administer everything on your site.

    To create another user role, at the top of the 'Permissions' page, click the tab 'Roles', and near the bottom of that page, click the button 'Add role'.

    Your module's permissions

       | Contents at this point ⤴ | 

    If on the 'Extend' page, you have a 'Permissions' link for your module, click that.

    The 'Permissions' page for your module is at [d8-root]/admin/people/permissions

    Whenever you click on one of the 'Permissions' links on the 'Extend' page, you will be taken to the 'Permissions' page at a point on the page with the first of the relevant permission(s) at the top of the window (There may be more than one permission associated with the module).

    You might have to scroll up a line, bringing the window down a hair, because the permission you want might be hidden just under the admin-menu at the page's top.

    Be aware, however, that if the 'Permissions' page should happen to present itself as being scrolled all the way down, then the permission you seek will probably not be at the top of your viewing window. In other words, since the page is down as far as it can go, and your specific permission is too near the bottom of the list, your permission, therefore, will not be at the top of the viewing window, but rather, somewhere in the middle of it.

    The 'Administrator' column check-boxes (furthest to the right) will always be checked, and you can Not de-select them.

    Whether or not you allow 'Anonymous' and/or 'Authenticated' users to have a particular permission is up to you.

    If it is not clear to you what each permission is intended to control, and what the full implications might be behind allowing a permission for either 'Anonymous user' and/or 'Authenticated user', then please consult the 'Help' link for the module on the 'Extend' page (if the 'Help' link exists). Or, consult the 'README.txt' or 'INSTALL.txt' files at the top level of the module folder, as will be discussed below, along with additional help options, in the section Module documentation and help ⤵.

    Module permissions security warning

       | Contents at this point ⤴ | Jump over Warning ⤵ | 

    Any permission that displays the following words, should only give given to individuals that you trust 100%.

    Warning: Give to trusted roles only; this permission has security implications. 

    And, importantly, even though a permission does not have the full warning quoted above, if it uses the word 'Administer' in its first-column description, then that item might also be a huge security risk, and should be given only to individuals you completely trust.

    For example, the 'Taxonomy' permission reads, "Administer vocabularies", but it does not display the full warning above.

    And yet, if you give someone permission to administer taxonomies, you will be giving them access to editing fields, which puts your site in jeopardy.

    In conclusion, when a 'Permission' uses the word "Administer", only give it to those individuals who you completely trust.

    Return to the 'Extend' page when you are done making changes on the 'Permissions' page.

    Module 'Configure' link

       | Contents at this point ⤴ | 

    On the 'Extend' page, if the link 'Configure' is available for your new module, click that.

    If the link 'Configure' does not exist, then your module has no configurable options.

    If it is not clear to you what each configuration option is intended to control, and what the full implications are behind each option, then please consult the 'Help' link for that module on the 'Extend' page (if the 'Help' link exists). Or, consult the 'README.txt' file at the top level folder of a contrib module, as will be discussed below, along with additional help options, in the section Module documentation and help ⤵.

  12. Module documentation and help

       | Contents at this point ⤴ | 

    Some modules do not actually need you to do anything, and they just do what they do behind the scenes. Those modules, however, probably have no configurable options, or that serve only as those upon which other modules are dependent upon.

    More commonly, a module you are concerned about is something that you can adjust permissions and options for. Some projects are easy to use, which is to say, their use is 'intuitive', and it will be relatively clear to you what you can adjust, and what you need to do to accomplish whatever it is that you may want to do.

    If you want to know all of the relevant details that you need to intelligently use the module you just installed, then, offhand, I can think of several things you may need to do, or places to look.

    The following suggestions are ordered roughly by ease-of-use.

    Unfortunately for beginning end-users like us, Drupal is in constant development, and while we are lucky to be able to freely benefit from all of the great work by the developers, their time is limited, and I think it is safe to say that the best of the developers are not inclined to be the most diligent of documentation creators for the benefit of newbies, which is what we are, else you and I would not be here now.

    I would encourage you to document and post your trials and tribulations as you are learning to use Drupal, for the benefit of the thousands of individuals who will in your shoes in the coming day, months, and years.

    I accept it as the ultimate challenge to create this documentation, in-spite of (or because of) the seemingly endless irritations, frustrations, and aggravations-- of using the new documentation section at Drupal-- and to a lesser extent, the undo challenges of learning and using Drupal, which could have been eliminated if adequate newbie 'How-to's had previously been created by others like you and I-- but especially, I am happy in my assumption that you, my friend, will benefit from this.

    You, like me, do not have to know anything about 'development' or programming to share what you 'do' know, and are learning.

    • Trial and error

         | Contents at this point ⤴ | 

      You can just jump right in and start using the module, or start playing with its configuration options.

      Or in cases where after research on your part you can not figure out what an option does, or what all of the potential implications of using an option might be, you should feel free to just try anything that your adventurous soul thinks best

      Whenever you reach a point in time that a module requires guesswork on your part, you really do not have to worry about trying out any option available to you, because your site is backed up, and you can always revert to a former version of your site. You site is backed up, right?

      Given that it may not be immediately apparent to you what all of the affects a module or a particular option for that module will have across your site, it is for that reason that I recommend that you only try out one module at a time, and that you navigate to every corner of you site, and try using your site in every way that you can conceive of-- creating new pages, and trying different configuration options-- before you move on to adding another contrib module.

      Otherwise, if you enable more that one new module, and you then encounter problems or situations that seem weird to you, you will not know which of the new modules is responsible for that which is troubling you.

    • Project page content

         | Contents at this point ⤴ | 

      Each module 'project page' is its home-page at drupal.org. The project page is where I usually go first both when I am considering whether or not to try out a module, or when I encounter problems, or have questions about a module I have just enabled.

      If you carefully read the project page in its entirety, you can be relatively certain that you have all of the most important information you need. For example, when considering whether to try out a module, if any other modules are required for the module to work, those other modules will be listed somewhere on the project page.

      The project page might also include other helpful links of interest for a variety of things relating to that module.

      The project page content might be intended for new Drupal users, or might be geared toward more advanced users/developers.

    • Project page 'Read documentation' link (when existing)

         | Contents at this point ⤴ | 

      In the right-hand column, (a column that drops to the page-bottom on mobile devices, or inside other narrow browser windows) you will always find the heading 'Resources', under which you may, or may not find a link 'Read documentation'.

      Not all project pages have a 'Read documentation' link, however, and in that case, hopefully you will have found helpful documentation links in the project page's main content area.

      When the 'Read documentation' link does exist, it will be to what the developer(s) consider to be the single most relevant resource for you to use to begin your quest for more information.

      The contents of each project page is determined by, and under the control of, that project's initial creator, and possibly a few other individuals to whom the initial creator has given such permission.

      Other drupal.org members without access to changing the project page, will, never-the-less, have very often created other d.o pages with great information about the module you want to know about. Unfortunately, however, those other pages will only very rarely have links to them on the project page

      Finding those pages which are not linked-to on the project page will be discussed below in the section Google search limited to drupal.org ⤵

    • Module "README.txt" file

         | Contents at this point ⤴ | 

      The "README.txt" file has historically been the official place where all of the truly relevant and necessary information for a module (or theme) is documented, including anything relevant when the module (or theme) is updated to a newer version.

      The README.txt file is in the top level folder of the contrib module (or theme) after it has been extracted, if it exists.

      To view a module's (or theme's) 'README.txt' file without having to download anything, visit the URL:

      http://cgit.drupalcode.org/project/PROJECT_MACHINE_NAME.git/blob/HEAD:/README.txt

      Replace the expression PROJECT_MACHINE_NAME in the URL above with the short 'machine name' of the particular project.

      The 'machine name' is in your browser's address-bar URL when you are at any drupal.org project page, as for example, the 'PROJECT_MACHINE_NAME' portion of this sample URL-- a URL similar to the one for every project:

      https://www.drupal.org/project/PROJECT_MACHINE_NAME

      If the README.txt file does Not exist, the module is probably one for which their are no configurable options, and is simply a module that works silently in the background, and is necessary for other contrib modules to work.

      When there is no README.txt file, or if you just want to see all of the other documentation for a project, use the following URL (replace 'PROJECT_MACHINE_NAME'):

      http://cgit.drupalcode.org/PROJECT_MACHINE_NAME/tree/?id=HEAD

      At the top-right corner of that 'drupalcode.org' page, you may have to 'switch' to the Drupal core version that you are interested in exploring.

    • Google search limited to drupal.org

         | Contents at this point ⤴ | 

      If you want a search that is limited to the entire drupal.org site, this is what I do. I use this method quite often for searches of drupal.org, or of any other domain of my choice.

      I go to google.com ⎘ , and I type:

      site:drupal.org

      Note that there is No space following the colon (":") in front of the domain name. And do not use 'www.' at the beginning of any domain name.

      Add a 'blank-space' following whatever the domain name is, and type whatever keywords you can think of, namely, for our discussion today, the module's name.

      I have at times also found it helpful to try to limit a Google search specifically to 'Drupal 8' (instead of also getting results for D6, D7...) by adding "Drupal 8" into the Google search engine text-area box. By using double-quotation marks, Google will then return search results for pages that contain the exact two-or-more word expression in double-quotes. (...mostly.)

      To see what information is available for a specific module all across the Earth, including pages both inside of, and outside of drupal.org, omit 'site:drupal.org'.

      To get 100 Google search results per page, instead of 10, when you are at any Google search results page, click the top-right 'gear' icon, and in the drop-down menu, click 'Search settings'. At the next page, under the heading 'Google Instant predictions', click the radio-button "Never show instant results", Then under the heading 'Results per page', drag the slider all the way to the right. Your searches will now take an extra three-thousandths of a second, however, or something like that.

      Slanted and ranted opinion: You might have considered using the search engine provided by drupal.org at the top of all drupal.org pages. I tried that a few times years ago, and I would encourage you to try it for yourself if you like exercises in futility.

    • Your site's 'Extend' page "Help" buttons/links (when existing)

         | Contents at this point ⤴ | 

      On the 'Extend' page of your site, to the right of each modules name, you might see the first line of its description if your browser window is wide enough.

      If you were to click on that first line of the description, it would expand down and reveal the rest of its description, and would also reveal the 'Help', 'Permissions', and 'Configure' buttons/links for that module when those items are available.

      If you are not immediately seeing the first line of the module's description to the right of its name, and you want to see it, use the instructions above starting at 'Extend' page overview (part 1) ⤴

      Unfortunately, however, to gain access to the help page on your site for a module, not only do you have to have the module imported into your site, but also, the 'Help' button/link will only be visible if that module is enabled. And, unfortunately, not all contrib or core modules have a 'Help' button/link available for it, but you will have no way of knowing if one is available unless you first enable the module.

      For those problematic reasons, I have never relied on, nor used those 'Help' buttons, though looking at them now I see that they do often lead to pages that contain good information.

      If you see as I see, if you feel as I feel,...

      See this issue, for my dream of the ideal way to provide Drupal inline module help; when and where you need it. Universal 'Help' portal for all enabled and disabled modules - Please make 'Extend' page 'Help' link available when a module is disabled, in addition to while enabled ~ https://www.drupal.org/node/2801601 ⎘

      Future Prediction: Year (unknown): "To access all of the information you could possibly ever want for your newly imported module, or any other module currently on your site, whether enabled, or not: 1.) Go to the 'Extend' page 2.) Find the module in the list 3.) Click "Help" 
  13. Updating the module

       | Contents at this point ⤴ | 

    See the page Updating modules ⎘. [BROKEN LINK - LACKING DRUPAL 8 PAGE FOR UPDATING MODULES]

    The Drupal 7 page is Updating modules (Drupal 7) ~ drupal.org ⎘.

    Note: After you update a module that you have existing on your site (which you should only do after making a backup of both your database-- and your codebase folders: 'modules, 'sites', and 'themes'), is is a good idea to, and sometimes critical to, 'run the update script', a process detailed above at Broken site problems - Run the update script, and 'Clear all caches' ⤴.

    Those instruction amount to you typing /update.php following your site address in your browser's address-bar, as for example http://www.example.com/update.php, then press your [Return/Enter] key, and on the page that loads next, click 'Continue'.

    Or, to 'run the update script', click the link 'update script' at the top of the 'Extend' page.

    To keep up-to-date on any issues and fixes related to your newly installed module(s)

    You can create a user account ⎘ on Drupal.org (if you haven't done so already), and then subscribe to the feed of each module you are using from the issues page for that module.
    drupal.org 'Issues' page 'Subscribe button for 'following' a module's or theme's issues or updates

    You can get to the 'issues' page for each module from its drupal.org project page, under the heading 'Issues for ...'.

  14. Uninstalling the module

       | Contents at this point ⤴ | 

    See the page Uninstalling modules [This link currently goes to the Drupal 7 page for uninstalling modules] ⎘.

  15. Advanced Linux, Drush, and Git topics

       | Contents at this point ⤴ | 

    The following are a few assorted advanced topic items, relating to things I have no idea about.

    They are most likely explored in greater detail and depth elsewhere on drupal.org, and by my accounting, ought to be moved to those respective 'other' pages.

    Linux - Extracting files and folders from a *.tar.gz file

    On Linux or similar systems, use the command line:

    tar -zxvf modulename-drupalversionnumber.tar.gz

    You should see a list of files extracted into a folder.

    Upload the folder. Transfer your files with SFTP or FTP to the desired modules folder in your Drupal installation (or if you are using version control, add and commit them to your code repository).

    Arrangement of files and folders following the extraction of a *.tar.gz file for a module project

    Drush ⎘ - Installing a module with Drush

    Drush (DRU-pal SH-ell) is the fastest way to install modules.

    The commands are drush dl module_name and drush en module_name.

    Module Development with Drupal

    For a collection of useful materials for module developers, see Module Development with Drupal ⎘.

    Git - Installing sandbox projects

    On occasion you may wish to be Creating a sandbox (experimental) project ⎘. A sandbox project is a module or theme that contains experimental code that is not yet ready for general use.

    Sandbox projects are not packaged for download, so the usual way of getting them is by "checking them out" using Git, the software used for managing Drupal code.

    If you haven't used Git before, the good news is that it should be relatively quick and painless.

    • Install Git, see the handbook guide ⎘.
    • From the sandbox project's page, click the "Version control" tab above the project description and follow the (one step) instruction for "Setting up repository for the first time".

    This will get you the project code, which you can then install on your site like any other module or theme.

{{COMMENT: If anything on this page is not entirely accurate, or if you can think of a better way to phrase something, or if you can add more details for clarity, please feel free to 'Edit' this page. Or, add your suggestions using the 'Discuss' link. Thank you. 1.) Login to your drupal.org account/ Register. 2.) Return to this page at its top. 3.) "Edit": Click on the green 'Edit' bar. Or, 4.) "Discuss": Click the down-ward pointing arrow to the right of 'Edit', and then 5.) Click "Discuss". Post your recommendations, and someone will happily incorporate them into this page. Thank you.}}

 | Contents' beginning ⤴ | Page Top ⤴ |