在wordpress中显示分类法的父级时,我有一个小问题。(CPT=property and tax = property_city)
我做了一些研究,想知道该怎么办。
但我不太明白如何显示它们。
我给你举个例子,你会很快明白的。
what I have (not actual shortcode or any code! Just dynamic tag term showing taxonomy without parent)
what I want to do
理想的做法是在短代码中显示它们,所以我会在需要的地方添加它们。
我测试了这个方法,但显然不起作用。。
我想我还是不明白。。
function taxonomy_hierarchy() {
global $post;
$taxonomy = \'property_city\'; //Put your custom taxonomy term here
$terms = wp_get_post_terms( $post->ID, $taxonomy );
foreach ( $terms as $term )
{
if ($term->parent == 0) // this gets the parent of the current post taxonomy
{$myparent = $term;}
}
echo \'\'.$myparent->name.\'\';
// Right, the parent is set, now let\'s get the children
foreach ( $terms as $term ) {
if ($term->parent != 0) // this ignores the parent of the current post taxonomy
{
$child_term = $term; // this gets the children of the current post taxonomy
echo \'\'.$child_term->name.\'\';
}
}
}
add_shortcode( \'child-parent\', function () {
$content = "echo \'\'.$child_term->name.\'\' echo \'\'.$myparent->name.\'\'";
return $content;
} );
此处找到的代码:
linkUPDATE 04/01/2021
感谢StefI对我的循环和单个帖子进行了测试,效果很好。
function taxonomy_hierarchy() {
global $post;
$post_id = $post->ID;
$return = \'\';
$terms = wp_get_post_terms( $post->ID, \'property_city\' ); //Put your custom taxonomy term here
foreach ( $terms as $term ) {
// this gets the parent of the current post taxonomy
//attempt to make terms clickable
$term_link = get_term_link( $term );
if ($term->parent != 0) {
$return .= $term->name. \', \' . get_term( $term->parent, \'property_city\' )->name;
} else {
$return .= $term->name;
}
}
return $return;
}
add_shortcode( \'city-area\', \'taxonomy_hierarchy\' );
最终理解了如何进行短代码及其背后的逻辑。当我试图理解php背后的逻辑时,我忘了提到术语
clickable get_term_link 我应该可以
enable and disable 他们(父母或子女或两者)使用//"E;(可选)
How to do that ?我已经有了这段代码,它可以将它们重定向到我的自定义请求(例如elementor builder内部),因为快捷码不可单击,所以对它们不起作用。。
add_filter (\'term_link\', function ($ termlink, $ term, $ taxonomy) {
// taxonomy city
if (\'property_city\' == $ taxonomy) {
$ termlink = trailingslashit (get_home_url ()). \'property /?_city =\'. $ term-> slug;
}
return $ termlink;
}, 10, 3);
想了想,如果有一天我需要这样的东西。。。
如何制作
flexible 并显示可用的术语
hierarchically?我想这个
WordPress: Get taxonomy hierarchy, including children
与我的问题有关联吗?
但我无法拼凑出谜团
谢谢你的耐心