我目前正在开发一个自定义主题选项插件。因此,如果提交表单并且它具有值,它们将存储在 wp_options 中,行名称为“wp_so_options”
if( isset( $_POST['wp_so_submitted'])){
$hidden_field =esc_html( $_POST['wp_so_submitted'] );
if($hidden_field == 'Y'){
$wp_so_twitter_url = $_POST['wp_so_twitter_url'];
$wp_so_facebook_url = $_POST['wp_so_facebook_url'];
$options['wp_so_twitter_url'] = $wp_so_twitter_url;
$options['wp_so_facebook_url'] = $wp_so_facebook_url;
update_option('wp_so_options',$options);
}
}
现在我正在使用插件文件中检索它们
$options = get_option('wp_so_options');
和回声完美地工作
echo $options['wp_so_twitter_url'];
现在我想在 wordpress 主题中使用这些值。
但是除非我初始化 header/index.php 中的选项,否则我无法检索它们
$options = get_option('wp_so_options');
有什么方法可以使用钩子将上面的插件文件初始化为主题,这样我就可以在不初始化主题文件的情况下使用它。我要做的是激活插件并使用短代码将这些字段调用到页面而不接触 php。所以最终用户不需要接触 php 就可以使用短代码。
我试过这个但没有奏效:
function global_options_so() {
global $options;
$options = get_option('wp_so_options');
}
add_action( 'wp_head', 'global_options_so' );
提前致谢。