1

我使用 WP All Export 将发票数据导出到我的会计程序,我需要创建一个包含 _billing_company 字段的“客户”字段,以防我有数据或 $_billing_first_name”。“.$_billing_last_name 以防没有公司名称。

功能如下:

<?php
function company_conditioning($_billing_company, $_billing_first_name, $_billing_last_name) {
    if(strlen($_billing_company) < 2) {
        return $_billing_first_name." ".$_billing_last_name;
    } else {
        return $_billing_company;
    }
}
?>

添加导出字段

当我保存函数时,一切正常,但是当我执行结果时,WP All Export 给出“发生未知错误”错误

我注意到当我将多个变量放入函数时会发生什么

比如这个功能就完美了,(如果有公司名就显示,没有就显示OK)

<?php
function company_conditioning($_billing_company) {
    if(strlen($_billing_company) < 2) {
        return 'ok';
    } else {
        return $_billing_company;
    }
}
?>

我需要将它导出为 .xls(它不适用于 XML)

正如我在下面指出的,问题在于 WP All import 不处理函数中的两个变量。所以我在尝试导出编码数据时发现了很大的问题。

问题是您必须调用 wp_postmeta 表中的两个字段。我尝试调用 $post_id,然后使用 get_post 调用这两个字段,但我无法让它工作。

<?php
function cliente_jr( $post_id ) {
    $empresa_jr = get_post( $post_id, 'billing_company', true );
    $nombrefac_jr = get_post( $post_id, 'billing_first_name', true );
    $apellidofac_jr = get_post( $post_id, 'billing_last_name', true );
    if(strlen($empresa_jr) < 2) {
        return $nombrefac_jr." ".$apellidofac_jr;
    } else {
        return $empresa_jr;
    }
}
?>

有任何想法吗?

编辑。另一个例子 如果 $payment_method 是 COD,则输入 $order_total 的值,否则输入 0

4

2 回答 2

0

我已经设法解决了“postmeta”表上的任何字段

您必须始终在“选择要导出的字段”中选择的第一件事是“订单 ID”,无论您将获得什么字段。

在此处输入图像描述

一旦我们有了订单号,我们就可以对我们拥有的所有数据执行不同的调用postmetameta_key场地

例如,在这种情况下,如果客户指定了公司名称,我想获取公司名称,如果没有(公司字段为空)输入他们的姓名和姓氏。

<?php
function cliente_jr( $post_id ) {
    $empresa_jr = get_post_meta( $post_id, '_shipping_company', true );
    $nombrefac_jr = get_post_meta( $post_id, '_shipping_first_name', true );
    $apellidofac_jr = get_post_meta( $post_id, '_shipping_last_name', true );
    if(strlen($empresa_jr) > 1) {
        return $empresa_jr;
    } else {
        return $nombrefac_jr." ".$apellidofac_jr;
    }
}
?>

从那里可以毫无问题地调用 postmeta 表的任何字段,我已将其应用于不同的结果和公式,并且在所有这些字段中都可以完美运行。

我希望它对您将来有用。

于 2021-01-09T20:52:11.493 回答
0

如果客户已注册,我已经能够解决它,主要问题是 WP ALL Export 中的函数不接受多个变量,因此必须从函数中调用结果。

如果客户端注册了,因为我可以从get_user_meta获取数据,但是如果客户端没有注册,就没有获取到billing_company字段

以防任何用户发现它有用。这很完美,如果客户已注册,那么如果 billing_company 字段为空,则显示姓名和姓氏,如果 billing_company 字段有数据,则显示 billing_company

图像

<?php
function cliente_jr( $customer_id ) {
    $empresa_jr = get_user_meta( $customer_id, 'billing_company', true );
    $nombrefac_jr = get_user_meta( $customer_id, 'billing_first_name', true );
$apellidofac_jr = get_user_meta( $customer_id, 'billing_last_name', true );
    if(strlen($empresa_jr) < 1) {
        return $nombrefac_jr." ".$apellidofac_jr;
    } else {
        return $empresa_jr;
    }
}
?>
于 2020-12-18T19:54:09.460 回答