Задать вопрос
  • Разработка сайта на WordPress и git (github)?

    Evanre
    @Evanre
    Front-end developer
    Если чисто по коду, сам гит у меня лежит в корневой папке WordPress. `.gitignore` файл выглядит примерно вот так:
    # PHPStorm
    .idea
    
    # WordPress
    *.log
    /wp-*.php
    /index.php
    /xmlrpc.php
    /license.txt
    /readme.html
    /sitemap.xml
    /sitemap.xml.gz
    
    /backup*
    
    wp-admin/
    wp-includes/
    
    wp-content/*
    !wp-content/themes/
    wp-content/themes/*
    
    !wp-content/plugins/
    wp-content/plugins/*
    
    !wp-content/themes/ei/
    !wp-content/themes/ei-child/
    
    !wp-content/plugins/realty-export
    
    # Frontend tools
    wp-content/themes/ei-child/node_modules/

    т.е. Вы по умолчанию игнорируете все кроме того, что нужно. По мере разработке можете добавлять или убирать папки.

    По бэкапам.
    Бекап делаю через плагин BackUpWordPress (очень удобная вещь, можно делать бекапы всего сайта и базы по расписанию, Вам на почту приходит письмо с ссылкой на скачивание бекапа), экспорт базы на другой сервер делаю с помощью WP Migrate DB (он не просто заменяет пути в базе но и правит под них сериаллизованые массивы, таким образом некоторые настройки не слетают). Знаю что можно все делать через wp-cli, но он далеко не на каждом сервере стоит, и так уже привычнее. Мне обычно чтобы слить клиентский сайт для работы на локалке даже фтп не нужен, только доступ в админку.

    При работе с сервером заливаю файлы прогой WinSCP, она может как FTP так и SFTP, так же умеет синхронизировать папки (заливать только то, что изменилось), на крупных проектах настраиваю синхронизацию в PHPStorm.
    Ответ написан
    Комментировать
  • Как найти место создания хука woocommerce?

    Хук это другими словами коллбек, его нет, только регистрация имени хука. Но вызов <?php do_action( 'woocommerce_before_cart' ); ?> говорит Вам, что Вы можете в это место подставить свою функцию, например в Вашем functions.php темы, при помощи codex.wordpress.org/Function_Reference/add_action как то так
    function my_woocommerce_before_cart() {
        // some your code
    }
    add_action( 'woocommerce_before_cart', 'my_woocommerce_before_cart' );


    И таким образом, то что Вы напишете в my_woocommerce_before_cart будет выполнено в месте вызова
    <?php do_action( 'woocommerce_before_cart' ); ?> в плагине woocommerce, с приоритетом который вы укажете 3-им параметром add_action, который по умолчанию 10. Чем выше приоритет, тем позже выполниться Ваша функция my_woocommerce_before_cart (если, предположительно, еще кто то - метод либо другой плагин, будет использовать этот же хук.
    Ответ написан
    Комментировать