Ich habe ein Problem, bei dem der Shortcode nur wiedergegeben und nicht ausgeführt wird, dh hier ist, was ich tatsächlich auf meiner Webseite sehe:
[ajax_filter_posts per_page=”10″]
Hier ist meine function.php-Datei http://termbin.com/v6v5
//enqueue and localizing the Javascript.
function assets() {
wp_enqueue_script('ajax_filter_post_mdu', get_template_directory_uri() . '/js/ajax-filter-posts.js', ['jquery'], null, true);
wp_localize_script( 'ajax_filter_post_mdu', 'bobz', array(
'nonce' => wp_create_nonce( 'bobz' ),
'ajax_url' => admin_url( 'admin-ajax.php' )
));
}
add_action('wp_enqueue_scripts', 'assets', 100);
So rufe ich den Shortcode in meiner persönlichen category-template.php auf http://termbin.com/8r3x
<?php echo do_shortcode('[ajax_filter_posts per_page="10"]'); ?>
Soweit ich weiß, mache ich etwas falsch, vielleicht im Zusammenhang mit der Enqueue und / oder der Lokalisierung, aber ich verstehe nicht, wo der Fehler liegt. Außerdem wird das Javascript ordnungsgemäß geladen, da sich der Browser nicht darüber beschwert, dass die Datei nicht gefunden wurde.
Auch in meiner Template-category.php-Datei rufe ich die Funktion zum Beispiel direkt so auf:
<?php $a = array('post_tag', false, false);
$pub_tag = vb_filter_posts_sc( $a );
echo $pub_tag;
?>
Es funktioniert richtig…
Ich habe das 2016 WordPress eingebaute Theme gegabelt und von hier aus gehackt, habe ich irgendwo einen Konflikt?
Ich habe so viel wie möglich gesucht, aber ich kann es nicht klären.
Kann ich den Code sehen, in dem Sie den Shortcode verwendet haben, möglicherweise in Ihrer Vorlagendatei?
– Jamu
22. Dezember 2016 um 3:14 Uhr
Können Sie die wesentlichen Teile Ihres Codes in der Frage posten?
– Panda
22. Dezember 2016 um 3:25 Uhr
Ich habe meinen Beitrag mit dem richtigen Link für die Kategorievorlagendatei bearbeitet.
– Matthieu Ducorps
22. Dezember 2016 um 3:29 Uhr
@Panda Die Sache ist, ich bin mir nicht sicher, ob nur mein Code das Problem ist oder ein potenzieller Konflikt mit dem anderen Teil der Codes, deshalb habe ich den Teil übernommen, um alles zu posten. Aber hier ist der Stripdown, den ich Enqueue geben und lokalisieren kann pastebin.com/xRD0Janv
– Matthieu Ducorps
22. Dezember 2016 um 3:38 Uhr
@MatthieuDucorps Ja, es ist besser, es direkt in der Frage zu posten
– Panda
22. Dezember 2016 um 3:39 Uhr