It is not the first concern but once you got things working, it is nice to put some of the source code on a page.
For that I use two components:
1. The WP plugin SyntaxHighlighter Evolved. Works outstanding!
2. A (homemade) shortcode to display the contents of a source file as html, which is picked up by SyntaxHighlighter Evolved.
To do the syntax highlighting: put the code between php short codes, like:
[keyword] source code [/keyword]
in which you have to replace keyword by php.
And to display the contents of the source-file, put the following between the php-brackets:
[display_source src='functions.php startstr='display_source' endstr='end function']
The result is that a subset of ‘functions.php’ is displayed: all the source code between the strings (‘display_source’) and ‘end function’.
/** shortcode [display_source] Returns (part of) the contents of a source file as html. arguments: - src : source file in theme directory (mandatory) NB. use single quotes or no quotes on this argument. No double quotes! - startstr : first line contains this string (optional) - endstr : last line contains this string (optional) Henk Arendse, 1-dec-2013. (www.henkarendse.nl) **/ add_shortcode( 'display_source', 'display_source_func' ); function display_source_func($atts) { extract( shortcode_atts( array( 'src'=>'', 'startstr' => '', 'endstr' => ''), $atts, 'display_source' ) ); if (empty($src)) { return("No source file specified"); } // read source file into $lines array $lines = file(html_entity_decode($src), FILE_USE_INCLUDE_PATH); // build $html from $lines between $start_str en $end_str $html = ''; if (empty($startstr)) $start_found = true; else $start_found = false; foreach ($lines as $line) { // skip line if start string not yet found if (! $start_found) { if (strpos($line, $startstr) === false) { continue; } else { $start_found = true; } } $html .= htmlspecialchars($line); // stop if end string found and displayed if (!empty($endstr) && strpos($line, $endstr) !== false) { break; } } return($html); } // end function