0
function custom_code(){
    return include( get_stylesheet_directory() . '/custom-template.php');
}
add_shortcode('custom_shortcode','custom_code');

As you can check above I want to include a template using shortcode how to make it done?

1

You can't return the include statement. And you shouldn't use include template parts.

And here's how to do it correctly:

function custom_code() {
    ob_start();
    get_template_part( 'custom-template.php' );
    return ob_get_clean();
}
add_shortcode( 'custom_shortcode', 'custom_code' );

So what we're doing here is:

  1. Start output buffering.
  2. Include given template part using get_template_part function.
  3. Return all the output generated by that template and delete the buffer.

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.