I requested this over in the tutorial, although not sure I'll have your call answered in the near future as it is almost 2 several weeks old... so I'll have a gander here...

Tutorial is here now: Build a WordPress Plugin to Add Author Biographies to your Posts

To summarize the tutorial and what the issue is, The tutorial adds a writer Bio onto the finish from the content like so (rapid version):

function x($content) {
     return $content . "Author Bio";


The Issue:

When someone uses:

$z = apply_filters('the_content', 'some content here');
echo $z;

The Writer Bio will finish up put on $z and when $z is echoed out in the center of some page… the writer Bio could be in the center of some page… correct? (the simple truth is because I have examined it...)

It is possible to better method to apply something towards the finish/under/underneath thecontent material hook? apart from add_action(‘the_content’, ‘some_function’) as this in my experience appears evil...

or perhaps is apply_filters(‘the_content’, ‘some content here’) not standard or something like that designers should not be utilising in their WordPress templates…? (which appears virtually standard, a minimum of upon Google-ing formatting "the_content" outdoors the loop)...

Using apply_filters('the_content','some content here'), while it might not be 'the norm' (I'm not sure. I've not seen it before, but when I desired formatted text, that is what I'd do), is really a perfectly valid utilization of filters to obtain some text formatted such as the content. Regrettably, there is no better method to append something to content from the wordpress plugin. That's only the way this stuff work.

However, there is a (under optimal) method of circumventing this. Included in the setup/install process for the wordpress plugin, possess the user place a custom function call, action, or filter to their theme. I understand several plug ins which do this, therefore it is not every that uncommon. Something similar to this:


Would permit you to hook in without having to worry about adding a bio to unpredicted (and unintentional) content. Better still could be placing a filter:

echo apply_filters('my_super_awesome_bio_filter_hook','');

That will let your wordpress plugin to change the bio, but additionally permit the one while using wordpress plugin to override it if required (like on pages where they are simply using excerpts, like search engine results, etc.).

Hope this assisted.

Also, one minor addendum: you ought to be using add_filter, not add_action to append the writer Bio. add_action still works, but it is a filter you need to be utilising.