无法真正掌握这一点。我正在尝试制作一个wordpress快捷代码,从另一个文件中的数组中获取值。我试图实现的是使短代码"myshortCode valueFromKey"根据密钥工作。
这是我在functions.php 中的短代码函数
function someCode($opts) {
require_once( get_stylesheet_directory() . '/assets/php/array.php' );
return $array[$opts[0]];
}add_shortcode('myshortCode', 'someCode');
这是array.php 中的数组
$array = array(
'key1' => 'a string respons...',
'key2' => '...from external API'
);
但无论我做什么,我都只能从数组中获得第一个键值。例如。
'myshortCode key1'
'myshortCode key2'
只返回'myshortCode key1'
我计划使用它来显示来自外部API的响应数据。因此,所有这些短代码将在同一页的不同部分。
我刚刚测试了代码,它在我这边的上运行良好
[myshortCode"key1"key2"]这就是我称短码的方式
这就是我在函数中包含的内容。php
不需要多次调用文件,只需在函数上方声明数组或在函数上方包含一次文件即可。
require_once( get_stylesheet_directory() . '/array.php' );
或
$array = array('key' => 'value');
然后在函数内部只写全局$array;访问函数外部声明的变量。
function someCode($opts) {
global $array;
return $array[$opts[1]];
}
add_shortcode('myshortCode', 'someCode');
确保在array.php文件的开头有<?php
,并确保路径正确。其他的都应该没事。
$opts
是未命名属性的数组,因此您可以选择$opts[0]、$opts[1]等。