Un utente ha chiesto
Categoria: Custom Product Tabs for WooCommerce di WordPress
Domanda: WP AMP in conflitto con le schede

Ciao! Grazie per il buon plugin. Hai il problema con il plugin WP AMP (https://wordpress.org/support/plugin/amp/).

L’output della scheda non è corretto.

https://www.zipsil.ru/conductive-silicone-emi-rfi-shielding-square-profile/amp/?112

<?php
$tabs = apply_filters( 'woocommerce_product_tabs', array() );
global $wp_query, $post;
$postid = $post->ID;
if ( ! empty( $tabs ) && dima_helper::dima_am_i_true( dima_helper::dima_get_option( 'dima_shop_product_tap_display' ) ) ) { ?>
    <amp-accordion>
		<?php foreach ( $tabs as $key => $tab ) : ?>

            <section>
                <h4><?php echo apply_filters( 'woocommerce_product_' . esc_attr( $key ) . '_tab_title', esc_html( $tab['title'] ), $key ); ?></h4>
                <div>
					<?php
					if ( 'description' == $key ) {
						the_excerpt();
					} else if ( 'reviews' == $key ) {
						$comments_link_url = get_permalink( $postid );
						?>
						<?php if ( $comments_link_url ) : ?>
							<?php $comments_link_text = __( 'Submit Review', 'noor' );
							?>
                            <a class="dima-button fill float-center"
                               href="<?php echo esc_url( $comments_link_url . "#tab-reviews" ); ?>">
								<?php echo esc_html( $comments_link_text ); ?>
                            </a>
						<?php endif;
					} else {
						call_user_func( $tab['callback'], $key, $tab );
					}
					?>
                </div>
            </section>

		<?php endforeach; ?>
    </amp-accordion>
<?php } ?>

Il plugin WP AMP aggiunge un carosello per qualche motivo.

La pagina per cui ho bisogno di aiuto: [log in to see the link]

  • Collaboratore plugin

    (@yikesitskevin)

    Ciao @oleg_yanchuk,

    Mi spieghi qual è il problema? vedo il <amp-accordion> HTML sulla pagina e sembra che funzioni. Non posso dire quale sia il problema.

    Fammi sapere.

    Grazie,
    Kevin.

    (@oleg_yanchuk)

    Ciao Kevin!
    Grazie per questa risposta rapida.

    Sì, l’amp-fisarmonica c’è, ma in amp-fisarmonica, il carosello dell’amplificatore e il prezzo del prodotto sono inseriti per le schede personalizzate. Non dovrebbero esserci un amplificatore a giostra e premi lì.

    Puoi controllare le ultime due schede personalizzate nella pagina dell’amplificatore. Hanno un amplificatore a giostra a fisarmonica. Non dovrebbe esserci un carosello di amplificatori e premi di prodotto là fuori.

    Pagina AMP:
    https://www.zipsil.ru/conductive-silicone-emi-rfi-shielding-square-profile/amp/?11s

    Pagina senza amplificatore:
    https://www.zipsil.ru/conductive-silicone-emi-rfi-shielding-square-profile/

    Si prega di controllare le ultime due schede personalizzate. Sono entrambe schede personalizzate ed entrambe hanno lo stesso problema.

    Grazie,
    Oleg

    Collaboratore plugin

    (@yikesitskevin)

    Ciao Oleg,

    Penso di vedere il problema: le ultime due schede personalizzate ripetono lo stesso contenuto del prodotto? È corretto?

    Non hai impostato un carosello di amplificatori per la scheda (su admin), ma è quello che appare sul front-end. È questo il problema?

    In tal caso, prova ad aggiungere queste funzioni di filtro:

    add_filter( 'yikes_woo_use_the_content_filter', '__return_false' );
    
    add_filter( 'yikes_woo_filter_main_tab_content', 'yikes_woo_custom_tab_content_filter', 10, 1 );
    
    function yikes_woo_custom_tab_content_filter( $content ) {
    
    	$content = function_exists( 'capital_P_dangit' ) ? capital_P_dangit( $content ) : $content;
    	$content = function_exists( 'wptexturize' ) ? wptexturize( $content ) : $content;
    	$content = function_exists( 'convert_smilies' ) ? convert_smilies( $content ) : $content;
    	$content = function_exists( 'wpautop' ) ? wpautop( $content ) : $content;
    	$content = function_exists( 'shortcode_unautop' ) ? shortcode_unautop( $content ) : $content;
    	$content = function_exists( 'prepend_attachment' ) ? prepend_attachment( $content ) : $content;
    	$content = function_exists( 'wp_make_content_images_responsive' ) ? wp_make_content_images_responsive( $content ) : $content;
    	$content = function_exists( 'do_shortcode' ) ? do_shortcode( $content ) : $content;
    
    	if ( class_exists( 'WP_Embed' ) ) {
    
    		// Deal with URLs
    		$embed = new WP_Embed;
    		$content = method_exists( $embed, 'autoembed' ) ? $embed->autoembed( $content ) : $content;
    	}	
    
    	return $content;
    }

    Fammi sapere se hai bisogno di aiuto per applicare queste schede o se ho frainteso il problema.

    Saluti,
    Kevin.

    (@jamesosborne)

    Ciao @yikesitskevin. Sto cercando di riprodurre l’errore dalla mia parte. Il tema che stai utilizzando ha un modello di modalità player AMP personalizzato. Mentre sto controllando, ti dispiace farmi sapere quali altri plugin stai utilizzando e hai testato con un altro tema?

    Collaboratore plugin

    (@yikesitskevin)

    Ciao @jamesosborne, penso che tu stia cercando queste risposte da @oleg_yanchuk, giusto?

    (@oleg_yanchuk)

    Ciao James e Kevin.

    Giacomo.

    1. Sì, sto utilizzando la modalità lettore AMP.

    2. Sono installati molti plugin. Li spegnerò e controllerò che questo è ancora un problema.

    3. Controllerò il problema con un altro tema.

    Kevin, grazie per il codice.
    Proverò il tuo codice e ti terrò aggiornato.

    Oleg

    (@oleg_yanchuk)

    Ciao Kevin!

    Ho inserito il codice che hai fornito in functions.php.
    Ha funzionato! Grazie! È meraviglioso !

    Non vedo più il problema.

    Quindi qual è la soluzione migliore per questo?
    Hai dimenticato il codice?

    Oleg

    Collaboratore plugin

    (@yikesitskevin)

    Lascia il codice lì: questa è la soluzione migliore. Un buon numero dei nostri utenti (che utilizzano anche plug-in per la creazione di pagine) utilizza questo frammento.

    (@oleg_yanchuk)

    Bene! Grazie Kevin!

Hai risolto il tuo problema?

0 / 0

Lascia un commento 0

Il tuo indirizzo email non sarà pubblicato. Required fields are marked *