Ошибка после изменения пользовательского канала xml с помощью функции - PullRequest
0 голосов
/ 30 октября 2018

Когда я использую плагин в WordPress для создания пользовательского канала XML, у меня есть возможность вставлять пользовательские функции. Например, мне нужно другое поле, когда клиент вводит другой адрес доставки.

При выполнении я получаю следующую ошибку:

PHP Parse error: syntax error, unexpected ')' in .../wp-content/plugins/wp-all-export-pro/libraries/WpaeXmlProcessor.php(510) : eval()'d code on line 1\n.

Функция выглядит следующим образом:

function get_order_item_lines( $skus = '', $qty = '', $id = '', $breedte = '', $lengte = '' ){
    $skus = preg_replace('/\D/', '', $skus);
    $xml = '';
    if ( !empty( $skus ) && is_array( $skus ) ){
        foreach ( $skus as $key => $sku ){
            $xml .= "**LT**item**GT**";
            $xml .= "**LT**EAN**GT**" . $sku . "**LT**/EAN**GT**";
            $xml .= "**LT**aantal**GT**" . (empty($qty[$key]) ? "" : $qty[$key]) . "**LT**/aantal**GT**";
            $xml .= "**LT**productmaatmat**GT**" . (empty($id) ? "" : $id) . "**LT**/productmaatmat**GT**";
            $xml .= "**LT**breedte**GT**" . (empty($breedte[$key]) ? "" : $breedte[$key]) . "**LT**/breedte**GT**";
            $xml .= "**LT**lengte**GT**" . (empty($lengte[$key]) ? "" : $lengte[$key]) . "**LT**/lengte**GT**";
            $xml .= "**LT**/item**GT**";
        }
    } else {
            $xml .= "**LT**item**GT**";
            $xml .= "**LT**EAN**GT**" . $skus . "**LT**/EAN**GT**";
            $xml .= "**LT**aantal**GT**" . ( empty( $qty ) ? "" : $qty ) . "**LT**/aantal**GT**";
            $xml .= "**LT**productmaatmat**GT**" . ( empty( $id ) ? "" : $id ) . "**LT**/productmaatmat**GT**";
            $xml .= "**LT**breedte**GT**" . ( empty($breedte) ? "" : $breedte ) . "**LT**/breedte**GT**";
            $xml .= "**LT**lengte**GT**" . ( empty($lengte) ? "" : $lengte ) . "**LT**/lengte**GT**";
            $xml .= "**LT**/item**GT**";
    }
    return $xml;
}

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

Есть предложения?

1 Ответ

0 голосов
/ 30 октября 2018

Извините, ошибка с моей стороны. В новом домене поля breedte en lengte отсутствовали (никогда не создавались в базе данных). Поэтому эта ошибка произошла.

После размещения одного заказа с указанными размерами код работал.

Спасибо за ваши усилия, тем не менее!

...