2012-09-19 194 views
1

你好,我在WordPress上工作,我有一個高級主題,不再受到創作者的支持,所以我試圖做出改變;我不確定這是否被稱爲錯誤。在訪客發表評論時發表評論;他的頭像在這種情況下不是默認的「神祕」(no_avatar.gif),但它會自動獲取當前帖子作者的頭像。我喜歡顯示未註冊用戶的默認值。我想要注意的是,主題是使用它自己的頭像。我的目標上的功能的代碼,但我不能改變它,任何幫助,將不勝感激,謝謝提前這裏是代碼:自定義頭像功能

function tgt_get_avatar_link($user_id = ""){ 
if (!empty($user_id)){ 
    $avatar = get_the_author_meta('tgt_image', $user_id); 
} 
else 
$avatar = get_the_author_meta('tgt_image'); 
if (!$avatar){ 
    return TEMPLATE_URL . '/images/no_avatar.gif'; 
} 
    return TEMPLATE_URL . $avatar; 
} 

更新:該函數調用tgt_get_avatar_link但似乎是:

function tgt_ad_comment($comment, $args, $depth){ 
    $GLOBALS['comment'] = $comment; 
    global $helper; 
    ?> 
    <li> 
    <div class="comment" id="comment-<?php comment_ID()?>"> 
     <?php //echo get_avatar($comment) ?> 
     <?php echo $helper->image(tgt_get_avatar_link($comment->user_id), $comment->comment_author, array('title' => $comment->comment_author, 'width' => '58px', 'height' => '58px')) ?> 
     <div class="comment_content"> 
      <strong><?php echo get_comment_author_link() ?></strong> <?php _e('Say ','ad')?>(<?php comment_time('F j, Y \a\t g:i a') ?>) 
      <br/> 
      <?php comment_text() ?> 
     </div> 

</div> 

功能呼籲$user_id但似乎是:

function tgt_get_avatar_link($user_id = ""){ 
    if (!empty($user_id)){ 
    $avatar = get_the_author_meta('tgt_image', $user_id); 
} 
    else 
    $avatar = get_the_author_meta('tgt_image'); 
    if (!$avatar){ 
    return TEMPLATE_URL . '/images/no_avatar.gif'; 
    } 
    return TEMPLATE_URL . $avatar; 
} 
+0

這實際上不足以幫助我們 - 我們需要知道哪個函數調用了'tgt_get_avatar_link',什麼'$ user_id'它已經過去了。 – crowjonah

+0

你好,非常感謝你的回覆!我不夠熟悉PHP來回答你的問題,我發現更好的想法向你展示所有的代碼。我已經上傳了zip文件中的所有代碼,所以我真的需要你的建議,如果你下載並檢查它,非常感謝你這裏的鏈接:[鏈接](http://uploading.com/files/get/8ma35ead /author_widget.zip) –

+0

對不起,如果您無法在您的問題中發佈代碼,我將無法查看它。如果你不熟悉PHP來回答我的問題,我猜你可能會適應任何我能想到的答案,而不會爲你做所有的工作。這聽起來像你可能需要僱用一個人。高級主題不再被支持太糟糕了,但我想作者可能有正當的理由。 – crowjonah

回答

0

如果評論作者沒有定義的頭像,你想顯示默認圖像。這似乎是在你的條件的else

else { $avatar = get_the_author_meta('tgt_image'); } 

如果沒有$ user_ID的傳遞給get_the_author_meta,它假定當前帖子作者的用戶ID。這很可能會導致你描述的行爲。

嘗試刪除else聲明,直接從if (!empty($user_id)){$avatar = get_the_author_meta('tgt_image', $user_id);}跳至if (!$avatar){...。現在,當該函數通過空user_id時,它應該return TEMPLATE_URL . '/images/no_avatar.gif';

+0

我已經試過這個對不起,我沒有提到它,這是解決我的問題,但是正在創造新的。如果另一個函數調用'tgt_get_avatar_link'則返回空白的頭像......正如你所說,我害怕這就是爲什麼作者不支持這個主題了...... –