我想弄清楚如何在WordPress中进行计算。我不想要“计算器”,但我想显示计算结果。
我已经有一个与自定义帖子类型相关联的名为[days]的自定义值。我需要某处存储[rate]的全局值以及解决计算的方法。
我希望能够拥有[shortcode evaluate =“([rate] / 2)* [days]”之类的内容,以便我可以显示最终值。然后,我可以更改[费率],并反映在我的网站上。
我希望不必编写任何PHP,主要是因为它不是我最喜欢的语言,但我希望这可以重复使用,并且可以在Wordpress和插件的更新中使用。
我安装了Pagelines Framework,我有WP-Types为我的自定义类型提供自定义字段。我一直在搜索Pagelines,WP-Types和Wordpress的论坛和文档,但是无法解决这个问题。听起来应该已经存在了......
我是否需要创建自定义插件?或者有什么我可以利用的吗?
我已经尝试过创建一个插件,但我无法让我的PHP工作。
完整档案:https://github.com/nkdAgility/wp-calculate-rate/blob/master/wp-calculate-rate.php
function nkdCalculate_shortcode($atts,$content=null) { <---Line 16
$content = wpv_do_shortcode($content);
$content = eval("return $content;");
return $content;
}
add_shortcode('nkd-calculate', 'nkdCalculate_shortcode');
function nkdCalculate_rate_shortcode($atts) {
return wget_option('my_rate');
}
add_shortcode('nkd-rate', 'nkdCalculate_rate_shortcode');
?>
不幸的是,我的代码总是出错:
解析错误:第16行/nas/content/staging/nakedalmweb/wp-content/plugins/wp-calculate-rate-1/wp-calculate-rate.php中的语法错误,意外“功能”(T_FUNCTION)
为什么功能出乎意料?
答案 0 :(得分:2)
我有以下代码激活:
<?php
/**
* Plugin Name: nkdAgility Rate Calculator
* Description: Tell Us What Your Shortcode Does
* Version: 0.6
* Author: MrHinsh
* Author URI: https://nkdagility.com
*/
function nkdCalculate_shortcodes_init() {
function nkdCalculate_shortcode($atts,$content=null) {
$content = wpv_do_shortcode($content);
$content = eval("return $content;");
return $content;
}
add_shortcode('nkd-calculate', 'nkdCalculate_shortcode');
function nkdCalculate_rate_shortcode($atts) {
return wget_option('my_rate');
}
add_shortcode('nkd-rate', 'nkdCalculate_rate_shortcode');
}
add_action('init', 'nkdCalculate_shortcodes_init');
?>
专门将短代码函数封装在一个名为&nbsp; nkdCalculate_shortcodes_init&#39;的函数中。然后告诉wordpress何时使用add_action初始化你的短代码(&#39; init&#39;,&#39; nkdCalculate_shortcodes_init&#39;);
如果你看一下https://developer.wordpress.org/plugins/shortcodes/basic-shortcodes/,它会解释更多关于如何在wordpress之后初始化短代码。
希望有所帮助