Skip to content
Branch: master
Find file Copy path
Find file Copy path
Fetching contributors…
Cannot retrieve contributors at this time
172 lines (115 sloc) 5.45 KB

Contributing to CC WordPress Plugin

Thank you for your interest in contributing to CC WordPress Plugin! This document is a set of guidelines to help you contribute to this project.

Code of Conduct

By participating in this project, you are expected to uphold our Code of Conduct.

Project Documentation

Please consult the README for the complete project documentation.

How to Contribute

Make sure you have gone through our general Contributing Code guidelines on the Creative Common Open Source website.


Master branch is for the releases. Development will be done in the development branch. Occasionally other branches may be available to test new features or play with new ideas, but they may be deleted anytime so don't rely on those branches. To start contributing code, checkout the develop branch.

WordPress Coding Standards

Creative Commons plugin for WordPress follows WordPress Coding Standards and WordPress Documentation Standards. Before pushing your work/contribution, make sure it closely follows these standards otherwise it will not be accepted. We use a PHP_CodeSniffer setup with 'WordPress' sniff to check the code against the standards.

Recommended Setup for WordPress Coding Standards

If you are not setup to detect WPCS errors, consider the following steps.

  1. Install Composer

    Make sure that you have the current version of PHP installed. Then the first step is to install Composer. Install it Globally by following its documentation for your particular OS.

  2. Install PHP_CodeSniffer

    Install PHPCS by running the following command in your terminal:

    composer global require squizlabs/php_codesniffer
  3. Confirm Installation

    Check your installation by which phpcs, You should get the path to the phpcs executable. If you don't get anything for which phpcs, you need to add this to your .zshrc or .bash_profile (or your shell’s own profile file) so it will make terminal look in that folder too:

    export PATH="$HOME/.composer/vendor/bin:$PATH"
  4. Setup WPCS

    Clone the official WordPress Coding Standards repository in your home folder. To do so, run the following commands:

    git clone wpcs
  5. Tell PHPCS about this directory

    We need to add the ~/wpcs folder, where we cloned wpcs, to the installed paths of phpcs. Replace the path with the path of your wpcs directory:

    phpcs --config-set installed_paths /Users/your-username/wpcs
  6. Check Installation

    Confirm that it is working by running the following command:


    The output should be:

    The installed coding standards are PEAR, Zend, PSR2, MySource, Squiz, PSR1,
    PSR12, WordPress-VIP, WordPress, WordPress-Extra, WordPress-Docs and

    If it does not include the WordPress Standards, most probably the installed_paths config option is wrong. Make sure that it points to the right directory.

  7. Visual Studio Code Workflow

    To configure VSCode so that it may report errors right in the editor, install phpcs extension. Open User Settings and add the following settings:

    "phpcs.executablePath": "/usr/local/bin/phpcs",
    "phpcs.standard": "WordPress"

    Now, phpcs will report errors inside VSCode. If you are using some other editor, consult its documentation. Once there are no reported errors in your fix, you are good to go.

Contributing to Gutenberg Blocks

CC plugin for WordPress uses Gutenberg blocks built by create-guten-block tool. If you are interested, you can read its detailed and well-written documentation. If you want to test/make changes to these blocks, follow the following steps.

  1. Setup npm

    First off, make sure you have Node version 8+ and npm 5.3 or more. Clone the repository and move to the branch which houses the blocks. In that directory, open your terminal and run:

    npm install
  2. Start Development

    After the install is completed run the following command:

    npm start

    This will compile and run the block in development mode. It also watches for any changes and reports back any errors in your code. Now, you can make changes and test them.

  3. Build the Blocks

    Once your development is done, make sure to run this:

    npm run build

    It optimizes and builds production code for your block inside dist folder.

Questions or Thoughts?

Talk to us on our developer mailing list or Slack community.

You can’t perform that action at this time.