Drupal

myDropWizard.com: CiviCRM secrets for Drupalers: Screencast of Drupal 8 + CiviCRM Installation

Planet Drupal - 17 January 2018 - 8:13am

We're Drupalers who only recently started digging deep into CiviCRM and we're finding some really cool things! This series of videos is meant to share those secrets with other Drupalers, in case they come across a project that could use them. :-)

You may recall the blog post that David put out way back in August 2017. He gave some very detailed instructions on how you can install CiviCRM on Drupal 8!

We have some new Drupal versions released since August, and we've had some requests to demonstrate how to go through some of the steps. So, I'm going to do just that!

Every step will be followed quite literally. Note that David assumed this was being installed on a development system running Linux. Since I'm running a Mac, this should be a great cross-platform test.

Watch the screencast to see if I run into any issues with the instructions:

Video of CiviCRM secrets for Drupalers: Screencast of Drupal 8 + CiviCRM Installation

Some highlights from the video:

  • Very quick install of Drupal 8 on a Mac running MAMP
  • Download and installation of CiviCRM
  • Brief comments along the way as I follow the steps
  • Finish with a working Drupal 8 + CiviCRM site!

Please leave a comment below!

Categories: Drupal

Matt Glaman: Attributing RSS traffic on your Drupal site using UTM

Planet Drupal - 17 January 2018 - 7:30am
Attributing RSS traffic on your Drupal site using UTM mglaman Wed, 01/17/2018 - 09:30 It seems like RSS is not quite as a buzz as it once was, years ago. There are reasons for that, but I partly believe it is because more services mask direct RSS feed subscriptions in larger aggregate tools. This change also makes it more interesting to get analytics about where that traffic is coming from, and what feed. When I migrated my site to Drupal 8, I decided to take an adventure on adding UTM parameters to my RSS feeds.
Categories: Drupal

Valuebound: Data-binding methods in AngularJS

Planet Drupal - 17 January 2018 - 7:05am

The blog is follow up on our previous post “My First Impression of Learning AngularJS” where I shared my experience of working in AngularJS. This blog is intended to take you one step ahead and have a better understanding of basic operation workflow. In Angular, we have a concept of ‘Data-binding’ that means synchronization of data between a view to model or model to view (technically). 
 

From the business perspective: Change in the logic (backend) impacts front-end (view) and vice versa.

Categories: Drupal

Lullabot: Continuous Integration for Drupal 8 with CircleCI

Planet Drupal - 17 January 2018 - 6:57am

This article is the first in a series about different Continuous Integration implementations for Drupal 8 projects. Each installment will pick a CI technology and go over its pros and cons for implementing the following set of jobs when someone creates a pull request:

  • Run unit and kernel tests.
  • Generate a PHPUnit coverage report.
  • Check Drupal's coding standards.
  • Update the database and run Behat tests.

In this article, we will start with CircleCI, a SaaS platform. Thanks to work initiated by Andrew Berry at drupal_tests—if you maintain a Drupal 8 module, check it out—I can present you a single-command installer to get your Drupal 8 project started with Continuous Integration using CircleCI.

There is a repository that contains the installer script where we are working on the different CI implementations, plus a demo Drupal project to see them in action.

Setup

Here is a clip where I take a vanilla Drupal 8 project created with composer-project, I run the installer and commit the files, and when I allow CircleCI to watch the repository I see the jobs running:

Videos require iframe browser support.

For details on how to run the installation script and connect your repository with CircleCI, have a look at the repository's README.

Killer features

Once you have the setup in place, your project will benefit right away from the following features:

Less infrastructure to maintain

When code is pushed to a GitHub repository, CircleCI takes care of spinning up and tearing down containers for each of the jobs that you have defined in the CircleCI configuration file. CircleCI provides a set of pre-built images for you to use on your project but you can use a custom Docker image if you need it. For example, here is the Dockerfile that the installer script uses:

