2013-05-23 3 views
0

Хорошо, поэтому я поделюсь целым кодом, когда я получу страницу под заказ по фамилии. Я создал страницу моих авторов, чтобы отображать ссылки на сайт автора и твиттер, Чтобы скрыть их, если пользователь не заполнил его в админе. У меня также есть страница для отображения last_name, first_name, но страница упорядочивает по имени и выглядит ужасно из-за этого. Я несколько раз пытался поговорить с моим клиентом, но она настроена на это. Я потратил много времени на это и нуждаюсь в некоторой помощи ... Рабочий Wordpress на серверах Windows будет смертью, которую я так плохо говорю. Это мой код, который я знаю, что вызывает проблему:Список авторов, упорядоченных по last_name

` 
    <?php 
function contributors() { 
global $wpdb; 
$user_post_count = count_user_posts($userid); 
$authors = $wpdb->get_results("SELECT DISTINCT * FROM wp_users u LEFT JOIN wp_usermeta um ON u.ID = um.user_id WHERE um.meta_key = 'last_name' ORDER BY um.meta_value ASC;"); 

foreach ($authors as $author) { 
if (get_usernumposts($author->ID) >= 1){ 
echo "<li>"; 
echo "<a href=\"".get_bloginfo('url')."/author/"; 
the_author_meta('user_nicename', $author->ID); 
echo "/\">"; 
echo the_author_image($author->ID); 
echo "</a>"; 
echo "<br />"; 
echo '<div>'; 
echo "<h2><a href=\"".get_bloginfo('url')."/author/"; 
the_author_meta('user_nicename', $author->ID); 
echo "/\">";   
$last_name = get_the_author_meta('last_name', $author->ID); 
if ($last_name != null): 
the_author_meta('last_name', $author->ID);endif; 
$first_name = get_the_author_meta('first_name', $author->ID); 
if ($first_name != null): 
echo ",&nbsp;"; endif; 
the_author_meta('first_name', $author->ID); 
echo ' (' . count_user_posts($author->ID) . ')'; 
echo "</a></h2>"; 
echo "<br />"; 

// Position/Title of Authors 
$position = get_the_author_meta('position', $author->ID); 
if ($position != null):?> 
<p class="user_cust"><?php echo $position ?></p><?php endif; ?> 
<?php 
$user_url = get_the_author_meta('user_url', $author->ID); 
if ($user_url != null):?> 
<p class="user_cust"><a href="<?php echo $user_url ?>" target="_blank">Linkedin Profile</a></p><?php endif; ?> 
<?php 
echo "</div>"; 
echo "</li>"; 
} 
} 
} 
/** 
* Template Name: Author's Page 
* The template for displaying WP_AUTHOR_LIST. 
* 
* Used to display Author's Details on a page. 
* 
*/ 
?> 
<?php get_header(); ?> 
<div id="content" class="page"> 
    <?php include('scroll_to.php'); ?> 
    <div class="page-wrapper"> 
    <h2>Authors</h2> 
<?php get_template_part('loop', 'authors'); ?> 
    <!-- /* Begin Author's Page */ --> 
    <div id="authorlist"> 

     <ul> 
     <?php contributors(); ?> 
     </ul> 

    </div> 
    <!-- /* End Author's Page */ --> 
    </div> 
</div> 
<?php get_sidebar(); ?> 
<?php get_footer(); ?>` 
+0

Я так близко я отредактировал мой код с моим новым кодом проблема, когда я удалить цикл Еогеаспа я получить только админ и у него есть все посты в его POST_COUNT для некоторых причина. Я попробовал var_dump ($ author-> ID); но это ничего не делало, когда я удалял все внутри цикла foreach. – Joe

ответ