自定义发布类型的GET_POSTS和自定义分类

时间:2018-07-02 作者:odedta

我正在尝试提取具有特定自定义分类的自定义帖子类型

这就是我所尝试的:

$args = array(
            \'posts_per_page\'    => -1,
            \'post_type\'         => \'products\',
            \'post_status\'       => \'publish\',
            \'tax_query\'         => array(
                array(
                    \'taxonomy\'  => \'subjects\',
                    \'field\'     => \'name\',
                    \'terms\'     => $shortcode_atts[\'subject\'],
                ),
                array(
                    \'taxonomy\'  => \'plans\',
                    \'field\'     => \'name\',
                    \'terms\'     => $shortcode_atts[\'plan\'],
                ),
            ),
        );
$shortcode\\u atts如下所示:

string(80) "Array
(
    [subject] => אינטרנט
    [plan] => מסלול 10 גיגה 
)
"
也就是说,这是希伯来语,主题=互联网,计划=10giga

我还尝试使用operator,不确定在哪个位置添加它,所以我在所有位置都尝试了,但都不起作用。有人能告诉我怎么拉这些柱子吗?

此查询返回所有cpt,不包含我想要的筛选。

编辑:shortcode\\u atts是:

function show_product( $atts, $content = null, $tag ) {
    $shortcode_atts = shortcode_atts( array(
        \'subject\' => \'\',
        \'plan\'  =>  \'\'
    ), $atts );
}
add_shortcode( \'show_product\', \'show_product\' );
谢谢!

1 个回复
最合适的回答,由SO网友:Max Yudin 整理而成

您可以同时使用多个分类法,因此请使用\'relation\' => \'AND\':

<?php

$args = array(
    \'posts_per_page\'    => -1,
    \'post_type\'         => \'products\',
    \'post_status\'       => \'publish\',
    \'tax_query\'         => array(
        \'relation\' => \'AND\', // this is what was missing
        array(
            \'taxonomy\'  => \'subjects\',
            \'field\'     => \'name\',
            \'terms\'     => $shortcode_atts[\'subject\'],
        ),
        array(
            \'taxonomy\'  => \'plans\',
            \'field\'     => \'name\',
            \'terms\'     => $shortcode_atts[\'plan\'],
        ),
    ),
);

结束

相关推荐

Wp-blog-header.php hack的替代插件?

我有2个额外的代码在wp博客标题。php。第一个处理410和404个标题,位于顶部,行之前if ( !isset($wp_did_header) ) {第二个处理一些复杂的重定向,并在wp(); 线我知道破解核心WP脚本是个坏主意(尤其是当我的破解在大多数WP更新中被覆盖时)。我想把两者都作为插件来做,但我不知道该使用哪个钩子,也不知道如何使用。我看过一些现有的插件,但没有一个能满足我的需要。如有任何建议,将不胜感激。

自定义发布类型的GET_POSTS和自定义分类 - 小码农CODE - 行之有效找到问题解决它

自定义发布类型的GET_POSTS和自定义分类

时间:2018-07-02 作者:odedta

我正在尝试提取具有特定自定义分类的自定义帖子类型

这就是我所尝试的:

$args = array(
            \'posts_per_page\'    => -1,
            \'post_type\'         => \'products\',
            \'post_status\'       => \'publish\',
            \'tax_query\'         => array(
                array(
                    \'taxonomy\'  => \'subjects\',
                    \'field\'     => \'name\',
                    \'terms\'     => $shortcode_atts[\'subject\'],
                ),
                array(
                    \'taxonomy\'  => \'plans\',
                    \'field\'     => \'name\',
                    \'terms\'     => $shortcode_atts[\'plan\'],
                ),
            ),
        );
$shortcode\\u atts如下所示:

string(80) "Array
(
    [subject] => אינטרנט
    [plan] => מסלול 10 גיגה 
)
"
也就是说,这是希伯来语,主题=互联网,计划=10giga

我还尝试使用operator,不确定在哪个位置添加它,所以我在所有位置都尝试了,但都不起作用。有人能告诉我怎么拉这些柱子吗?

此查询返回所有cpt,不包含我想要的筛选。

编辑:shortcode\\u atts是:

function show_product( $atts, $content = null, $tag ) {
    $shortcode_atts = shortcode_atts( array(
        \'subject\' => \'\',
        \'plan\'  =>  \'\'
    ), $atts );
}
add_shortcode( \'show_product\', \'show_product\' );
谢谢!

1 个回复
最合适的回答,由SO网友:Max Yudin 整理而成

您可以同时使用多个分类法,因此请使用\'relation\' => \'AND\':

<?php

$args = array(
    \'posts_per_page\'    => -1,
    \'post_type\'         => \'products\',
    \'post_status\'       => \'publish\',
    \'tax_query\'         => array(
        \'relation\' => \'AND\', // this is what was missing
        array(
            \'taxonomy\'  => \'subjects\',
            \'field\'     => \'name\',
            \'terms\'     => $shortcode_atts[\'subject\'],
        ),
        array(
            \'taxonomy\'  => \'plans\',
            \'field\'     => \'name\',
            \'terms\'     => $shortcode_atts[\'plan\'],
        ),
    ),
);

相关推荐

无法在模板函数.php中使用IS_HOME

我试图在标题中加载一个滑块,但只在主页上加载。如果有帮助的话,我正在使用Ultralight模板。我正在尝试(在template functions.php中)执行以下操作:<?php if ( is_page( \'home\' ) ) : ?> dynamic_sidebar( \'Homepage Widget\' ); <?php endif; ?> 但这行不通。现在,通过快速的google,我似乎需要将请