# This is the parent image, located at https://hub.docker.com/_/drupal FROM drupal:8.4-apache # Install libraries and extensions. RUN apt-get update && apt-get install -y \ imagemagick \ libmagickwand-dev \ mariadb-client \ sudo \ vim \ wget \ && docker-php-ext-install mysqli \ && docker-php-ext-install pdo \ && docker-php-ext-install pdo_mysql # Remove the vanilla Drupal project that comes with the parent image. RUN rm -rf /var/www/html/* # Change docroot since we use Composer's drupal-project. RUN sed -ri -e 's!/var/www/html!/var/www/html/web!g' /etc/apache2/sites-available/*.conf RUN sed -ri -e 's!/var/www!/var/www/html/web!g' /etc/apache2/apache2.conf /etc/apache2/conf-available/*.conf # Install composer. RUN wget https://raw.githubusercontent.com/composer/getcomposer.org/f3333f3bc20ab8334f7f3dada808b8dfbfc46088/web/installer -O - -q | php -- --quiet RUN mv composer.phar /usr/local/bin/composer # Put a turbo on composer. RUN composer global require hirak/prestissimo # Install XDebug. RUN pecl install xdebug-2.5.5 \ && docker-php-ext-enable xdebug # Install Robo CI. # @TODO replace the following URL by http://robo.li/robo.phar when the Robo team fixes it. RUN wget https://github.com/consolidation/Robo/releases/download/1.1.5/robo.phar RUN chmod +x robo.phar && mv robo.phar /usr/local/bin/robo # Install Dockerize. ENV DOCKERIZE_VERSION v0.6.0 RUN wget https://github.com/jwilder/dockerize/releases/download/$DOCKERIZE_VERSION/dockerize-linux-amd64-$DOCKERIZE_VERSION.tar.gz \ && tar -C /usr/local/bin -xzvf dockerize-linux-amd64-$DOCKERIZE_VERSION.tar.gz \ && rm dockerize-linux-amd64-$DOCKERIZE_VERSION.tar.gz # Install ImageMagic to take screenshots. RUN pecl install imagick \ && docker-php-ext-enable imagick Status badges

By adding a CircleCI status badge to your project’s README file, you can check whether the main branch is stable or not:

undefined

This is useful when creating a new release. If the badge is red, then you need to investigate what’s going on. Beware, there is an open bug in CircleCI that may display the green PASSED badge even when one of the jobs in a workflow has failed. Until this gets fixed, click on the badge to double check that everything passes.

Version control

CircleCI’s jobs live within the project repository under the .circleci directory, which makes it easy to track changes in the jobs and make them evolve along with the project.

Intelligent reporting

CircleCI is intelligent at presenting job artifacts. Here are some screenshots:

Failed tests

By storing test results as artifacts, CircleCI can parse them and present them in the browser:

undefined Links to screenshots taken by Behat

By using the Behat Screenshot extension and storing the screenshots as job artifacts, we can see them as a list of links in the browser:

undefined

Here is what we see when we click on the highlighted link above:

undefined Coding standard violations

CircleCI can parse the Code Sniffer report and present a summary of Drupal coding standard violations:

undefined Test coverage reports

By generating an HTML PHPUnit report and exposing it as an artifact, we can see a link to the report at the CircleCI web interface:

undefined

The highlighted link above shows the following report which describes how much of the code is covered by tests:

undefined Running CircleCI jobs locally

CircleCI offers a command line interface for running jobs locally. This is a big time saver as it gives you a chance to test and debug a job locally before pushing your changes.

undefined Ready to take off!

Do you have a Drupal 8 project and want to try Continuous Integration with CircleCI? If so, follow the instructions at the Drupal8CI repository and start writing tests and getting the jobs to pass. If you find issues or add improvements, please either post a comment here or contribute them to the repository. Happy CI-ing!

Acknowledgements
  • Andrew Berry, for teaching me so much about Docker and CircleCI.
  • James Sansbury, for his editorial and technical feedback, plus his Bash-fu.
  • The Draco team at Turner, for allowing me to add continuous integration to their development workflow.
Categories: Drupal

