2014-01-17 129 views
0
function magazine_vertical($atts){ 
    extract(shortcode_atts(array(
     'slug' => '', 
     'title' => '', 
     'limit' => '5', 
    ),$atts)); 

    //The Query 
    query_posts('showposts=1&orderby=date&order=DESC&category_name='.$slug); 

    //The Loop 
    if (have_posts()) : while (have_posts()) : the_post(); 
     $return .= '<div class="magazine-vertical">'; 
     $return .= '<div class="magazine-vertical-title-category"><span class="magazine-vertical-title">'.$title.'</span><span class="magazine-vertical-category"><a href="'. get_term_by('slug', $slug, 'category').'">More articles</a></span></div>'; 
     $return .= '<div class="magazine-vertical-large">'; 
     $return .= '<div class="magazine-vertical-large-1">'; 
     $return .= '<div class="magazine-vertical-large-thumbnail">'; 
     $return .= '<a href="'.get_permalink($post->ID).'" title="">'.get_the_post_thumbnail($post_id, 'magazine-vertical').'</a>'; 
     $return .= '</div>'; 
     $return .= '<div class="magazine-vertical-large-subtitle">'; 
     $return .= '<a href="'.get_permalink($post->ID).'" title="">'.get_the_title().'</a>'; 
     $return .= '</div>'; 
     $return .= '<div class="magazine-vertical-large-date">'; 
     $return .= get_the_time('F j, Y'); 
     $return .= '</div>'; 
     $return .= '<div class="magazine-vertical-large-excerpt">'; 
     $return .= get_the_excerpt(); 
     $return .= '</div>'; 
     $return .= '</div>'; 
     $return .= '</div>'; 
    endwhile; 
    endif; 

    //Reset Query 
    wp_reset_query(); 

    return $return; 
} 
add_shortcode('magazine_vertical', 'magazine_vertical'); 

功能上面产生:Catchable fatal error: Object of class stdClass could not be converted捕获的致命错误

问题是这一部分:

$return .= '<div class="magazine-vertical-title-category"><span class="magazine- 
vertical-title">'.$title.'</span> 
<span class="magazine-vertical-category"><a href="'. get_term_by('slug', $slug, 'category').'">More articles</a></span></div>'; 

不用其他此代码的工作(我需要这部分与“更多文章):

<a href="'. get_term_by('slug', $slug, 'category').'">More articles</a> 

[magazine_vertical slug = my-category]是我在页面中使用的shortcode。 我得到它一切正常,除了这部分,其中我必须从slug atts得到分类链接。

回答

0

在WordPress,$输出:常量对象,ARRAY_A,或ARRAY_N

function get_term_by($field, $value, $taxonomy, $output = OBJECT, $filter = 'raw') { } 

默认输出为object,你能不能将对象转换成字符串。

您可以尝试get_term_link($term, $taxonomy);编号:http://codex.wordpress.org/Function_Reference/get_term_link

+0

get_term_link($塞, '分类');是我需要的一切。我应该问,我整天都在为此而战。谢谢。 – user3207567

相关问题