0

I want to get the page content (so i can parse the tags/short-codes in it), but i don't want to output the result itself to the browser (i.e. echo=0).

I tried get_the_content(); but its the same deal.

  • get_the_content() does not echo output, it is returned. So what exactly is your problem with it? – Rarst Jul 14 '11 at 16:32
  • It doesn't eval the shortcodes in the content. – Anonymous Jul 14 '11 at 16:35
1

Where are you doing your code parsing? If you're doing it directly in the template file, inside the Loop, then you should be using get_the_content().

However, it might be more efficient to filter the_content(), via the the_content filter. e.g. in functions.php:

function mytheme_filter_the_content( $content ) {
    // add code here to filter the_content
    // which is contained in the $content variable,
    // then return $content
    return $content;
}
add_filter( 'the_content', 'mytheme_filter_the_content' );

EDIT

If, for whatever reason, you just want to parse the_content(), pull out the shorcodes, and execute them, use do_shortcode() (Codex ref). e.g.:

<?php
$page_content = get_the_content();
$page_shortcodes = array() // ...some array that includes whatever shortcodes you found

foreach ( $page_shortcodes as $page_shortcode ) {
    do_shortcode( $page_shortcode );
}
?>
  • Im using a template file, but i just want to get the page content and eval the short-codes in the page, without generating the HTML. – Anonymous Jul 14 '11 at 16:32
  • See updated answer. – Chip Bennett Jul 14 '11 at 16:39
1
<?php  
         query_posts( 'type=post&posts_per_page=1' );

           if ( have_posts() ) : while ( have_posts() ) : the_post();

           ?> 

             <?php the_content(); ?>

             <?php endwhile;
                               endif; 

              wp_reset_query();
              ?>
  • Can you explain the answer, please? – bravokeyl Nov 13 '16 at 17:22
0

You can try this :

$page_data = get_page( $page_id ); 
$page_content = $page_data->post_content;
  • I can get it that's not the problem, the problem is evaluating the short-tags. This just get the plain text. – Anonymous Jul 14 '11 at 16:26

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.