$30 off During Our Annual Pro Sale. View Details »

WordPress, du bricolage au déploiement continue !

WordPress, du bricolage au déploiement continue !

WordPress est le CMS le plus utilisé sur le web, comment fiabiliser les développements et automatiser les déploiements sur cette plateforme ?

Les projets WordPress ne sont pas traités avec le même égard au niveau de la qualité du code, parce que c’est « juste » de l’intégration… Pourtant, il est possible de faire de la gestion de dépendance (Composer), des tests (PHPUnit), du code sniffing (PHP_CodeSniffer) et d’appliquer les pratiques du développement logiciel même lorsqu’on utilise ce CMS…

J’aimerais vous montrer comment automatiser votre workflow et comment obtenir un résultat de qualité. Je partagerai ma méthode et les outils que j’utilise de la mise en place du projet jusqu’à la mise en ligne.

Stéphane HULARD

April 28, 2018
Tweet

More Decks by Stéphane HULARD

Other Decks in Programming

Transcript

  1. W P
    W P
    D !
    D !

    View Slide

  2. M ?
    M ?
    Consultant, Formateur, Contributeur.
        

    View Slide

  3. D ?
    D ?

    View Slide

  4. G …
    G …
    … par les tests, et le code sniffing

    View Slide

  5. A W P ?
    A W P ?
    PHPUnit, PHP_CodeSniffer, WordPress-Coding-Standards

    View Slide

  6. U ?
    U ?
    class CustomAttributesTest extends WP_UnitTestCase
    {
    public function test_custom_attributes_are_empty_by_default()
    {
    $payload = wpmautic_get_tracking_attributes();
    $this->assertTrue(is_array($payload));
    $this->assertEmpty($payload);
    }
    }

    View Slide

  7. L ' …
    L ' …
    Un peu de ligne de commande…

    View Slide

  8. G
    G
    composer install

    View Slide

  9. I
    I
    git clone --branch="$WP_VERSION" git://develop.git.wordpress.org/

    View Slide

  10. C …
    C …
    MySQL, wp-config.php
    mysql -u root -e "CREATE DATABASE wordpress_tests;"
    cp wp-tests-config-sample.php wp-tests-config.php
    sed -i "s/youremptytestdbnamehere/wordpress_tests/" wp-tests-config.php
    sed -i "s/yourusernamehere/root/" wp-tests-config.php
    sed -i "s/yourpasswordhere//" wp-tests-config.php

    View Slide

  11. E !
    E !
    vendor/bin/phpunit --bootstrap $WP_DIR/tests/phpunit/includes/bootstrap.php
    vendor/bin/phpcs -n --standard=phpcs.xml

    View Slide

  12. M ,
    M , ?
    ?

    View Slide