我有以下代码可以使用,但split()被贬低了,在php 7中不可用,我需要一些帮助。这里的想法是将这段代码插入到我的单曲中。php(在子主题中)。访问单个帖子时,代码将进行检查,以查找帖子的父类别,并分配自定义的单个帖子。php文件。在此代码中,“Parent==”是指定要使用的模板的父类别“/single xxx.php”。我需要帮助来重写它,以便在php 4-7、wordpress 4.0+:
<php?
function get_top_category() {
$category = get_the_category();
$cat_tree = get_category_parents($category[0]->term_id, FALSE, \':\', TRUE);
$top_cat = split(\':\',$cat_tree);
return $parent = $top_cat[0];
}
//echo \'<pre>\';print_r(get_top_category());echo \'</pre>\';
$Parent = strtolower(get_top_category());
if($Parent == "emcp-nur") {
include(get_stylesheet_directory() . \'/single-emcpn.php\');
}
else if($Parent == "emcm-nur") {
include(get_stylesheet_directory() . \'/single-emcmn.php\');
}
else if($Parent == "emcp-tec") {
include(get_stylesheet_directory() . \'/single-emcpt.php\');
}
get_header(); ?>
按照同样的思路,我试图用下面的内容来代替这个,我必须把它放在错误的地方。与上面我放置在get\\u header()上方的代码非常相似,脚本应用的帖子最终会复制一个页面,然后复制下一个页面,因此显然存在错误。下面是实现同样目标的另一次尝试:
if (has_term(\'emcp-nur\', \'category\', $post)) get_template_part(\'single\', \'emcpn\');
else if(has_term(\'emcm-nur\', \'category\', $post)) get_template_part(\'single\', \'emcmn\');
else if(has_term(\'emcp-tech\', \'category\', $post)) get_template_part(\'single\', \'emcpt\');
else get_header(); ?>
但是,由于代码中的错误,该代码导致了相同的问题,即它所应用的帖子复制了显示。