Introduction
我是一个对PHP一无所知的图形设计师,但在这种特殊情况下,我需要动手,我需要编码神的帮助。我一直在努力解决这个问题,读了一些关于它的书,尝试了一些东西,但我可能太笨了,想不出来。
Toolkit
我有一个Wordpress网站,我正在使用Elementor Pro来构建它。我正在使用插件;CPT-UI“;拥有自己的自定义帖子类型,以及;CPT分类;能够将一个CPT用作另一个CPT的分类法。从Elementor,如果我能够在;“代码段”;插件。
The circumstances
也就是说,我会准确描述发生了什么:我有一个;“项目”;CPT和a“;“设计”;CPT,两者都是CPT。同时,“;“项目”;是与“相关的分类法”;“设计”;,这意味着我可以将属于同一个大“的许多设计分组。”;项目;。例如,如果我设计了可口可乐的标志,并且还设计了带有该标志的名片,那么这两种设计都将被归类为分类法(也称为CPT),称为;新Coca标识”;。因此,从内部;新古柯标识”;页面(实际上是应用于所有“项目”的动态模板)我可以获取所有将当前循环id(本例中为“New Coca Identity”)指定为其分类的设计。
Should be something like this (I believe)
这就是我想到的。。。
// Create the action to call this query from Elementor
add_action(\'elementor_pro/posts/query/projects_designs_query\', function($query)
{
// Get current meta Query
$meta_query = $query->get( \'meta_query\' );
// If there is no meta query when this filter runs, it should be initialized as an empty array.
if ( ! $meta_query ) {
$meta_query = [];
}
// Append our meta query
$tax_query[] = [
\'taxonomy\' => \'projects\',
\'field\' => \'term_id\',
\'terms\' => \'HERE SHOULD BE THE DYNAMIC ID I GUESS\',
];
$query->set( \'meta_query\', $meta_query );
} );
SO网友:Ernest
我成功了!我将与大家分享我的做法,以防像我这样缺乏php知识的人也出现在同一地点。
add_action(\'elementor_pro/posts/query/projects_designs_query\', function($query)
{
$post_id = get_the_ID();
$meta_query[] = [
\'post_type\' => \'designs\',
\'taxonomy\' => \'projects\',
\'value\' => $post_id,
\'compare\' => \'in\',
];
$query->set( \'meta_query\', $meta_query );
} );
这样做的目的是首先获取循环中当前帖子的ID(在我的例子中,这是一种项目自定义帖子类型)。然后获取属于同一项目(当前帖子)的所有帖子(使用自定义帖子类型设计)。