Shortcodes are the codes inserted in post or page content which will be replaced with other content on post or page view. Do not use hyphens (-) in shortcode names, use an underscore (_) instead of it. Bad: [short-code]; good: [short_code].
Example:
[pagelist]
Example with parameters:
[pagelist depth="3" child_of="4"]
Example with content:
[header]title[/header]
PHP code for "[pagelist]" shortcode:
<?php
function pagelist_shortcode( $atts ) {
$input_atts = shortcode_atts( array(
'depth' => '0',
'child_of' => '0'
), $atts );
$page_list_args = array(
'depth' => $input_atts['depth'],
'child_of' => $input_atts['child_of']
);
$wp_list_pages = wp_list_pages( $page_list_args );
if ($wp_list_pages) {
return '<ul>'.$wp_list_pages.'</ul>';
} else {
return '';
}
}
add_shortcode( 'pagelist', 'pagelist_shortcode' );
?>
PHP code for "[header]" shortcode:
<?php
function header_shortcode( $atts, $content = null ) {
$content = force_balance_tags($content);
$content = do_shortcode( $content );
return '<h2>'.$content.'</h2>';
}
add_shortcode( 'header', 'header_shortcode' );
?>