enjoylife
  • 0
Новичок

Исправить предупреждение: отсутствует аргумент

  • 0

Я хочу отправить тему на wordpress.org. когда я положил define('WP_DEBUG', true); в моем wp-config.php . моя тема показала некоторые ошибки. но я не знаю, как исправить тему.

В1: Warning: Missing argument 2 for cutstr() in....htdocs\wordpress\wp-content\themes\warm-home\functions.php on line 156 . следующая моя функция.

function cutstr($string, $length) {
         $string =strip_tags($string);
        preg_match_all("/[x01-x7f]|[xc2-xdf][x80-xbf]|xe0[xa0-xbf][x80-xbf]|
[xe1-xef][x80-xbf][x80-xbf]|xf0[x90-xbf][x80-xbf][x80-xbf]|[xf1-xf7][x80-xbf][x80-xbf][x80-xbf]/", $string, $info);  
         for($i=0; $i<count($info[0]); $i++) {
                $wordscut= '';
                $wordscut .= $info[0][$i];
                $j='';
                $j = ord($info[0][$i]) > 127 ? $j + 2 : $j + 1;
                 if ($j > $length - 3) {
                         return $wordscut." ...";
                 }
         }
         return join('', $info[0]);
}
add_action('after_setup_theme','cutstr');

вызвана строка функции: <p><?php echo cutstr($post->post_content,150) ?></p> .нет отсутствующего аргумента 2. почему показывает вышеуказанную ошибку? как это правильно?

Share
  1. do_action( 'after_setup_theme' ); не передает ни одного параметра. Вы вырезаете что-то длиной 0 после настройки темы. Почему?

    Кроме того, ваша регистрация add_action не говорит WordPress, что вам нужны два параметра. По умолчанию используется один параметр.

    Вам вообще не нужен этот звонок. Если вы определите функцию в своем functions.php, она будет доступна в цикле.

    Изучите API плагинов, это не так сложно. 🙂

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

    Если ваша функция делает то, что я думаю, вы можете взглянуть на мою функцию utf8_truncate() . Регулярное выражение не требуется.

    • 0

Оставить ответ

You must login to add an answer.