Forum Replies Created

Viewing 15 replies - 1 through 15 (of 126 total)
  • Forum: Plugins
    In reply to: [AI Engine] Lots of errors
    Thread Starter sandeld

    (@sandeld)

    Yes, there are still issues. I’ve had to roll it back 2 versions and it’s still using GPT-4.

    Thread Starter sandeld

    (@sandeld)

    Thank you! ??

    Thread Starter sandeld

    (@sandeld)

    Hi.

    First, your forum guidelines doesn’t mention anything about premium users. Second, I’m just working on the website, so I don’t have the account login information to open a support ticket.

    Lastly, I made some progress in that, when I add the ACF data directly to the ticket item, I am able to get it into the WooCommerce email. However, that means the client still has to enter the data twice — once for the blog post, and once for the ticket. It’d be nice if they only had to do it once, but I don’t think that’s your problem.

    Thread Starter sandeld

    (@sandeld)

    Thanks for the link. Looks like this is never going to get implemented. What a shame. Can you at least tell me how to correctly hook into this function from functions.php?

    You can see I’ve already edited the $metadata object directly in the plugin code by adding:

    'order_tax' => $order->get_total_tax(),

    But obviously it’s better to leave that alone and call it from the child theme.

    public function generate_payment_request( $order, $prepared_payment_method ) {
    		$settings                              = get_option( 'woocommerce_stripe_settings', [] );
    		$statement_descriptor                  = ! empty( $settings['statement_descriptor'] ) ? str_replace( "'", '', $settings['statement_descriptor'] ) : '';
    		$short_statement_descriptor            = ! empty( $settings['short_statement_descriptor'] ) ? str_replace( "'", '', $settings['short_statement_descriptor'] ) : '';
    		$is_short_statement_descriptor_enabled = ! empty( $settings['is_short_statement_descriptor_enabled'] ) && 'yes' === $settings['is_short_statement_descriptor_enabled'];
    		$capture                               = ! empty( $settings['capture'] ) && 'yes' === $settings['capture'] ? true : false;
    		$post_data                             = [];
    		$post_data['currency']                 = strtolower( $order->get_currency() );
    		$post_data['amount']                   = WC_Stripe_Helper::get_stripe_amount( $order->get_total(), $post_data['currency'] );
    		/* translators: 1) blog name 2) order number */
    		$post_data['description'] = sprintf( __( '%1$s - Order %2$s', 'woocommerce-gateway-stripe' ), wp_specialchars_decode( get_bloginfo( 'name' ), ENT_QUOTES ), $order->get_order_number() );
    		$billing_email            = $order->get_billing_email();
    		$billing_first_name       = $order->get_billing_first_name();
    		$billing_last_name        = $order->get_billing_last_name();
    
    		if ( ! empty( $billing_email ) && apply_filters( 'wc_stripe_send_stripe_receipt', false ) ) {
    			$post_data['receipt_email'] = $billing_email;
    		}
    
    		switch ( $order->get_payment_method() ) {
    			case 'stripe':
    				if ( $is_short_statement_descriptor_enabled && ! ( empty( $short_statement_descriptor ) && empty( $statement_descriptor ) ) ) {
    					$post_data['statement_descriptor'] = WC_Stripe_Helper::get_dynamic_statement_descriptor( $short_statement_descriptor, $order, $statement_descriptor );
    				} elseif ( ! empty( $statement_descriptor ) ) {
    					$post_data['statement_descriptor'] = WC_Stripe_Helper::clean_statement_descriptor( $statement_descriptor );
    				}
    
    				$post_data['capture'] = $capture ? 'true' : 'false';
    				break;
    			case 'stripe_sepa':
    				if ( ! empty( $statement_descriptor ) ) {
    					$post_data['statement_descriptor'] = WC_Stripe_Helper::clean_statement_descriptor( $statement_descriptor );
    				}
    				// other payment methods error if we try to add a statement descriptor in the request
    		}
    
    		if ( method_exists( $order, 'get_shipping_postcode' ) && ! empty( $order->get_shipping_postcode() ) ) {
    			$post_data['shipping'] = [
    				'name'    => trim( $order->get_shipping_first_name() . ' ' . $order->get_shipping_last_name() ),
    				'address' => [
    					'line1'       => $order->get_shipping_address_1(),
    					'line2'       => $order->get_shipping_address_2(),
    					'city'        => $order->get_shipping_city(),
    					'country'     => $order->get_shipping_country(),
    					'postal_code' => $order->get_shipping_postcode(),
    					'state'       => $order->get_shipping_state(),
    				],
    			];
    		}
    
    		$post_data['expand[]'] = 'balance_transaction';
    
    		$metadata = [
    			__( 'customer_name', 'woocommerce-gateway-stripe' ) => sanitize_text_field( $billing_first_name ) . ' ' . sanitize_text_field( $billing_last_name ),
    			__( 'customer_email', 'woocommerce-gateway-stripe' ) => sanitize_email( $billing_email ),
    			'order_tax' => $order->get_total_tax(),
    			'order_id' => $order->get_order_number(),
    			'site_url' => esc_url( get_site_url() ),
    		];
    
    		if ( $this->has_subscription( $order->get_id() ) ) {
    			$metadata += [
    				'payment_type' => 'recurring',
    			];
    		}
    
    		$post_data['metadata'] = apply_filters( 'wc_stripe_payment_metadata', $metadata, $order, $prepared_payment_method );
    
    		if ( $prepared_payment_method->customer ) {
    			$post_data['customer'] = $prepared_payment_method->customer;
    		}
    
    		if ( ! empty( $prepared_payment_method->source ) ) {
    			$post_data['source'] = $prepared_payment_method->source;
    		}
    
    		if ( ! empty( $prepared_payment_method->payment_method ) ) {
    			$post_data['payment_method'] = $prepared_payment_method->payment_method;
    		}
    
    		/**
    		 * Filter the return value of the WC_Payment_Gateway_CC::generate_payment_request.
    		 *
    		 * @since 3.1.0
    		 * @param array $post_data
    		 * @param WC_Order $order
    		 * @param object $source
    		 */
    		return apply_filters( 'wc_stripe_generate_payment_request', $post_data, $order, $prepared_payment_method );
    	}
    Thread Starter sandeld

    (@sandeld)

    Hi @witcher83,

    Actually, if you just google “yith API documentation” and go directly to the link I originally shared, there is absolutely no mention of the validity for “free” vs. “paid.” So anyone landing directly on the documentation could easily assume it works for everything, just as I did….and wasted a LOT of time apparently.

    Is there a reason you’re hiding your documentation? It’s a lazy way of forcing people to upgrade?

    Thread Starter sandeld

    (@sandeld)

    Thanks, that all worked!

    Thread Starter sandeld

    (@sandeld)

    You might want to mention that in the documentation so people (me) don’t waste hours trying to figure it out.

    I noticed you don’t have any Action or Filter documentation either? Is that correct?

    Thread Starter sandeld

    (@sandeld)

    As of now, The Events Calendar does not add noindex tags on pages that have no events. 

    Wait, what? That doesn’t make any sense. You’re contradicting your own code and own documentation with that statement.

    public function issue_noindex() {
     
        if ( ! $wp_query = tribe_get_global_query_object() ) {
            return;
        }
     
        if ( empty( $wp_query->tribe_is_event_query ) ) {
            return;
        }
     
        // By default, we add a noindex tag for all month view requests and any other
        // event views that are devoid of events
        $event_display = get_query_var( 'eventDisplay' );
        $add_noindex   = ( ! $wp_query->have_posts() || 'month' === $event_display );
     
        /**
         * Determines if a noindex meta tag will be set for the current event view.
         *
         * @var bool $add_noindex
         */
        $add_noindex = apply_filters( 'tribe_events_add_no_index_meta', $add_noindex );
     
        if ( $add_noindex ) {
            add_action( 'wp_head', array( $this, 'print_noindex_meta' ) );
        }
    }
    Thread Starter sandeld

    (@sandeld)

    Any idea how much longer it might take to get an answer from the team?

    Thread Starter sandeld

    (@sandeld)

    Here’s a link to a staging site with the default 2023 theme and ONLY The Events Calendar plugin activated.

    The code for an “empty” day looks almost identical to a day with a scheduled event.

    Scheduled event: https://wordpress-792386-3221612.cloudwaysapps.com/community-calendar/2023-02-04/

    Nothing day: https://wordpress-792386-3221612.cloudwaysapps.com/community-calendar/2023-03-01/

    Thread Starter sandeld

    (@sandeld)

    Still waiting on this.

    Any idea why <meta name=’robots’ content=’index, follow> is being inserted on every event page, even when the day has no events?

    Thread Starter sandeld

    (@sandeld)

    Bizarre. Last night when I started the thread, every single page was “noindex,” regardless if there were events or not.

    Today, every single page IS indexed, even if there are no events.

    With an event: https://marinlivingmagazine.com/community-calendar/2023-01-22/

    Without an event: https://marinlivingmagazine.com/community-calendar/2023-01-22/

    Thread Starter sandeld

    (@sandeld)

    Sorry. Of course, you are correct.

    I have submitted the ticket on your website.

    Thread Starter sandeld

    (@sandeld)

    Your support page requires me to have an active subscription, but when I click on “login” or “resubscribe,” there is no place for me to create an account. So I can’t submit anything until that happens.

    Thread Starter sandeld

    (@sandeld)

    Heh. The Loco Translate forum has a “sticky” thread that they will not support individual requests for individual plugins, and already informs us to ask ‘the other’ theme or plugin developer.

    So, here are their overall FAQs for strings not being translated, and here is the FAQ specifically for translations not working.

    Perhaps there’s something in there that your plugin is, or is not, doing?

Viewing 15 replies - 1 through 15 (of 126 total)