Shortcode Callback
The Shortcode Callback plugin allows you to use a [callback] shortcode to execute arbitrary PHP code wherever the shortcode is used. Usage Execute someFunction() and insert whatever it returns with the following shortcode: [callback function=”someFunction”] Example shortcode to include a PHP file (t
About this tool.
The Shortcode Callback plugin allows you to use a [callback] shortcode to execute arbitrary PHP code wherever the shortcode is used.
Usage
Execute someFunction() and insert whatever it returns with the following shortcode: [callback function=”someFunction”]
Example shortcode to include a PHP file (the path is relative to WordPress’ ABSPATH), then insert the results of someFunction() where you used the shortcode: [callback include=”custom/filetoinclude.php” function=”someFunction”]
Shortcode example that includes a PHP file (the path is relative to WordPress’ ABSPATH), then passes a paramter to someFunction() and returns the results where you used the shortcode: [callback function=”someFunction” include=”custom/filetoinclude.php” param=”something”]
The format to call a class/method with the shortcode is exactly the same as above, except you specify the class::method in the “function” attribute of the shortcode. [callback function=”someClass::someFunction” include=”custom/filetoinclude.php” param=”something”]
There is an example (with PHP code) over here .
Getting started.
- 01Upload shortcode-callback folder to the /wp-content/plugins/ directory.
- 02Activate the Shortcode Callback plugin through the ‘Plugins’ menu in the WordPress admin area.
Frequently asked questions.
Do you have an example of where the Shortcode Callback plugin is used?
I built this plugin primarily because I needed a way to inject the “Daily Yield” and “Total Yield” numbers to my solar power chart page .
The shortcode being used:
[callback function=”DigitalPointElectricity::total_output” param=”daily” include=”custom/Electricity.php”]
The `custom/DigitalPointElectricity.php` file being called by the shortcode:
<?php
class DigitalPointElectricity { public static function total_output($timeframe) { $totals = $GLOBALS['memcache']->get('shawnhogan-pv-total'); if ($timeframe == 'total') { return $totals->Items[2]->TotalYield; } elseif ($timeframe == 'daily') { return $totals->Items[1]->DailyYield; } } }