我有非常简单的自定义模板。当我尝试从我的php程序中执行do_shortcode时,我得到了致命的错误:
<?php echo do_shortcode('[shortcodename]'); ?>
( ! ) Fatal error: Call to undefined function php do_shortcode() in /var/www/wp/wp-content/themes/musustatymai/category.php on line 17
Call Stack
# Time Memory Function Location
1 0.0000 233208 {main}( ) ../index.php:0
2 0.0001 233640 require( '/var/www/wp/wp-blog-header.php' ) ../index.php:17
3 0.0376 2924360 require_once( '/var/www/wp/wp-includes/template-loader.php' ) ../wp-blog-header.php:16
4 0.0387 2938176 include( '/var/www/wp/wp-content/themes/musustatymai/category.php' ) ../template-loader.php:75
我的模板有什么问题,因为我知道不需要手动加载wordpress类来访问方法。我也试过使用包含。
wp-includes/shortcodes.php
但是得到同样的错误。
答案 0 :(得分:1)
请确保您的帖子中也有写/加载[shortcodename],因为仅在模板中编写它不起作用。
j这只是在循环开始时在帖子中搜索短代码,以便将短代码放在别处。
这可以解释更多: https://ardamis.com/2011/06/02/fix-for-php-fatal-error-get_header-in-wordpress/