$ loop = new WP_Query (pole ("post_type" => "special_offers",> "posts_per_page" => -1));
zatiaľ čo ($ loop-> have_posts ()): $ loop-> the_post ();
echo do_shortcode ("[my_special_offer_item]");
endwhile;
wp_reset_query (); `
môj krátky kód nie je zvyšovanie v slučke v IE, Chrome & Safari, preto sú všetky duplikáty ... ale vnútri FF funguje perfektne.
odpovede:
1 pre odpoveď č. 1Prepáčte, že vás spochybňujem, ale ja si to ťažko verím do_shortcode
funguje odlišne na základe prehliadača. Vzhľadom k tomu, že sa jedná o PHP kód, je spustený pred tým, než sa dostane do prehliadača, a zatiaľ čo PHP kód môže skutočne urobiť niečo iné na základe agenta používateľa, je to veľmi nepravdepodobné, že je to tak.
Ak však existujú nejaké problémy s vykresľovaním samotného kódu, môžete v prehliadačoch vidieť niečo iné, ale to je niečo bližšie k samotnej šablóne / téme namiesto kódu.
Čo sa týka do_shortcode, upozorňujeme, že dokumentácia Codexu (https://codex.wordpress.org/Function_Reference/do_shortcode) ani zdrojový kód (https://core.trac.wordpress.org/browser/tags/4.2.2/src/wp-includes/shortcodes.php#L189) Zdá sa, že sa automaticky zvyšuje.
Možno, že by ste mali vstreknúť dynamikupremenná do nej, aby sa rôzne krátke vyhľadávanie v závislosti na post? Ak áno, skontrolujte variabilnú interpoláciu reťazca alebo len zreťazenie Tu je príklad (https://wordpress.org/support/topic/how-to-use-echo-do_shortcode-with-dynamic-variable)
<?php echo do_shortcode("[walkscore ws_wsid="example" ws_address="".get_post_meta($post->ID, "pyre_full_address", true).""]"); ?>
Dúfam, že to pomôže.