【问题标题】:Problems with my data saved with $_SESSION (Wordpress, ACF)使用 $_SESSION (Wordpress, ACF) 保存的数据存在问题
【发布时间】:2017-07-19 02:00:06
【问题描述】:

我有一个问题,希望你能帮助我。

我正在创建一个 Wordpress 主题,我正在使用 ACF *(Advanced custom fields)* 将信息保存在 vars 中。例如:

home.php -> 我在这个文件的 vars 中保存了很多信息。

我需要在另一个文档中使用这个变量,例如:

store.php

我不是 PHP 专家,因此,我很容易使用 $_SESSION vars 来保存和使用我所有文件中的信息。

我已将变量保存在我的 home.php 中,如下所示:

session_start();
ob_start();    
$name = $_SESSION['home_name'] = get_field('home_name');

我正在尝试像这样在 store.php 上获取数据:

session_start();
ob_start();    
$name = $_SESSION['home_name'];

但是我发现了一个可能的错误。 有时我在 store.php 中看不到 var 的数据。 要再次查看数据,我需要打开 home.php 并稍后刷新 store.php

你知道为什么吗? 我该如何解决这个错误?

如果您知道保存和发送我的数据的最佳做法,我真的很想学习。

【问题讨论】:

    标签: php wordpress session-variables


    【解决方案1】:

    变量赋值没有返回值。保存时,请尝试以下操作:

    session_start();
    ob_start();
    $_SESSION['home_name'] = get_field('home_name');
    $name = $_SESSION['home_name'];
    

    或者,您可以像这样为 $_SESSION['home_name'] 变量创建别名

    $name &= $_SESSION['home_name'];
    

    这样,您对 $name 所做的任何更改都会反映在 $_SESSION['home_name'] 上,反之亦然。

    【讨论】:

    • 感谢 Raphael de Oliveira 让我确认我是否理解。在我的 home.php 中,我需要像这样创建我的变量吗? session_start(); ob_start(); $_SESSION['home_name'] = get_field('home_name'); $name &= $_SESSION['home_name']; 在我的 store.php 中我需要如何获取数据? $name &= $_SESSION['home_name'];
    • 您可以使用session_start(); $_SESSION['home name'] 访问您的数据。该名称将存储在$_SESSION['home name'] 变量中。
    • 是的,@Raphael 我已经做到了,但问题是要在我的第二个网页上查看数据,我需要重新启动我的第一个网页,然后再重新启动第二个网页。我觉得这个人和我有同样的问题:stackoverflow.com/questions/39890976/…
    • 你能告诉我们你第一次加载第一页的时间var_dump($_SESSION);吗?
    【解决方案2】:

    处理会话对我来说一团糟,我找到了将我的 var 信息从一个文件发送到另一个 php 文件的最佳选择。

    最好在我们的函数get_field('var_nane', id)中使用post ID;

    $varName = get_field('field_name', 132);
    

    我们的高级自定义字段组的帖子 ID 与我们使用此 ACFG 的位置的 ID 不同。

    https://support.advancedcustomfields.com/forums/topic/how-to-change-the-scope-of-a-custom-field-group/#post-52629

    https://www.advancedcustomfields.com/resources/get_field/

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2016-07-10
      • 1970-01-01
      • 2011-09-17
      • 2011-08-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多