Hi,
I'm trying to write some custom plugin code, the ultimate end result will be that I can "program" in php, and my "author" can then call the code from within posts with {key_words}. I get that in the following example plugins are avilable to list_pages etc, but this will devlop into "odd" requests from my author.
Please consider the following code which executes fine outside of wordpress....
function wp_recent_posts() {
?>recent post<?php
}
function wp_page_list() {
?>page list<?php
}
function wp_recent_posts_inline( $content ) {
ob_start(); // Enable output buffering to supress echos
wp_recent_posts(); // run function
$result = ob_get_contents();
ob_end_clean(); // Empty the Buffer
echo str_replace("{wp_recent_posts}", $result, $content);
}
function wp_page_list_inline( $content ) {
ob_start(); // Enable output buffering to supress echos
wp_page_list(); // run function
$result = ob_get_contents();
ob_end_clean(); // Empty the Buffer
echo str_replace("{page_list}", $result, $content);
}
$content = " abc {page_list} cde " ;
wp_page_list_inline($content);
$content = " 123 {wp_recent_posts} 456";
wp_recent_posts_inline($content);
Now replace
$content = " abc {page_list} cde " ;
wp_page_list_inline($content);
$content = " 123 {wp_recent_posts} 456";
wp_recent_posts_inline($content);
with
add_filter('the_content', 'wp_page_list_inline');
add_filter('the_content', 'wp_recent_posts_inline');
upload the code & activate the plugin, write a page / post with the words {page_list} and {wp_recent_posts} in .
In my experience {page_list} will work but {wp_recent_posts} will not, if you change
add_filter('the_content', 'wp_page_list_inline');
add_filter('the_content', 'wp_recent_posts_inline');
for
add_filter('the_content', 'wp_recent_posts_inline');
add_filter('the_content', 'wp_page_list_inline');
i.e. swap the add_filter statements over, the opposite will happen... can anyone offer any advise ? ( as I'd like both to work) ;)
Cheers,
Nick