這個外掛並未在最新的 3 個 WordPress 主要版本上進行測試。開發者可能不再對這個外掛進行維護或提供技術支援,並可能會與更新版本的 WordPress 產生使用上的相容性問題。

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 (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.

安裝

  1. Upload shortcode-callback folder to the /wp-content/plugins/ directory.
  2. Activate the Shortcode Callback plugin through the ‘Plugins’ menu in the WordPress admin area.

常見問題

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;
        }
    }
}

評價

2016年12月29日
This is a really good way of adding some custom code without having to create a new WP plugin. Simply add a php file to your wordpress and display the result using a shortcode. Just remember: Don't use echo or print in your functions or the output will be displayed above your post and not where your shortcode is. To display contents correctly always return them as shown in the examples. To render template files with lots of html: ob_start() require 'my_custom_template.php'; $contents = ob_get_contents(); ob_end_clean(); The resulting output will be stored in the $contents variable thanks to the output buffer. The template file can contain php which will be interpreted like every file that is being included using require().
閱讀全部1個評價

貢獻者及開發者

“Shortcode Callback” 是一個開源的軟體。以下的人對這個外掛作出了貢獻。

貢獻者

將 Shortcode Callback 外掛本地化為台灣繁體中文版。

對開發相關資訊感興趣?

任何人均可瀏覽程式碼、查看 SVN 存放庫,或透過 RSS 訂閱開發記錄

修改日誌

1.0.0

  • Initial release