Code Monkey home page Code Monkey logo

wordpress-seo's Introduction

Yoast SEO

Build Status Stable Version License Maintainability

Welcome to the Yoast SEO GitHub repository

While the documentation for the Yoast SEO plugin can be found on Yoast.com, here you can browse the source of the project, find and discuss open issues and even contribute yourself.

Installation

Here's a guide on how to install Yoast SEO in your WordPress site.

Want to contribute to Yoast SEO?

Prerequisites

At Yoast, we make use a specific toolset to develop our code. Please ensure you have the following tools installed before contributing.

Getting started

After installing the aforementioned tools, you can use the steps below to acquire a development version of Yoast SEO. Please note that this will download the latest development version of Yoast SEO. While this version is usually stable, it is not recommended for use in a production environment.

Within your WordPress installation, navigate to wp-content/plugins and run the following commands:

git clone https://github.com/Yoast/wordpress-seo.git
cd wordpress-seo

To install all the necessary dependencies, run the following commands:

composer install
yarn
grunt build

Please note that if you change anything in the JavaScript or CSS, you'll have to run grunt build:js or grunt build:css, respectively.

Alternatively, a webpack development server is available. To enable the dev-server, you'll have to add this to your WordPress install's config.php:

define( 'YOAST_SEO_DEV_SERVER', true );

and you can start it by running yarn start in the wordpress-seo folder.

This repository uses the Yoast grunt tasks plugin.

Developing JavaScript dependencies

Yoast SEO uses some JavaScript code that is managed outside of this repository. This code is being maintained in a monorepo: Yoast/javascript. If you need to change anything in one or more of the packages included in the monorepo, you'll need to do the following:

git clone https://github.com/Yoast/javascript.git # Only the first time.
yarn link-monorepo # You will be prompted for the location of your Yoast/javascript clone. This will is "./javascript" if you cloned it inside the wordpress-seo directory. Your preference will be saved in a .yoast file for later use.
grunt build 

This links all Yoast managed JavaScript packages to your installation of the plugin. Most branches on the wordpress-seo repository also exist on the javascript repository. Please find which branch to use in the table below. If the branch you're looking for does not exist, feel free to default to develop (or create the branch yourself if you're making changes).

Yoast/wordpress-seo Yoast/javascript
master master
trunk develop
feature/x feature/x

You can now modify the code of the linked packages directly from the node_modules (as they're now symlinked to your javascript clone) or your javascript directory. Please remember to run a grunt build:js from the wordpress-seo directory after making changes in order to apply those changes to the plugin.

If you don't want to use the latest development version of the Yoast JavaScript packages anymore, you can restore the versions as specified in the package.json by running the following command:

yarn unlink-monorepo
grunt build

Support

This is a developer's portal for Yoast SEO and should not be used for support. Please visit the support forums.

Reporting bugs

If you find an issue, let us know here! Please follow these guidelines on how to write a good bug report.

It may help us a lot if you can provide a backtrace of the error encountered. You can use code in this gist to enable the backtrace in your website's configuration.

Contributions

Anyone is welcome to contribute to Yoast SEO. Please read the guidelines for contributing to this repository.

There are various ways you can contribute:

wordpress-seo's People

Contributors

abotteram avatar afercia avatar andyle2010 avatar atimmer avatar barrykooij avatar bintzandt avatar boblinthorst avatar dannyvankooten avatar diedexx avatar dieterrr avatar echolp avatar felixarntz avatar hansjovis avatar hwinne avatar igorschoester avatar irenestr avatar jcomack avatar johannadevos avatar jrfnl avatar karlijnbok avatar maartenleenders avatar manuelaugustin avatar moorscode avatar nataliashitova avatar omarreiss avatar ramiy avatar rarst avatar stodorovic avatar tacoverdo avatar terw-dan avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.