1

我目前正在开发一个自定义主题选项插件。因此,如果提交表单并且它具有值,它们将存储在 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' );

提前致谢。

4

0 回答 0