Leander Lindahl: Acquia Dev Desktop, Drush and Drupal 8.4

Planet Drupal - 17 January 2018 - 6:13am
Acquia Dev Desktop, Drush and Drupal 8.4 Leander Lindahl Wed, 01/17/2018 - 15:13
Categories: Drupal

File downloader

New Drupal Modules - 17 January 2018 - 5:27am
Categories: Drupal

Specbee: Drupal and Google Analytics - How to Create Custom Reports for Drupal Website

Planet Drupal - 17 January 2018 - 4:32am
Drupal and Google Analytics - How to Create Custom Reports for Drupal Website
  • By : Ganesh
  • Date :17-01-2018
Categories: Drupal

Overheid.nl Web Metadata Standaard (OWMS) Integration

New Drupal Modules - 17 January 2018 - 4:16am

The De Overheid.nl Web Metadata Standaard (OWMS) is a Dutch standard for information on the internet about the Dutch government. By using this standard, different websites can link their information in a coherent way.

Currently the module provides the following functionality:

- Saving and automatically updating a specific list of values provided by OWMS into configuration entities.
- Exposing the values of those lists in a custom 'OWMS' field.
- Detecting deprecated values used on the website.

Links:

Categories: Drupal

Methaporical Maps

New Drupal Modules - 17 January 2018 - 2:27am

With the Atlas module you can upload images (type: *.jpg, *.png) and mark areas on these images and connect them with a search. Therefore the Solr-Module is required.

Categories: Drupal

Agiledrop.com Blog: AGILEDROP: An ever-expanding field of opportunities for Drupal

Planet Drupal - 16 January 2018 - 7:15pm
There were five pieces altogether written about ambitious Drupal experiences. Each of them focused on a single subject of what constitutes an ambitious digital experience. In the first part of the series, I did my best to explain what ambitious digital experiences mean. The main conclusion, at least in my opinion, is that experience is much more than just mere content. And ambitious digital experiences should come as natural and intuitive as possible. And be focused on the customers, on the users.    Provide valuable and unique digital experiences I have tried to define the term customer… READ MORE
Categories: Drupal

CNPJ - "Cadastro Nacional de Pessoas Jurídicas"

New Drupal Modules - 16 January 2018 - 4:58pm

CNPJ stands for "Cadastro Nacional de Pessoas Jurídicas", and it's the id for Brazilian companies.

This module provides a constraint and a widget for this fields.

Categories: Drupal

Sa11y

New Drupal Modules - 16 January 2018 - 3:43pm

Sa11y allows site-wide a11y checking and per-node inline error reporting to better help you make your site accessible.

Categories: Drupal

Commerce Currency Decimals

New Drupal Modules - 16 January 2018 - 2:59pm

This module changes the currency decimal definitions in a Drupal Commerce 7 shop.
It is a lightweight sibling of Commerce Currency Settings and has only 2 global setting available on admin/commerce/config/currency:

Categories: Drupal

Colorfield: React and Drupal 8 with JSON API 3/3

Planet Drupal - 16 January 2018 - 1:31pm
React and Drupal 8 with JSON API 3/3 christophe Tue, 16/01/2018 - 22:31 This post focuses on translation issues and various pitfalls that you might encounter while building with React and Drupal: internationalization with and without language fallback, include images with images styles, taxonomy filter, fetch data on the route or the component, sort by weight, deploy in production.
Categories: Drupal

Paragraphs Clean

New Drupal Modules - 16 January 2018 - 1:28pm

Tired of your database filling up with orphaned Paragraph entities?
This module is for you.

A single module file with 3 hook implementations, this module implements a naive, rudimentary approach to cleaning up paragraphs.

If you save a node (or any other entity) on which you've removed a reference to a paragraph entity, the paragraph entity will be deleted.

If you don't want to delete orphaned paragraphs, or if you're re-using paragraphs among different entities, then don't install this module.

Categories: Drupal

Custom translation deployments

New Drupal Modules - 16 January 2018 - 12:06pm

Makes it possible to have custom files in your translations directory, and therefore also to deploy translations.

