Как Вы отлаживаете плагины?

Я довольно плохо знаком со сменной авторской разработкой и был нелегко отлаживать.

Я использовал много эха, и это неаккуратно и ужасно.

Я уверен, что существует лучший способ сделать это, возможно, IDE с отладчиком, что я могу выполнить весь сайт во включении плагина?

49
12.08.2010, 02:09
13 ответов

Войдите в wp-config.php и изменение define('WP_DEBUG', false); кому: define('WP_DEBUG', true);. Кроме того, установите Журнал Andrew Nacin плагин Уведомлений Устаревший.

23
19.02.2020, 21:53
  • 1
    С PHP 5.4 + Вы будете, вероятно, наводнены уведомлениями E_STRICT. Бросьте эту суть в папку плагинов и активируйтесь, чтобы удалить Строгие уведомления, деактивироваться для возврата к нормальной службе. –  webaware 17.11.2013, 01:20

Я использую phpED и xdebug, но для меня (и кажется для кого-то еще), невозможно отладить плагины или файл темы! Отладчик только останавливается на точках останова, которые находятся в основных или исходных "базовых" файлах! кто-либо может помочь мне?

0
19.02.2020, 21:53

Я использую плагин за 13$ под названием LogPress, который можно купить на ThemeForest, и это - абсолютная удача. Можно отладить все касающееся их плагинов и сайта. Вход консоли Firebug поддержек и многое другое. Я не могу жить без него, именно так очень я использую этот плагин.

Этот плагин является, вероятно, лучшими деньгами, которые я когда-либо тратил, и это сохранило бесчисленные часы в моей разработке плагинов Wordpress.

0
19.02.2020, 21:53
  • 1
    Ничего себе, я был downvoted для рекомендации, заплаченный плагин которой у меня нет связи со что? Это немного властно, не' это? –  Dwayne Charrington 15.02.2012, 04:53
  • 2
    , я не тот, вниз голосующий, но я не удивлен. Вы используете слова, как будто Вы пытаетесь продать плагин. Рекомендация вещей прекрасна, но продвигающий навязывание товара как "абсолютная удача". Люди ненавидят объявления. Просто снизьте язык, и рекомендация выступит за себя. –  icc97 27.11.2016, 19:01

Krumo - стилизованные php отлаживают класс

Другой действительно хорошей вещью является "krumo" php класс. Это реализовано в ½ минуты и предлагает простой способ отладить весь вид переменных:

  • объекты,
  • массивы,
  • строки/плавание/целое число/и т.д.

Плюс он помогает с обратным прослеживанием, загруженными классами шоу или включенными файлами и всем по требованию.

Плюс он СВОБОДЕН!

Скачать

Krumo @sourceforge

1
19.02.2020, 21:53

Не то, чтобы плохо также: Eclipse Это близко к PhpStorm + свободно.

2
19.02.2020, 21:53

Существует два IDE, которые я могу рекомендовать, и я использовал обоих экстенсивно: PhpED (только Windows) и PhpStorm+XDEBUG (Mac, Windows и Linux.) я нахожусь на Mac теперь, так может только использовать последнего.

Они оба КАЧАЮТСЯ! Хорошие новости, что PhpStorm составляет 49$ до сентября 2010 и только 99$ после этого. Если бы я был в Windows и должен был выбрать снова, не уверенный, который я выбрал бы.

Откровенно я не могу не чувствовать, что любой сменный разработчик, не использующий один из этих двух инструментов, с серьезными физическими недостатками, особенно если они относительно плохо знакомы с разработкой плагинов WordPress.

1
19.02.2020, 21:53

Я использую IDE Aptane на Linux и UltraEdit в Windows, и у этого также есть PHP-синтаксический-анализатор. Кроме того, я просматриваю все подсказки от xDebug с константой WP_DEBUG определенный в wp-config.php.

См. также мое сообщение по этой теме и не стесняйтесь комментировать и давать обратную связь о Ваших средствах разработки.

3
19.02.2020, 21:53

Я записал, что немного класса для делает файл журнала, очень полезно, когда Вы отлаживаете вызовы ajax.

http://github.com/hunk/Magic-Fields/blob/master/tools/debug.php

