Support » Plugins and Hacks » [Plugin: Co-Authors] conditional statements per # of authors?

  • kaigou


    So far, the co-authors plugin looks very nifty, and is exactly what I’ve been looking for. Now I just need to figure out how to style it, and that seems to involve doing a slight round of if/else. Using the example code on the plugin’s page, I got this working:

    `if(function_exists(‘coauthors_posts_links’)) :
    $i = new CoAuthorsIterator();
    print $i->count() == 1 ? ” : ‘written with: ‘;
    print $i->is_last() ? ‘ ‘ : ‘ & ‘;
    } endif;`

    This is the version to be shown on the author’s page, which means there’s no need to repeat that Jane is the author when it’s her page; I only need to indicate any co-authors. That works fine, but it breaks when I try to allow for situations where there are two or more coauthors.

    The above gets me:

    –post 1–
    written with: Jack
    –post 2–
    written with: & Barbara Jack

    Changing the code around on this line:

    ‘print $i->is_last() ? ‘ ‘ : ‘ & ‘;`

    just moves the & (or the , or the whatever) so that now I get it between two names… but as a leading character when it’s just one name.

    So I’ve been trying to come up with a way to do a conditional, and everything keeps breaking on me. Generally, the pseudocode would go like this:

    ‘ if author count == 1, do nothing.
    if author count == 2 : print 2nd author, end
    else print author2 ‘, ‘ author3 ‘ ‘, end.’

    So far, fiddling around gets me nothing but errors, but here’s one example of the fiddling I’ve tried:

    ‘ if(function_exists(‘coauthors_posts_links’)) :
    $i = new CoAuthorsIterator();
    if print $i->count() == 1 ? ” : ‘written with: ‘;

    print $i->is_last() ? ‘ ‘ : ‘ ‘;
    } else : $i->iterate();

    print $i->is_last() ? ‘ ‘ : ‘ & ‘;
    } endif`

    …which doesn’t work. On both examples on the author-page, it seems to work its way through the if, and skips the else. I’m missing something. Any ideas?

  • The topic ‘[Plugin: Co-Authors] conditional statements per # of authors?’ is closed to new replies.