Categories: Drupal

Evolving Web: Drupal 8 Modules We ♥ for 2018

Planet Drupal - 16 January 2018 - 11:00am

With so many shiny new Drupal 8 modules emerging this year, we were hard pressed to pick our recommendations for 2018. It came down to asking ourselves: which modules are we excited about implementing in 2018… the ones that will make our projects better, faster, smarter brighter? Read on for our list of Drupal 8 modules we're excited about.

Configuration Split

The Drupal Configuration Split module makes Drupal 8 configuration management more customizable. This means you can set up some configurations that can be edited on the live site, without interfering with your configuration management workflow. Instead of importing and exporting the whole set of a site’s configuration, the module enables you to define sets of configuration to export to different directories that automatically merge again when they are imported.

Content Workflow

If you’ve shied away from implementing complicated workflows in the past, you’ll enjoy how the Content Workflow module makes it easy to set up a simple workflow. This core module enables you to streamline the content publication process by defining states for content (such as draft, unpublished and published) and then manage permissions around these states.

Deploy

The Deploy content staging module makes it easier to stage and preview content for a Drupal site. It’s often used to deploy content from one Drupal site to another. Redesigned for Drupal 8, the new version is based on the Multiversion and Replication modules, making it more efficient and flexible.

Drupal Commerce

The new full release of Drupal Commerce has us very excited to start building ecommerce sites in Drupal 8. Fully rebuilt for Drupal 8, the new Drupal Commerce module doesn’t presume a specific ecommerce business model, enabling developers to customize the module to suit a merchant’s needs.

JSON API

The JSON API module formats your JSON requests and responses to make them compliant with the JSON API Specification. This module is the key to setting up Drupal as a backend so you can implement the font-end with React or your front-end platform of choice.

Schema.org Metatag

Ramp up your SEO with structured data that helps Google categorize and display your pages. The Schema.org Metatag module allows you to add and validate Schema.org structured data as JASON LD, one of Google’s preferred data formats.

UI Patterns

If you’re looking for a way to implement an ‘atomic design’ in Drupal the Drupal UI Patterns project is a nice option. It consists of six modules that allow you to define and expose UI patterns as Drupal plugins. You can use them as drop-in templates for all entity types — paragraphs, views, field groups and more.

Webform

The Drupal webform module has a new release candidate for Drupal 8. A ton of work has been put into the module; it’s like a whole form-building application inside your Drupal site. Quickly integrate forms into any Drupal 8 website. enables you to build, publish and duplicate webforms. You can also manage and download submissions, and send confirmations to users.

Which Drupal 8 modules are doing it for you?

We’d love to hear about which Drupal 8 modules your team is excited about. Leave us a comment.

 

+ more awesome articles by Evolving Web
Categories: Drupal

Minimal HTML

New Drupal Modules - 16 January 2018 - 10:07am

This module provides the Minimal HTML text format, a rich text (WYSIWYG) format well suited for basic uses like short text fields and admin-configurable text areas.

It allows only a few HTML tags: <a href hreflang> <abbr title> <em> <strong> <cite> <blockquote cite> <code> <ul type> <ol start type> <li> <dl> <dt> <dd>

Categories: Drupal

Fullcalendar Library

New Drupal Modules - 16 January 2018 - 9:44am

This is a utility module that simply provides the fullcalendar (3.x) and fullcalendar (1.x) scheduler libraries to other modules. If either library is not locally installed under /libraries, it will provide it via a CDN.

Categories: Drupal

Manifesto: Looking ahead to Drupalcamp London 2018

Planet Drupal - 16 January 2018 - 6:44am
This year’s Drupalcamp London, a three-day knowledge-sharing conference devoted to all things Drupal, promises to be the biggest and best yet. Taking place at City University from 2nd to 4th March, it’s a must-visit event for anyone with more than a passing interest in the open-source CMS – developers, site builders, vendors, agencies and potential. Continue reading...
Categories: Drupal

Pages

Subscribe to As If Productions aggregator - Drupal