• Подскажите, как правильно делать дезинфекцию в моём случае?
    Есть код:

    $sql = call_user_func_array(
    [ $wpdb, 'prepare' ],
    array_merge(
    array(
    "
    SELECT %i, %i
    FROM %i
    WHERE
    option_name
    IN ( " . join( ', ', array_fill( 0, count( $whereItems ), '%s' ) ) . " )
    "
    ),
    array_merge([$selectItem1, $selectItem2, $table], $whereItems)
    )
    );
    $results = $wpdb->get_results( $sql, 'ARRAY_A' );

    Модератору упорно не нравится, что я использую IN ( » . join( ‘, ‘, array_fill( 0, count( $whereItems ), ‘%s’ ) ) . » ) но как тут иначе сделать, если у меня в запросе после IN может быть от 1 до 100 элементов! Гугл только такие варианты предлагает, а модератор упёрся и говорит:

    The SQL query needs to be included in a wpdb::prepare($query, $args) function. Remember that you will need to include placeholders for each variable within the

    query and include their calls in the second parameter of wpdb::prepare().