Вы только должны сделать что-то как:

Отладка:: журнал ("Это - сообщение отладки");

Когда та строка будет выполнена, сообщение будет добавлено в файле журнала, и после этого можно использовать команду хвоста (при использовании оперативной системы стиля некоторого Unix),

хвост-f mylogfile.log

Если можно передать этой функции массив или объект также.

обратите внимание, что Вы должны изменить строку 20 для пути, где Вы хотите, сохраняют Ваш файл журнала

5
19.02.2020, 21:53

Я отлаживаю старомодный путь, error_log()луг и var_dumpлуг. Я нахожу, что это - самый эффективный путь ко мне, у меня есть несколько функций обертки для обработки различных типов данных, как error_logмассивы луга и объекты могут быть болью. Кроме того, использование print_r() в может быть хитрым для чтения, когда это не находится в a <pre>. Я имею tj_log() для регистрации ошибок, и tj() для проявления вывода (который в основном показывает любой тип данных презентабельным способом:

function tj( $code ) {

    ?>
    <style>
        .tj_debug { word-wrap: break-word; white-space: pre; text-align: left; position: relative; background-color: rgba(0, 0, 0, 0.8); font-size: 11px; color: #a1a1a1; margin: 10px; padding: 10px; margin: 0 auto; width: 80%; overflow: auto; -moz-box-shadow:0 10px 40px rgba(0, 0, 0, 0.75); -webkit-box-shadow:0 10px 40px rgba(0, 0, 0, 0.75); -moz-border-radius: 5px; -webkit-border-radius: 5px; text-shadow: none; }
    </style>
    <br /><pre class="tj_debug">

    <?php
    if ( is_null( $code ) || is_string($code) || is_int( $code ) || is_bool($code) || is_float( $code ) ) :
        var_dump( $code );

    else :
        print_r( $code );

    endif;

    echo '</pre><br />';

}

function tj_log( $code ) {

    if ( is_null( $code ) || is_string($code) || is_int( $code ) || is_bool($code) || is_float( $code ) ) :
        $code = var_export( $code, true );

    else :
        $code = print_r( $code, true );

    endif;

    error_log( $code );

}

Таким образом я просто делаю: tj( $current_user ); или что бы то ни было.

6
19.02.2020, 21:53

После переделывания многого IDE я приспособился к простому Блокноту ++ с ультраспециализированной цветовой схемой Подсветки синтаксиса.

У меня есть макрос, настроенный таким образом, что, когда я поразил Shift-Ctrl-X, следующий код производится, где мой курсор:

echo "<pre>";
var_dump($);
echo "</pre>";
exit();

Это просто, но я могу обычно выслеживать 90% своих ошибок с этим макросом плюс включенный WP_DEBUG.

6
19.02.2020, 21:53
  • 1
    Хорошее перемещение. Горячие клавиши клавиатуры в скале редакторов! –  hakre 25.08.2010, 23:59
  • 2
    я предпочитаю вывод, данный print_r($var, true) вместо var_dump. –  brasofilo 29.01.2013, 23:48

Используйте xdebug + NetBeans IDE. Когда полностью настроено - который легко сделать - можно установить точки останова в плагине и наблюдать переменные в точках останова. Я думаю, что это - лучший способ отладить плагины или любые php приложения в этом отношении.

10
19.02.2020, 21:53

Если Вы печатали ошибки, то x-отладка является блестящим расширением PHP, которое добавляет современные следы к PHP.

При попытке разработать то, что продолжается, где нет никаких ошибок, мой любимый подход должен определить функцию, которая регистрирует ее вывод в файл. Таким образом, я делаю plog ($variable), и это появляется в файле журнала, который я могу затем исследовать. Это особенно полезно, когда Вы пытаетесь разработать то, что произошло, прежде чем заголовок () называют, или другие ситуации, где Вы не можете распечатать к STDOUT.

12
19.02.2020, 21:53

Я рекомендую проверить FirePHP. Можно отправить информацию об отладке в Firebug Firefox по HTTP-заголовкам, который обычно делает для более чистого вывода отладки.

2
19.02.2020, 21:53

Теги

Похожие вопросы