1

私は今、頭がおかしいです…</p>

print_r($terms);

これを行います…</p>

Array
(
    [7] => stdClass Object
        (
            [term_id] => 7
            [name] => Testwhatever
            [slug] => testwhatever
            [term_group] => 0
            [term_taxonomy_id] => 7
            [taxonomy] => event_type
            [description] => 
            [parent] => 0
            [count] => 2
            [object_id] => 8
        )

)

どうすればprintナメクジできますか?私は印刷print($terms->slug)が仕事をするべきだと思ったが、「非オブジェクトのプロパティを取得しようとしています」と言っています

アップデート:

function get_event_term($post) {
    $terms = get_the_terms( (int) $post->ID, 'event_type' );
    if ( !empty( $terms ) ) {
        print_r($terms);
        return $terms[7]->slug;
    }
}
4

6 に答える 6

3

単一のオブジェクトではなく、オブジェクトの配列 (インデックス "7" に単一のエントリしか含まれていない場合でも)

echo $terms[7]->slug;

複数の「モノ」で

foreach ($terms as $term) echo $term->slug;
于 2012-07-18T09:17:20.887 に答える
2

または、少し複雑にするために、次のようにします。

array_walk($terms, function($val,$key) use(&$terms){ 
    var_dump($val->slug);
});
于 2012-07-18T09:26:54.277 に答える
2

試す

print_r($terms[7]->slug);

オブジェクト stdclass は array[7] オフセットにあります。

于 2012-07-18T09:17:14.390 に答える
0

wp_parse_argsシステムを使用して単一の$args引数を管理する関数。これには任意の値を指定できます。この場合、$args は詳細な表示オーバーライドを保存します。これは、多くの WordPress 関数で見られるパターンです。

$args = wp_parse_args( $args, $term->name );
echo $arg[157]['term_id']; //output 157
echo $arg[157]['name'];  //output Entertainment

詳細については、私にとっては問題なく動作します

http://codex.wordpress.org/Function_Reference/wp_parse_args

于 2015-01-22T20:41:31.733 に答える
0

これを試して。

print ($terms[7]->slug);
于 2012-07-18T09:17:42.800 に答える
0

print_r ($terms[7]->slug)オブジェクトの配列であるため、私には論理的に見えます

アップデート

get_event_term返すべき項目の数がわからないため、配列を返す必要があります。

function get_event_term($post) {
    $aReturn = array();
    $terms = get_the_terms( (int) $post->ID, 'event_type' );
    if ( !empty( $terms ) ) {
        print_r($terms);
        foreach($terms as $term){ // iterate through array of objects
            $aReturn[] = $term->slug; // get the property that you need
        }
    }
    return $aReturn;
}
于 2012-07-18T09:17:55.590 に答える