首先,我使用高级自定义字段插件,并且我使用了转发器。我有一个自定义帖子类型,在按下"发布"在创建新帖子时,它的作用是在我的转发器字段中添加一行。
Basiclly它从其他字段获取信息,并通过进行一些计算得出行创建的必须具有的正确信息。
这是我的功能:
function investment_save($post_id)
{
$post = get_post();
$poststat = get_post_status($post_id);
$fecha = current_time(d-M-Y);
$fecha2 = "Inversión ".$fecha;
if($poststat == "publish" && !have_rows('datos_especificos'))
{
remove_action( 'save_post', 'investment_save' );
$my_post = array(
'ID' => $post_id,
'post_title' => $fecha2,
);
wp_update_post( $my_post );
$fech = get_field('fecha_de_inicio_de_la_inversion');
$sald = get_field('monto_de_la_inversion');
$tasa = get_field('tasa_de_interes');
$cap = get_field('uso_de_interes');
$elsald0 = $tasa/12*0.01*$sald;
$elsald=number_format($elsald0,2);
if($cap=="pagar")
{
$cap2=$elsald;
$cantr=0;
}else{
$cap2=0;
$cantr=$elsald;
}
$sf = $sald+$cantr;
$field_key = "datos_especificos";
$value = get_field($field_key, $post_id);
$value[] = array("fecha" => $fech,
"saldo" => $sald,
"inversion_en_el_periodo" => "0",
"interes_causado_en_el_periodo" => $elsald,
"cantidad_pagada" => $cap2,
"cantidad_reinvertida" => $cantr,
"saldo_final" => $sf);
update_field( $field_key, $value, $post_id );
}
}
add_action( 'save_post', 'investment_save' );
这是正常的,但是,我有一个新的任务,每次我按更新,我必须检查所有行中$ cr + $ cp是否等于$ icelp,如果不是,我必须调整它们的值,所以这是我想要使用的代码类型:
$sum = $cp + $cr;
if($sum>$icelp)
{
$dif=$sum-$icelp;
if($cp>=$cr)
{
$cp=$cp-$dif;
}else
{
$cr=$cr-$dif;
}
}
if($sum<$icelp)
{
$dif=$icelp-$sum;
if($cp>=$cr)
{
$cr=$cr+$dif;
}else
{
$cp=$cp+$dif;
}
}
我尝试使用&#34; else&#34;,也使用&#34; if&#34;,但我无法使其正常工作。请有人帮助我,我已经打了好几天