CINXE.COM
Documentation | Drupal.org
<!DOCTYPE html> <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" version="XHTML+RDFa 1.0" dir="ltr" xmlns:fb="http://ogp.me/ns/fb#" xmlns:og="http://ogp.me/ns#"> <head profile="http://www.w3.org/1999/xhtml/vocab"> <meta name="HandheldFriendly" content="true" /> <meta name="viewport" content="width=device-width" /> <meta name="MobileOptimized" content="width" /> <!--[if IE]><![endif]--> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <meta name="description" content="Drupal 8 documentation Community documentation for Drupal 8: general Drupal topics, contributed projects documentation. Drupal 8 User Guide Curated introduction to readers new to Drupal 8. Developer documentation Documentation for developers about tools, processes, and standards that is not specific to a major version of Drupal. Drupal 7 documentation Community documentation" /> <meta name="generator" content="Drupal 7 (https://www.drupal.org)" /> <link rel="image_src" href="https://www.drupal.org/sites/all/themes/bluecheese/images/og.jpg" /> <link rel="canonical" href="https://www.drupal.org/documentation" /> <link rel="shortlink" href="https://www.drupal.org/node/2972133" /> <meta property="og:site_name" content="Drupal.org" /> <meta property="og:type" content="article" /> <meta property="og:url" content="https://www.drupal.org/documentation" /> <meta property="og:title" content="Documentation" /> <meta property="og:description" content="Drupal 8 documentation Community documentation for Drupal 8: general Drupal topics, contributed projects documentation. Drupal 8 User Guide Curated introduction to readers new to Drupal 8. Developer documentation Documentation for developers about tools, processes, and standards that is not specific to a major version of Drupal. Drupal 7 documentation Community documentation for Drupal 7: general Drupal topics, contributed projects documentation. The Drupal.org Community Documentation is maintained by the Drupal community. Find out how you can help." /> <meta property="og:updated_time" content="2024-04-03T15:47:45+00:00" /> <meta property="article:published_time" content="2018-05-10T21:50:54+00:00" /> <meta property="article:modified_time" content="2024-04-03T15:47:45+00:00" /> <title>Documentation | Drupal.org</title> <link type="text/css" rel="stylesheet" href="/files/advagg_css/css__vwdslBVX8xVWQ4hx4mWxIC59-lKGPldWkMIm435ispk__msT4O19F5udTbXsVQpyNk2EFYlbaoLwufqq_ZcdDcB0__YaNGWokqa69Wq8hHbkE322PVJ8I-GmpfBsT8LGsMpcI.css" media="all" /> <link type="text/css" rel="stylesheet" href="/files/advagg_css/css__Xi-PZpvKTY78w7l1WNsqwUA52MIupHJebCMiX34Ugt0__D_EUHDAfEQdxcLiSDY7hREUWkG1Ge56_h2z3Er8V188__YaNGWokqa69Wq8hHbkE322PVJ8I-GmpfBsT8LGsMpcI.css" media="all" /> <link type="text/css" rel="stylesheet" href="/files/advagg_css/css__WF0PRotZAhCcl0aJjY5W2LYj8UwiYuB2dZEFluOh3Tc__FviX13FUB-Ppa2XB29BUIJQZ1Wg-F5XiDE7XD5y7mjQ__YaNGWokqa69Wq8hHbkE322PVJ8I-GmpfBsT8LGsMpcI.css" media="all" /> <link type="text/css" rel="stylesheet" href="/files/advagg_css/css__Fx0_w1L9q3nwzXnALG7UfjLF34FGYgJTz636-GWbM6k__0jWLTEHP3h5U5RcXuZcFhf0DdvRdzP3_wzCVNT015Ls__YaNGWokqa69Wq8hHbkE322PVJ8I-GmpfBsT8LGsMpcI.css" media="all" /> <link type="text/css" rel="stylesheet" href="/files/advagg_css/css__pWCOPcaPe71p3QyGrAeqEd6dwL_n27prYOjnWQj4jVI__fR6RV6fh70jWL18FMzdVQpGUyYT8iL9Vw8wnms1DdQA__YaNGWokqa69Wq8hHbkE322PVJ8I-GmpfBsT8LGsMpcI.css" media="all" /> <link type="text/css" rel="stylesheet" href="/files/advagg_css/css__mlCLWKqAJJ-E-mMVCEmFp-7SE_XsgAxpf7HS-FcVqB0__7Tgy6u_PBeTp3b4s5UumhQPx9mJ_jhs1Z-WvSrqxAHk__YaNGWokqa69Wq8hHbkE322PVJ8I-GmpfBsT8LGsMpcI.css" media="all" /> <link type="text/css" rel="stylesheet" href="/files/advagg_css/css__QPp1snPjYt_xYr0c_V0IORcEElkIUBBBrvOB4ZE0Gnw__8jkPtXCYcQv4spuNwtiMBMbZXgCS-2GouDqwnCBDPRE__YaNGWokqa69Wq8hHbkE322PVJ8I-GmpfBsT8LGsMpcI.css" media="all" /> </head> <body class="html not-front not-logged-in no-sidebars page-node page-node- page-node-2972133 node-type-section drupalorg-site-main panels-layout og-context og-context-node og-context-node-2972133" > <div id="skip-link" tabindex="-1"> <a class="element-invisible element-focusable" href="#content">Skip to main content</a> <a class="element-invisible element-focusable skip-link-search" href="#search-block-form">Skip to search</a> </div> <div class="region region-page-top"> <noscript aria-hidden="true"><iframe src="https://www.googletagmanager.com/ns.html?id=GTM-W36H8DW" height="0" width="0" style="display:none;visibility:hidden"></iframe></noscript> <div id="drupalorg-crosssite-gdpr">Can we use first and third party cookies and web beacons to <a href="https://www.drupal.org/terms">understand our audience, and to tailor promotions you see</a>?<br><button class="yes">Yes, please</button><button class="no">No, do not track me</button></div> </div> <div id="nav-header"> <div class="menu-nav"> <a class="nav-btn" id="nav-open-btn" href="#block-system-main-menu"><img src="/sites/all/themes/bluecheese/images/icon-w-menu.svg" alt="Main menu"></a> </div> <nav id="navigation-inner" class="container-12" role="navigation"> <div class="region region-navigation"> <div id="block-system-main-menu" class="block block-system block-menu"> <div class="block-inner"> <div class="content"> <div class="menu-block"><ul class="menu button"><li class="first leaf"><a href="/home" title="Drupal.org home page">Drupal.org home</a></li> <li class="expanded"><a href="/about" title="">Why Drupal?</a><div class="menu-block"><ul class="menu button"><li class="first leaf"><a href="/about" title="Learn about Drupal">About Drupal</a></li> <li class="leaf"><a href="/docs/getting-started/understanding-drupal/overview-of-drupal" title="">Platform overview</a></li> <li class="leaf"><a href="/about/11" title="">Drupal 11</a></li> <li class="leaf"><a href="/features/content-authoring" title="">Content Authoring</a></li> <li class="leaf"><a href="/features/content-as-a-service" title="">Content as a Service</a></li> <li class="leaf"><a href="/features/decoupled" title="">Decoupled</a></li> <li class="leaf"><a href="/features/accessibility" title="">Accessibility</a></li> <li class="leaf"><a href="/features/marketing-automation" title="">Marketing Automation</a></li> <li class="leaf"><a href="/features/multilingual" title="">Multilingual</a></li> <li class="leaf"><a href="/features/security" title="">Security</a></li> <li class="leaf"><a href="/features/personalization" title="">Personalization</a></li> <li class="leaf"><a href="/case-studies" title="View case studies to see how your peers have built success on Drupal">Case studies</a></li> <li class="leaf"><a href="https://www.drupal.org/association/beyond-the-build" title="">Video series</a></li> <li class="last leaf"><a href="/about/in-the-news" title="">News</a></li> </ul></div></li> <li class="expanded"><a href="/industries" title="Examples of solutions built on Drupal">Use cases</a><div class="menu-block"><ul class="menu button"><li class="first leaf"><a href="/developers" title="">For Developers</a></li> <li class="leaf"><a href="/marketers" title="Why marketers should choose Drupal for their ambitious digital experiences">For Marketers</a></li> <li class="leaf"><a href="/industries/ecommerce" title="">E-commerce</a></li> <li class="leaf"><a href="/industries/education" title="">Education</a></li> <li class="leaf"><a href="/industries/fintech" title="">FinTech</a></li> <li class="leaf"><a href="/industries/government" title="">Government</a></li> <li class="leaf"><a href="/industries/healthcare" title="">Healthcare</a></li> <li class="leaf"><a href="/industries/hightech" title="">High Tech</a></li> <li class="leaf"><a href="/industries/nonprofit" title="">Nonprofit</a></li> <li class="leaf"><a href="/industries/retail" title="">Retail</a></li> <li class="last leaf"><a href="/industries/travel" title="">Travel</a></li> </ul></div></li> <li class="expanded"><a href="/documentation" title="Resources to help you on your Drupal journey" class="active">Resources</a><div class="menu-block"><ul class="menu button"><li class="first leaf"><a href="/docs/getting-started/installing-drupal" title="">Installing Drupal</a></li> <li class="leaf"><a href="/documentation" title="Drupal Documentation" class="active">Documentation</a></li> <li class="leaf"><a href="/docs/user_guide/en/index.html" title="The Drupal 8 user guide will get you up to speed in no time">User guide</a></li> <li class="leaf"><a href="/docs/official_docs/local-development-guide" title="">Local Development Guide</a></li> <li class="leaf"><a href="/security" title="Find information about security releases for Drupal">Security</a></li> <li class="leaf"><a href="/news" title="News about the Drupal ecosystem">News</a></li> <li class="leaf"><a href="/planet" title="">Blog</a></li> <li class="last leaf"><a href="/about/drupal-7/d7eol/partners" title="Find help for your Drupal 7 migration">Migrate from D7</a></li> </ul></div></li> <li class="expanded"><a href="/drupal-services" title="Buy Drupal Products and Services">Services</a><div class="menu-block"><ul class="menu button"><li class="first leaf"><a href="/drupal-services" title="View the Drupal service provider marketplace">Find an Agency Partner</a></li> <li class="leaf"><a href="/hosting" title="Find trusted Drupal hosting providers">Find Integrations & Hosting</a></li> <li class="leaf"><a href="/training" title="Find expert Drupal training">Find Drupal Training</a></li> <li class="leaf"><a href="/association/become-a-drupal-certified-partner" title="">Become a Certified Partner</a></li> <li class="last leaf"><a href="/about/drupal-7/d7eol/migration-resource-center/enterprise" title="">Find a D7 migration partner</a></li> </ul></div></li> <li class="expanded"><a href="/community" title="Drupal Community">Community</a><div class="menu-block"><ul class="menu button"><li class="first leaf"><a href="/community/contributor-guide" title="">How to Contribute</a></li> <li class="leaf"><a href="/community" title="View the community portal and find all the ways you can contribute to Drupal">About the Community</a></li> <li class="leaf"><a href="/support" title="">Support</a></li> <li class="leaf"><a href="/project/governance" title="">Community Governance</a></li> <li class="last leaf"><a href="https://jobs.drupal.org" title="">Jobs/Careers</a></li> </ul></div></li> <li class="expanded"><a href="/community/events" title="Find Drupal Events around the world, from the official DrupalCons, to community Camps and Meet-Ups">Events</a><div class="menu-block"><ul class="menu button"><li class="first leaf"><a href="https://events.drupal.org/barcelona2024" title="">DrupalCon Barcelona 2024</a></li> <li class="leaf"><a href="https://events.drupal.org/singapore2024" title="">DrupalCon Singapore 2024</a></li> <li class="leaf"><a href="https://events.drupal.org/atlanta2025" title="">DrupalCon Atlanta 2025</a></li> <li class="last leaf"><a href="/community/events" title="">Community Events</a></li> </ul></div></li> <li class="expanded active-trail"><a href="/download" title="Download and Extend Drupal" class="active-trail">Download</a><div class="menu-block"><ul class="menu button"><li class="first collapsed"><a href="/download" title="Build your solution on Drupal">Download</a></li> <li class="leaf"><a href="/project/modules" title="Find modules to extend Drupal to meet any need">Modules</a></li> <li class="leaf"><a href="/project/themes" title="Browse themes as a starting point for making your Drupal site your own">Themes</a></li> <li class="leaf"><a href="/project/distributions" title="Use a distribution to start with a version of Drupal customized to purpose">Distributions</a></li> <li class="leaf"><a href="/project/issues" title="Dive into the issues queues and contribute back to Drupal">Issue queues</a></li> <li class="last leaf"><a href="https://git.drupalcode.org/project/drupal" title="">Browse Repository</a></li> </ul></div></li> <li class="expanded"><a href="/association" title="About the Drupal Association - the non-profit that supports the Drupal project">Give</a><div class="menu-block"><ul class="menu button"><li class="first leaf"><a href="/association" title="Learn about the Drupal Association - the nonprofit that supports the Drupal project">Drupal Association</a></li> <li class="leaf"><a href="/association/organization-membership" title="Learn more about the organizations that support the Drupal Association and our mission">Become an Organization Member</a></li> <li class="leaf"><a href="/association/become-a-drupal-certified-partner" title="">Become a Certified Partner</a></li> <li class="leaf"><a href="/association/RippleMakers" title="">Become a Ripple Maker</a></li> <li class="leaf"><a href="/association/donate" title="">Make a Donation</a></li> <li class="leaf"><a href="/association/discover-drupal" title="">Discover Drupal</a></li> <li class="last leaf"><a href="https://www.drupal.org/swag?utm_source=drupalorg&utm_medium=banner&utm_campaign=drupal_swag_shop_2020_09_17" title="Purchase Drupal merchandise and be the coolest kid on the block">Drupal Swag Shop</a></li> </ul></div></li> <li class="last expanded"><a href="/try-drupal" title="Try Drupal">Demo</a><div class="menu-block"><ul class="menu button"><li class="first leaf"><a href="/try-drupal" title="Demo Drupal online with a Drupal platform partner">Demo online</a></li> <li class="last leaf"><a href="/download" title="">Download</a></li> </ul></div></li> </ul></div><a class="close-btn" href="#top">Return to content</a> </div> </div> </div> <div id="block-search-form" class="block block-search"> <div class="block-inner"> <div class="content"> <form action="/documentation" method="post" id="search-block-form" accept-charset="UTF-8"><div><div class="container-inline"> <h2 class="element-invisible">Search form</h2> <div class="form-item form-type-textfield form-item-search-block-form"> <label class="element-invisible" for="edit-search-block-form--2">Search </label> <input placeholder="Search…" type="text" id="edit-search-block-form--2" name="search_block_form" value="" size="15" maxlength="128" class="form-text" /> </div> <div class="form-actions form-wrapper" id="edit-actions"><input alt="Search" type="image" id="edit-submit" name="submit" value="Search" src="/sites/all/themes/bluecheese/images/icon-w-search.svg" class="form-submit" /></div><input type="hidden" name="form_build_id" value="form-R2U-QCXjDw8LwlsH4ygvNhaWsF0Gga55u2i12ZGA0zc" /> <input type="hidden" name="form_id" value="search_block_form" /> </div> </div></form> </div> </div> </div> <div id="block-system-user-menu" class="block block-system block-menu"> <div class="block-inner"> <div class="content"> <div class="menu-block"><ul class="menu"><li class="button default"><a href="#block-system-user-menu"><img src="https://www.drupal.org/sites/all/themes/bluecheese/images/icon-w-user.svg" alt="Log in, view profile, and more"></a><ul><li class="first leaf"><a href="/user/login?destination=node/2972133" title="">Log in</a></li> <li class="last leaf"><a href="/user/register?destination=node/2972133" title="">Create account</a></li> </ul></li></ul></div> </div> </div> </div> </div> </nav> </div> <div id="header" class="clearfix"> <div id="header-inner" class="container-12 clearfix"> <div id="header-left"> <div id="site-name"><a href="/documentation">Documentation</a></div> </div> <div id="header-right"> <div class="region region-header"> <div id="block-drupalorg-search-documentation" class="block block-drupalorg"> <div class="block-inner"> <div class="content"> <form class="container-inline" action="/documentation" method="post" id="drupalorg-documentation-search-form" accept-charset="UTF-8"><div><input type="hidden" name="form_build_id" value="form-GkPI2NKl9hVYbTsJstz3niNUu_scadjgLh0nWBKAQfs" /> <input type="hidden" name="form_id" value="drupalorg_documentation_search_form" /> <div class="form-item form-type-textfield form-item-drupalorg-documentation-search-form"> <label class="element-invisible" for="edit-drupalorg-documentation-search-form--2">Search </label> <input placeholder="Search documentation…" type="text" id="edit-drupalorg-documentation-search-form--2" name="drupalorg_documentation_search_form" value="" size="15" maxlength="128" class="form-text" /> </div> <div class="form-actions form-wrapper" id="edit-actions--2"><input alt="Search" type="image" id="edit-submit--2" name="submit" value="Search" src="/sites/all/themes/bluecheese/images/icon-w-search.svg" class="form-submit" /></div></div></form> </div> </div> </div> </div> </div> </div> </div> <div id="banner" data-nosnippet> <div class="region region-banner"> <div id="block-drupalorg-announcements" class="block block-drupalorg"> <div class="block-inner"> <div class="content"> <div class="announcement"><img class="photo" src="https://www.drupal.org/files/styles/grid-2-2x-square/public/announcements/drupalcon-hexagon-icon-280X280px_2.png?itok=Oxf_7ZRC" width="280" height="280" alt="Announcement icon" title="Announcement icon" />Early Bird Registration for DrupalCon Atlanta is now open! By registering during our Early Bird Registration window, you’ll save $100. This window ends on 19 January 2025 and will go by quickly, so don’t wait!</div> <div class="cta"><a href="https://web.cvent.com/event/f3a4f9b8-0efa-44cf-a939-b80869a939af/summary" class="global-announce-banner dc-singapore-registration">Register now to save $100</a></div> </div> </div> </div> </div> </div> <div id="page" class="clearfix"> <div id="page-heading"> <div class="breadbox"></div> </div> <!-- /#page-heading --> <div class="container-12 page-inner"> <div id="main" role="main"> <div id="content" class="clearfix"> <div id="content-inner" class="clearfix"> <div class="region region-content"> <div id="block-system-main" class="block block-system"> <div class="block-inner"> <div class="content"> <div class="panelizer-view-mode node node-full node-section node-2972133"> <div class="panel-display hydra panel-layout clearfix " > <div class="container preface clearfix panel-panel"> <div class="container-inner preface-inner panel-panel-inner"> </div> </div> <div class="container content clearfix"> <div class="container-inner content-inner panel-panel-inner"> <div class="column-content-region top-right-content column panel-panel"> <div class="column-content-region-inner top-right-content-inner column-inner panel-panel-inner"> <div class="panel-pane pane-block pane-drupalorg-carbon-ad-sidebar" > <div class="pane-content"> <script async type="text/javascript" src="//cdn.carbonads.com/carbon.js?serve=CKYIEKJI&placement=drupalorg" id="_carbonads_js"></script><div class="ad-explanation description">Advertising sustains the DA. Ads are hidden for members. <a href="/association/individual-membership">Join today</a></div> </div> </div> <div class="panel-separator"></div><div class="panel-pane pane-custom pane-12 documentation-section-menu" > <div class="pane-content"> <h4>Curated Guides</h4> <ul> <li><a href="/docs/user_guide/en/index.html" rel="nofollow">Drupal User Guide</a></li> <li><a href="/docs/official_docs/en/_evaluator_guide.html" rel="nofollow">Evaluator Guide</a></li> <li><a href="/docs/official_docs/en/_local_development_guide.html" rel="nofollow">Local Development Guide</a></li> </ul> <h4>Drupal Wiki</h4> <ul> <li><a href="/docs" rel="nofollow">Drupal</a></li> <li><a href="/docs/develop" rel="nofollow">Develop</a></li> <li><a href="/docs/7" rel="nofollow">Drupal 7</a></li> </ul> <h4>API Info</h4> <ul> <li><a href="https://api.drupal.org/api/drupal" rel="nofollow">Complete API Reference</a></li> <li><a href="/docs/drupal-apis" rel="nofollow">Drupal APIs</a></li> </ul> <h4><a href="/books" rel="nofollow">Drupal books</a></h4> </div> </div> </div> </div> <div class="column-content-region left-content column panel-panel "> <div class="column-content-region-inner left-content-inner column-inner panel-panel-inner"> <div class="panel-pane pane-custom pane-2" id="getting-started" > <h2 class="pane-title"> Getting Started </h2> <div class="pane-content"> <p><strong>Do you want to click through a Drupal demo site?</strong></p> <p>You can <a href="/try-drupal" rel="nofollow">Try Drupal online</a> with one of our hosting partners or <a href="/docs/official_docs/en/_evaluator_guide.html" rel="nofollow">create a Drupal demo site on your local machine.</a></p> <p><strong>Are you ready to start building your own Drupal site?</strong> </p> <p>Read the <a href="/docs/official_docs/en/_local_development_guide.html" rel="nofollow">Local Development Guide</a> to create and install a new Drupal application on your local machine for the purpose of development. After it's up and running, read the <a href="/docs/user_guide/en/index.html" rel="nofollow">Drupal User Guide</a> to <a href="/docs/user_guide/en/config-chapter.html" rel="nofollow">begin basic configuration</a>.</p> <hr /> <br /> </div> </div> <div class="panel-separator"></div><div class="panel-pane pane-custom pane-3" id="curated-guides" > <h2 class="pane-title"> Curated Guides </h2> <div class="pane-content"> <p>Curated guides are governed by maintainers and held to an established standard through an editorial process.</p> <h4><a href="/docs/user_guide/en/index.html" rel="nofollow">Drupal User Guide</a></h4> <p>Written expressly for people with minimal knowledge of the Drupal content management system.</p> <h4><a href="/docs/official_docs/en/_evaluator_guide.html" rel="nofollow">Evaluator Guide</a></h4> <p>Learn how to quickly create a temporary Drupal demo application on your local machine.</p> <h4><a href="/docs/official_docs/en/_local_development_guide.html" rel="nofollow">Local Development Guide</a></h4> <p>Learn how to create and install a new Drupal application on your local machine for the purpose of development.</p> </div> </div> <div class="panel-separator"></div><div class="panel-pane pane-custom pane-4" > <div class="pane-content"> <hr /><br /> </div> </div> <div class="panel-separator"></div><div class="panel-pane pane-custom pane-5" id="drupal-wiki" > <h2 class="pane-title"> Drupal Wiki </h2> <div class="pane-content"> <p>The Drupal Wiki can be freely edited by any member of the Drupal community. It is not subject to any formal editorial process.</p> <h4><a href="/docs" rel="nofollow">Drupal</a></h4> <p>A catch-all guide for Drupal 8, 9, 10, and later.</p> </div> </div> <div class="panel-separator"></div><div class="panel-pane pane-block pane-menu-menu-og-2734545" > <div class="pane-content"> <ul class="menu"><li class="first leaf"><a href="/docs/getting-started">Getting started</a></li> <li class="leaf"><a href="/docs/administering-a-drupal-site">Administering a Drupal site</a></li> <li class="leaf"><a href="/docs/upgrading-drupal">Upgrading Drupal</a></li> <li class="leaf"><a href="/docs/updating-drupal">Updating Drupal</a></li> <li class="leaf"><a href="/docs/extending-drupal">Extending Drupal</a></li> <li class="last leaf"><a href="/docs/glossary">Glossary</a></li> </ul> </div> </div> <div class="panel-separator"></div><div class="panel-pane pane-custom pane-6" > <div class="pane-content"> <h4><a href="/docs/develop" rel="nofollow">Develop</a></h4> <p>Documentation for developers about tools, processes, and standards that are not specific to a major version of Drupal.</p> </div> </div> <div class="panel-separator"></div><div class="panel-pane pane-block pane-menu-menu-og-2802989" > <div class="pane-content"> <ul class="menu"><li class="first leaf"><a href="/docs/develop/development-tools">Development tools</a></li> <li class="leaf"><a href="/docs/develop/using-composer">Using Composer</a></li> <li class="leaf"><a href="/docs/develop/git" title="">Git version control system</a></li> <li class="leaf"><a href="/docs/develop/managing-a-drupalorg-theme-module-or-distribution-project" title="">Managing a drupal.org theme, module, or distribution project</a></li> <li class="leaf"><a href="/docs/develop/security">Security</a></li> <li class="leaf"><a href="/docs/develop/issues" title="">Drupal project issues</a></li> <li class="leaf"><a href="/docs/develop/local-server-setup">Local server setup</a></li> <li class="leaf"><a href="/docs/develop/usability-testing">Usability testing</a></li> <li class="leaf"><a href="/docs/develop/standards">Coding standards</a></li> <li class="leaf"><a href="/docs/develop/profiling-drupal">Profiling Drupal</a></li> <li class="leaf"><a href="/docs/develop/user-interface-standards">User interface standards</a></li> <li class="leaf"><a href="/docs/develop/theming-drupal">Theming Drupal</a></li> <li class="leaf"><a href="/docs/develop/creating-modules">Creating custom modules</a></li> <li class="leaf"><a href="/docs/develop/drupal-apis">Drupal APIs</a></li> <li class="leaf"><a href="/docs/develop/automated-testing">Automated Testing</a></li> <li class="leaf"><a href="/docs/develop/upgrading-and-converting-drupal-7-modules">Upgrading and converting Drupal 7 modules</a></li> <li class="leaf"><a href="/docs/develop/core-modules-and-themes">Core modules and themes</a></li> <li class="leaf"><a href="/docs/develop/external-libraries-in-core">External Libraries in Core</a></li> <li class="leaf"><a href="/docs/develop/mobile-drupal-sites">Mobile guide</a></li> <li class="last leaf"><a href="/docs/develop/decoupled-drupal">Decoupled Drupal</a></li> </ul> </div> </div> <div class="panel-separator"></div><div class="panel-pane pane-custom pane-7" > <div class="pane-content"> <h4><a href="/docs/7" rel="nofollow">Drupal 7</a></h4> <p>A guide to Drupal 7.</p> </div> </div> <div class="panel-separator"></div><div class="panel-pane pane-block pane-menu-menu-og-2743405" > <div class="pane-content"> <ul class="menu"><li class="first leaf"><a href="/docs/7/understanding-drupal">Understanding Drupal</a></li> <li class="leaf"><a href="/docs/7/system-requirements">System requirements</a></li> <li class="leaf"><a href="/docs/7/install">Installing Drupal 7</a></li> <li class="leaf"><a href="/docs/7/update" title="">Updating Drupal 7</a></li> <li class="leaf"><a href="/docs/7/administering-drupal-7-site">Administering Drupal 7 site</a></li> <li class="leaf"><a href="/docs/7/modules">Contributed modules</a></li> <li class="leaf"><a href="/docs/7/theming">Theming Drupal 7</a></li> <li class="leaf"><a href="/docs/7/extend">Extending Drupal</a></li> <li class="leaf"><a href="/docs/7/multilingual">Multilingual guide</a></li> <li class="leaf"><a href="/docs/7/multisite">Multisite Drupal</a></li> <li class="leaf"><a href="/docs/7/choosing-a-drupal-version">Choosing Drupal version</a></li> <li class="leaf"><a href="/docs/7/upgrade-to-drupal-7">Upgrade to Drupal 7</a></li> <li class="leaf"><a href="/docs/7/setting-up-cron">Setting up cron</a></li> <li class="leaf"><a href="/docs/7/configuring-clean-urls">Configuring clean URLs</a></li> <li class="leaf"><a href="/docs/7/migrating-to-drupal-7">Migrating to Drupal</a></li> <li class="leaf"><a href="/docs/7/security">Security in Drupal 7</a></li> <li class="leaf"><a href="/docs/7/backing-up-and-migrating-a-site">Backing up and migrating a site</a></li> <li class="leaf"><a href="/docs/7/managing-site-performance-and-scalability">Managing site performance</a></li> <li class="leaf"><a href="/docs/7/managing-users">Managing users</a></li> <li class="leaf"><a href="/docs/7/monitoring-a-site">Monitoring a site</a></li> <li class="leaf"><a href="/docs/7/nodes-content-types-and-fields">Nodes, content types and fields</a></li> <li class="leaf"><a href="/docs/7/organizing-content-with-taxonomy">Organizing content with taxonomies</a></li> <li class="leaf"><a href="/docs/7/site-building-best-practices">Site building best practices</a></li> <li class="leaf"><a href="/docs/7/accessibility">Accessibility</a></li> <li class="leaf"><a href="/docs/7/guidelines-for-sql">Guidelines for SQL</a></li> <li class="leaf"><a href="/docs/7/mobile">Mobile guide</a></li> <li class="leaf"><a href="/docs/7/working-with-menus">Working with menus</a></li> <li class="leaf"><a href="/docs/7/creating-custom-modules">Creating custom modules</a></li> <li class="leaf"><a href="/docs/7/themes">Contributed themes</a></li> <li class="leaf"><a href="/docs/7/converting-drupal-6-modules-to-drupal-7">Converting Drupal 6 modules to Drupal 7</a></li> <li class="leaf"><a href="/docs/7/creating-distributions">Creating distributions</a></li> <li class="leaf"><a href="/docs/7/distributions">Distributions</a></li> <li class="leaf"><a href="/docs/7/api">Drupal 7 APIs</a></li> <li class="leaf"><a href="/docs/7/core">Drupal 7 core</a></li> <li class="leaf"><a href="/docs/7/howtos">HowTos</a></li> <li class="last leaf"><a href="/docs/7/automated-testing-for-drupal-7">Testing</a></li> </ul> </div> </div> <div class="panel-separator"></div><div class="panel-pane pane-custom pane-8" > <div class="pane-content"> <hr /><br /> </div> </div> <div class="panel-separator"></div><div class="panel-pane pane-custom pane-9" id="api-info" > <h2 class="pane-title"> API Info </h2> <div class="pane-content"> <h4><a href="https://api.drupal.org/api/drupal" rel="nofollow">Complete API Reference</a></h4> <p>API Reference documentation is automatically generated using Drupal core's code (e.g., using docblocks and annotations).</p> <ul class="menu"> <li><a href="https://api.drupal.org/api/drupal/groups" rel="nofollow">Topics</a></li> <li><a href="https://api.drupal.org/api/drupal/classes" rel="nofollow">Classes</a></li> <li><a href="https://api.drupal.org/api/drupal/functions" rel="nofollow">Functions</a></li> <li><a href="https://api.drupal.org/api/drupal/files" rel="nofollow">Files</a></li> <li><a href="https://api.drupal.org/api/drupal/namespaces" rel="nofollow">Namespaces</a></li> <li><a href="https://api.drupal.org/api/drupal/services" rel="nofollow">Services</a></li> <li><a href="https://api.drupal.org/api/drupal/elements" rel="nofollow">Elements</a></li> <li><a href="https://api.drupal.org/api/drupal/constants" rel="nofollow">Constants</a></li> <li><a href="https://api.drupal.org/api/drupal/globals" rel="nofollow">Globals</a></li> <li><a href="https://api.drupal.org/api/drupal/deprecated" rel="nofollow">Deprecated</a></li> </ul> </div> </div> <div class="panel-separator"></div><div class="panel-pane pane-custom pane-10 divider" > <div class="pane-content"> <h4><a href="/docs/drupal-apis" rel="nofollow">Drupal APIs</a></h4> <p>The Drupal APIs guide provides a general overview of each of Drupal’s core APIs.</p> </div> </div> <div class="panel-separator"></div><div class="panel-pane pane-block pane-menu-menu-og-2814041" > <div class="pane-content"> <ul class="menu"><li class="first leaf"><a href="/docs/develop/drupal-apis/access-policy-api">Access Policy API</a></li> <li class="leaf"><a href="/docs/develop/drupal-apis/ajax-api">AJAX API</a></li> <li class="leaf"><a href="/docs/drupal-apis/authentication-api">Authentication API</a></li> <li class="leaf"><a href="/docs/drupal-apis/batch-api">Batch API</a></li> <li class="leaf"><a href="/docs/drupal-apis/block-api">Block API</a></li> <li class="leaf"><a href="/docs/drupal-apis/cache-api">Cache API</a></li> <li class="leaf"><a href="/docs/drupal-apis/deprecated-ckeditor-4-api-drupal-8-and-9" title="">(deprecated) CKEditor 4 API</a></li> <li class="leaf"><a href="/docs/drupal-apis/ckeditor-5-api">CKEditor 5 API</a></li> <li class="leaf"><a href="/docs/drupal-apis/configuration-api">Configuration API</a></li> <li class="leaf"><a href="/docs/develop/drupal-apis/database-api">Database API</a></li> <li class="leaf"><a href="/docs/drupal-apis/entity-api">Entity API</a></li> <li class="leaf"><a href="/docs/drupal-apis/filter-api">Filter API</a></li> <li class="leaf"><a href="/docs/drupal-apis/form-api">Form API</a></li> <li class="leaf"><a href="/docs/develop/drupal-apis/javascript-api">JavaScript API</a></li> <li class="leaf"><a href="/docs/drupal-apis/layout-api">Layout API</a></li> <li class="leaf"><a href="/docs/drupal-apis/logging-api">Logging API</a></li> <li class="leaf"><a href="/docs/drupal-apis/menu-api">Menu API</a></li> <li class="leaf"><a href="/docs/drupal-apis/middleware-api">Middleware API</a></li> <li class="leaf"><a href="/docs/drupal-apis/migrate-api">Migrate API</a></li> <li class="leaf"><a href="/docs/drupal-apis/plugin-api">Plugin API</a></li> <li class="leaf"><a href="/docs/drupal-apis/restful-web-services-api">RESTful Web Services API</a></li> <li class="leaf"><a href="/docs/drupal-apis/render-api">Render API</a></li> <li class="leaf"><a href="/docs/drupal-apis/responses">Responses</a></li> <li class="leaf"><a href="/docs/drupal-apis/routing-system">Routing system</a></li> <li class="leaf"><a href="/docs/develop/drupal-apis/runtime-assertions">Runtime Assertions</a></li> <li class="leaf"><a href="/docs/drupal-apis/serialization-api">Serialization API</a></li> <li class="leaf"><a href="/docs/drupal-apis/services-and-dependency-injection">Services and dependency injection</a></li> <li class="leaf"><a href="/docs/develop/drupal-apis/state-api">State API</a></li> <li class="leaf"><a href="/docs/drupal-apis/text-editor-api">Text Editor API</a></li> <li class="leaf"><a href="/docs/drupal-apis/tour-api">Tour API</a></li> <li class="leaf"><a href="/docs/develop/drupal-apis/translation-api-code-text">Translation API (Code text)</a></li> <li class="leaf"><a href="/docs/develop/drupal-apis/typed-data-api">Typed Data API</a></li> <li class="last leaf"><a href="/docs/drupal-apis/update-api">Update API</a></li> </ul> </div> </div> <div class="panel-separator"></div><div class="panel-pane pane-custom pane-11" > <div class="pane-content"> <h4><a href="/drupalorg/docs" rel="nofollow">Drupal.org Documentation</a></h4> <p>Looking for documentation about Drupal.org itself, rather than Drupal the software? Find it here.</p> </div> </div> </div> </div> <div class="column-content-region bottom-right-content column panel-panel"> <div class="column-content-region-inner bottom-right-content-inner column-inner panel-panel-inner"> <div class="panel-pane pane-custom pane-1" id="contribute" > <h2 class="pane-title"> Contribute </h2> <div class="pane-content"> <p>Read the <a href="/contribute/documentation" rel="nofollow">contribution guidelines</a> and consider joining the <a href="/about/strategic-initiatives/documentation" rel="nofollow">documentation initiative</a>.</p> </div> </div> </div> </div> </div> </div> <div class="container footer clearfix panel-panel"> <div class="container-inner footer-inner panel-panel-inner"> </div> </div> </div><!-- /.sutro --> </div> </div> </div> </div> </div> </div> </div> <!-- /#content --> </div> <!-- /#column-left --> </div> </div> <!-- /#page --> <div id="footer" role="contentinfo"> <div class="region region-footer"> <div id="block-drupalorg-crosssite-infra-partner" class="block block-drupalorg-crosssite"> <div class="block-inner"> <div class="content"> <a href="https://tag1consulting.com" >Infrastructure management for Drupal.org provided by <img src="/files/cta/graphic/tag1_wht.svg" alt="Tag1 logo" ></a> <br /> <span style="font-size: .65em;"><a href="https://d7es.tag1.com/">Need a Drupal 7 extended support partner? Consider Tag1.</a></span> </div> </div> </div> <div id="block-drupalorg-crosssite-drupalorg-footer" class="block block-drupalorg-crosssite"> <div class="block-inner"> <div class="content"> <h4 class="element-invisible">News items</h4><ul class="drupal-news"><li class="0 first"><a href="https://www.drupal.org/news">News</a></li> <li class="1"><a href="https://www.drupal.org/planet" title="News from Drupal community members">Planet Drupal</a></li> <li class="2"><a href="https://www.drupal.org/about/media-kit/social-media" title="Drupal on social media">Social media</a></li> <li class="3"><a href="https://www.drupal.org/subscribe">Sign up for Drupal news</a></li> <li class="4"><a href="https://www.drupal.org/security" title="Announcements from the Drupal Security Team">Security advisories</a></li> <li class="5 last"><a href="https://jobs.drupal.org/" title="Drupal Jobs">Jobs</a></li> </ul><h4 class="element-invisible">Our community</h4><ul class="community"><li class="0 first"><a href="https://www.drupal.org/community">Community</a></li> <li class="1"><span><a href="https://www.drupal.org/drupal-services" title="People and organizations offering Drupal services">Services</a>, <a href="https://www.drupal.org/training" title="People and organizations offering Drupal training">Training</a> & <a href="https://www.drupal.org/hosting" title="Organizations offering Drupal hosting">Hosting</a></span></li> <li class="2"><a href="https://www.drupal.org/community/contributor-guide">Contributor guide</a></li> <li class="3"><a href="https://groups.drupal.org/groups" title="groups.drupal.org">Groups & meetups</a></li> <li class="4"><a href="https://events.drupal.org" title="Upcoming and past DrupalCons">DrupalCon</a></li> <li class="5 last"><a href="https://www.drupal.org/dcoc" title="Drupal code of conduct">Code of conduct</a></li> </ul><h4 class="element-invisible">Documentation</h4><ul class="get-started"><li class="0 first"><a href="https://www.drupal.org/documentation" title="Documentation for working with Drupal">Documentation</a></li> <li class="1"><a href="https://www.drupal.org/docs">Drupal Guide</a></li> <li class="2"><a href="https://www.drupal.org/docs/user_guide/en/index.html">Drupal User Guide</a></li> <li class="3"><a href="https://www.drupal.org/documentation/develop">Developer docs</a></li> <li class="4 last"><a href="https://api.drupal.org/" title="Drupal API reference">API.Drupal.org</a></li> </ul><h4 class="element-invisible">Drupal code base</h4><ul class="download-extend"><li class="0 first"><a href="https://www.drupal.org/download">Download & Extend</a></li> <li class="1"><a href="https://www.drupal.org/project/drupal" title="Download the latest version of the Drupal software">Drupal core</a></li> <li class="2"><a href="https://www.drupal.org/project/project_module" title="Download add-on features and functionality">Modules</a></li> <li class="3"><a href="https://www.drupal.org/project/project_theme" title="Download pre-designed styles for Drupal">Themes</a></li> <li class="4 last"><a href="https://www.drupal.org/project/project_distribution" title="Download a pre-packaged Drupal site">Distributions</a></li> </ul><h4 class="element-invisible">Governance of community</h4><ul class="about"><li class="0 first"><a href="https://www.drupal.org/about">About</a></li> <li class="1"><a href="https://www.drupal.org/about/features/accessibility" title="Our committment to accessibility">Web accessibility</a></li> <li class="2"><a href="https://www.drupal.org/association" title="About the Drupal Association">Drupal Association</a></li> <li class="3"><a href="https://www.drupal.org/drupalorg" title="About Drupal.org">About Drupal.org</a></li> <li class="4"><a href="https://www.drupal.org/terms" title="Drupal.org terms of service">Terms of service</a></li> <li class="5 last"><a href="https://www.drupal.org/privacy" title="Drupal.org privacy policy">Privacy policy</a></li> </ul> </div> </div> </div> <div id="block-block-77" class="block block-block"> <div class="block-inner"> <div class="content"> <p>Drupal is a <a href="/about/trademark">registered trademark</a> of <a href="https://dri.es">Dries Buytaert</a>.</p> </div> </div> </div> </div> </div> <div class="region region-page-bottom"> <script type="text/javascript"> (function(){ window._pxAppId = 'PXVnPBBfwe'; window._pxParam2 = ''; window._pxParam3 = '0'; var p = document.getElementsByTagName('script')[0], s = document.createElement('script'); s.async = 1; s.src = '/VnPBBfwe/init.js'; p.parentNode.insertBefore(s,p); }()); </script> <noscript> <div style="position:fixed; top:0; left:0; display:none" width="1" height="1"> <img src="/VnPBBfwe/xhr/api/v1/collector/noScript.gif?appId=PXVnPBBfwe"> </div> </noscript> </div> <script type="text/javascript" src="/files/advagg_js/js__B0FBwiP97ZnD38IFraZus4upS4KVkMXI3ou0fJ2ZXGA__pPDESRJz9GHsxqQIwQ_V8xnFYEH5jipG2eicsfrdWCs__YaNGWokqa69Wq8hHbkE322PVJ8I-GmpfBsT8LGsMpcI.js" defer="defer"></script> <!--[if lte IE 9]> <script type="text/javascript" src="/files/advagg_js/js__79M6UrZjAw3oNGnUjsWip12JsvnUZmJGA3h9LI0kuzE__J0sbXAJNry2-C_ZL2xd0RdVuzwTLvwN-UisIv5RNCvU__YaNGWokqa69Wq8hHbkE322PVJ8I-GmpfBsT8LGsMpcI.js#ie9-" onload="if(jQuery.isFunction(jQuery.holdReady)){jQuery.holdReady(true);}"></script> <![endif]--> <!--[if gt IE 9]> <script type="text/javascript" src="/files/advagg_js/js__79M6UrZjAw3oNGnUjsWip12JsvnUZmJGA3h9LI0kuzE__J0sbXAJNry2-C_ZL2xd0RdVuzwTLvwN-UisIv5RNCvU__YaNGWokqa69Wq8hHbkE322PVJ8I-GmpfBsT8LGsMpcI.js#ie10+" defer="defer" onload="if(jQuery.isFunction(jQuery.holdReady)){jQuery.holdReady(true);}"></script> <![endif]--> <!--[if !IE]><!--> <script type="text/javascript" src="/files/advagg_js/js__79M6UrZjAw3oNGnUjsWip12JsvnUZmJGA3h9LI0kuzE__J0sbXAJNry2-C_ZL2xd0RdVuzwTLvwN-UisIv5RNCvU__YaNGWokqa69Wq8hHbkE322PVJ8I-GmpfBsT8LGsMpcI.js" defer="defer" onload="if(jQuery.isFunction(jQuery.holdReady)){jQuery.holdReady(true);}"></script> <!--<![endif]--> <script type="text/javascript" src="/files/advagg_js/js__pqoYaVR8NVhof-vNXe50j2TKhFv__IihVag_h4G6kus__B4mbn4wICLQjWm1m3-z1kw8F1FtP0cDAHKp00Xy_-88__YaNGWokqa69Wq8hHbkE322PVJ8I-GmpfBsT8LGsMpcI.js" defer="defer"></script> <script type="text/javascript" src="/files/advagg_js/js__H5AFmq1RrXKsrazzPq_xPQPy4K0wUKqecPjczzRiTgQ__wor4r9P8YTtQ7p6fbywTetZ47Z_orumIfrrhgxrpLus__YaNGWokqa69Wq8hHbkE322PVJ8I-GmpfBsT8LGsMpcI.js" defer="defer" onload=" function advagg_mod_1() { // Count how many times this function is called. advagg_mod_1.count = ++advagg_mod_1.count || 1; try { if (advagg_mod_1.count <= 40) { init_drupal_core_settings(); // Set this to 100 so that this function only runs once. advagg_mod_1.count = 100; } } catch(e) { if (advagg_mod_1.count >= 40) { // Throw the exception if this still fails after running 40 times. throw e; } else { // Try again in 1 ms. window.setTimeout(advagg_mod_1, 1); } } } function advagg_mod_1_check() { if (window.init_drupal_core_settings && window.jQuery && window.Drupal) { advagg_mod_1(); } else { window.setTimeout(advagg_mod_1_check, 1); } } advagg_mod_1_check();"></script> <script type="text/javascript" src="/files/advagg_js/js__Oc0wwB7MVRfxtYw6EQM7d9sXj9PAQePoWSzQJ0uTk6c__iXqOGoaPhZHCPEspUr5BC8BwOx5P8B11xv7VOhoUii8__YaNGWokqa69Wq8hHbkE322PVJ8I-GmpfBsT8LGsMpcI.js" defer="defer"></script> <script type="text/javascript" src="/files/advagg_js/js__FabcJ6qluktliDejymsuV-FqaN_HyMKGe93c2rO9Ky0__el1ZLGkKneOoCS6OWa01WHuIEsTsXZ46MRLCF390Fbw__YaNGWokqa69Wq8hHbkE322PVJ8I-GmpfBsT8LGsMpcI.js" defer="defer"></script> <script type="text/javascript" src="/files/advagg_js/js__YT6D1B_BKxvm6JCH_t9sZNI5L6yITa_DlU5QcSlOkAU__OXobH7d1IP1o3WABlniIrU_-pcJacVSIPUv9bpD-6pQ__YaNGWokqa69Wq8hHbkE322PVJ8I-GmpfBsT8LGsMpcI.js" defer="defer"></script> <script type="text/javascript" src="/files/advagg_js/js__xNXZEl6CREO_N4cX50nXAG3o3PPW1f2SzBBHY8rEKV8__vTuPvw9kFyhvW1mq6Cl_PG3exxZo1gi4hMxmKe9QZUI__YaNGWokqa69Wq8hHbkE322PVJ8I-GmpfBsT8LGsMpcI.js" defer="defer"></script> <script type="text/javascript" src="/files/advagg_js/js__pLKQd4r7OrHglE7Qkqw53K2UXCqQdhqQ9v0cz7hMCQY__OErfYuQdGbFHcCoLoUW_ESSvaumApNojzjJit8-2xcw__YaNGWokqa69Wq8hHbkE322PVJ8I-GmpfBsT8LGsMpcI.js" defer="defer"></script> <script type="text/javascript" src="/files/advagg_js/js__hHUWFbMAa11eJtx5V0ym9o0YBsB1udk34qUT5wr1ihI__ntICfIdx3SsBpfvYB8AF0VuFk7gZjQgBaS1C9CyMj6o__YaNGWokqa69Wq8hHbkE322PVJ8I-GmpfBsT8LGsMpcI.js" defer="defer"></script> <script type="text/javascript"> <!--//--><![CDATA[//><!-- function init_drupal_core_settings() {jQuery.extend(Drupal.settings,{"basePath":"\/","pathPrefix":"","setHasJsCookie":0,"ajaxPageState":{"theme":"bluecheese","theme_token":"oeO48xyxMfVgEvJJCgY1edSLF5E1rpr993k0HaR2w-g"},"drupalorgGitlab":{"gitlab_base_url":"https:\/\/git.drupalcode.org","base_url":"https:\/\/www.drupal.org"},"urlIsAjaxTrusted":{"\/documentation":true},"drupalorgCrosssiteConsentNeeded":true,"ogContext":{"groupType":"node","gid":"2972133"}}); if(jQuery.isFunction(jQuery.holdReady)){jQuery.holdReady(false);}} if(window.jQuery && window.Drupal){init_drupal_core_settings();} //--><!]]> </script> <script type="text/javascript" src="/files/advagg_js/js__2k0CJ3KAQNFTFab3y6ZvNtxs3HLons0Brq7VwvPSkKo__RYlZCliQTuN7U7I5I1Xhn1dAop17g2hAft1wVGgKHGA__YaNGWokqa69Wq8hHbkE322PVJ8I-GmpfBsT8LGsMpcI.js" defer="defer"></script> <script type="text/javascript" src="/files/advagg_js/js__vj0LjvNwl-3K1P9LGT4BGuXCZcAovYsVlVmoJN3TMRg__KW8SiGceRY3sjIKVrffDjf2MK4A5Vp3EDDxVO-4pegI__YaNGWokqa69Wq8hHbkE322PVJ8I-GmpfBsT8LGsMpcI.js" defer="defer"></script> </body> </html>