我试图传递或存储CMS用户在短代码中提供的文件路径字符串,并在函数中使用它,然后在短代码渲染时执行该函数。
以下是详细信息:
function wpsdc( $atts ) {
extract( shortcode_atts( array(
'file_path' => '',
'text' => ''
), $atts ) );
$wpsdc_output = wpsdc_short_code($text);
return $wpsdc_output;
}
add_shortcode('wpsdc','wpsdc');
我的 wpsdc_short_code 函数返回一些基本格式html:
<form action='wpsdc-validate-email.php' method='post' id='download_content'>
<input id='emailtext' name='email' type='text'>
<button id='submit-email' type='submit'>Click</button>
</form>
我的目标是将一个字符串(我将其呈现为锚文本链接)返回到初始短代码中定义的文件路径。
[wpsdc file_path='/downloads/some_pdf_file.pdf' text='Click']
如何将$ file_path变量提供给我的&#39; wpsdc-validate-email.php &#39;文件没有在html表单标记中显示文件字符串吗?
非常感谢你。
答案 0 :(得分:1)
我可以看到一些方法:
使用php的mcrypt
函数加密您的file_path
并将其存储在表单上的隐藏字段中,然后使用mcrypt_decrypt
在表单中对其进行解码动作脚本。文档:http://www.php.net/manual/en/book.mcrypt.php
将file_path
存储在php $_SESSION
中并使用此功能。有关基础知识,请参阅此Wordpress支持主题:http://wordpress.org/support/topic/using-session-in-wordpress
如果您的PHP服务器被锁定,您还可以使用WP Session Manager之类的插件。