Skip to content

Drupal 8 Site Setup

Jami Dwyer edited this page May 31, 2016 · 20 revisions

Set up Robo like NCYL did

Set up like Fighting Censorship did

Alternatively, you can use the process detailed in this site's README.md: https://github.com/thinkshout/fightcensorship/

File-based config

To save config changes automagically, use the following for sites/default/config/config.services.yml and sites/default/settings.php: https://gist.github.com/Greg-Boggs/cfa837b4efddf268916ba30ac07d9a8d#file-config-services-yml

Add modules

Add modules to composer.json like so:

    "require": {
        "composer/installers": "^1.0.21",
        "wikimedia/composer-merge-plugin": "~1.3",
        "drush/drush": "~8.0",
        "drupal/console": "~0.10",
        "drupal/core": "8.1.0",
        "drupal/admin_toolbar": "8.1.14",
        "drupal/ctools": "8.3.0-alpha25",
        "drupal/metatag": "8.1.0-beta7",
        "drupal/pathauto": "8.1.0-alpha3",
        "drupal/simple_sitemap": "8.2.2",
        "drupal/adminimal_theme": "^8.1"
    },

404 Page

  • If you’re using a migration, you can use it to create a basic 404 page. Or, you can create a new item with the “page” content type. Either way, set the URL to something like 404 or 404-error.
  • After you've created a page that maps to the URL "404" (or similar), go into admin/config/system/site-information.
  • Add "404" (or the URL you used) to the default 404 settings.

Favicon

This is under Appearance Settings. admin/appearance/settings

Front/Home page

You can add a page and then set that node id as your default home page.

If you choose not to, you can get rid of the default home page content by making the following changes in config/views.view.frontpage.yml:

-          content: 'No front page content has been created yet.'
+          content: ''
        node_listing_empty:
          admin_label: ''
          empty: true
          field: node_listing_empty
          group_type: group
          id: node_listing_empty
          label: ''
          relationship: none
          table: node
          plugin_id: node_listing_empty
          entity_type: node
-          title: 'Welcome to [site:name]'
+          title: ''
        page_1: page_1

Set Custom Theme

  • Go into admin/appearance.
    • Select “Enable and set default” on custom theme.

Set default time zone

Set at admin/config/regional/settings

WYSIWYG config

Add text formats at admin/config/content/formats/manage/add

Create a custom block

Make a new module (drupal generate:module if drupal console is working for you).

In the .module file, add code like the following: https://www.drupal.org/node/2101565

Place blocks

At admin/structure/block, click Place Block in the region where you'd like the block to appear.

Making file-based config work on Pantheon

After you push your changes (in Git mode), you'll need to change to SFTP mode (which makes your config folder writeable) and then drush @pantheon.[SITENAME].dev cr.

Make titles configurable

Enable the contrib Title module. The checkbox to make titles for a given content type configurable in the UI is at the bottom of admin/structure/types/manage/page.

Translation

Enable the Language, Content Translation, Interface Translation, and Configuration Translation modules.

Add languages at admin/config/regional/language.

Set up language detection at admin/config/regional/language/detection.

Enable translation for various entity types at admin/config/regional/content-language.

Add a Language Switcher block, if you want one.

Clone this wiki locally