使用$ _SESSION保存我的数据问题(Wordpress,ACF)

时间:2017-07-19 02:00:06

标签: php wordpress session-variables

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

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

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

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

store.php

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

我已将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

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

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

2 个答案:

答案 0 :(得分: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']上,反之亦然。

答案 1 :(得分:1)

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

最好在我们的函数get_field中使用帖子ID(' var_nane',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/