原来is\\u plugin\\u active是在wp admin/includes/plugin中定义的。php,所以它只能在管理员中使用,除非我调用它。
我需要添加include_once( ABSPATH . \'wp-admin/includes/plugin.php\' );
所以我的最终代码如下所示,我也整理了一下。
add_filter(\'wp_nav_menu_items\',\'add_about_page_to_menu\', 10, 2);
function add_about_page_to_menu( $items, $args ) {
include_once( ABSPATH . \'wp-admin/includes/plugin.php\' );
$url = home_url( \'about\', \'relative\' );
if( $args->theme_location == \'primary\' && is_plugin_active( \'about-page-extension/about-page-extension.php\' )) {
return $items."<li><a href=\'$url\'>About</a></li>";
}
return $items;
}