更新2
我将把它留在这里以备将来参考。但这是我用我在这里得到的所有帮助创建的解决方案。谢谢!
<script>
function Refresh() {
location.reload();
}
</script>
<?php $number = $_SESSION["page_id"]; ?>
<?php
if (isset($_SESSION['page_id']) && !empty($_SESSION['page_id'])) {
echo do_shortcode('[RICH_REVIEWS_SHOW category="page" num="all" id="'. $number .'"]');
session_destroy();
echo ('<button class="btn btn-0001" onclick="Refresh()">Show All</button>');
}
else{ echo do_shortcode('[RICH_REVIEWS_SHOW num="all"]'); }
;
?>
更新 所以我试着做一个简单的回声,看看是否使用这段代码设置了会话:
<?php if(isset($_SESSION['page_id']) && !empty($_SESSION['page_id'])) {
echo 'Set and not empty, and no undefined index error!');
};?>
但这样做打破了我的页面,我只是得到一个空白页面?如何检查会话是否已设置?当我使用此代码对会话进行回显时:
<?php echo $_SESSION["page_id"]; ?>
它输出正确的会话值??我做错了什么?
我有一个用PHP保存的会话,我正在使用它,以便来自Wordpress的页面ID在短代码do_shortcode('');
这就是我的代码:
<?php $number = $_SESSION["page_id"]; ?>
<?php echo do_shortcode('[RICH_REVIEWS_SHOW category="page" num="all" id="'. $number .'"]'); ?>
<?php echo do_shortcode_all('[RICH_REVIEWS_SHOW category="page" num="all" id="all"]'); ?>
<?php echo $shortcode ;?>
<?php echo $shortcode_all ;?>
现在,我想要做的是,如果page_id没有存储在会话中,它应该回显all
。那我该怎么做呢?
我找到了这个代码,我觉得我需要的东西......但我不是那么优秀的程序员/编码员......
<?php
$var = 0;
// Evaluates to true because $var is empty
if (empty($var)) {
echo '$var is either 0, empty, or not set at all';
}
// Evaluates as true because $var is set
if (isset($var)) {
echo '$var is set even though it is empty';
}
?>
所以,如果我将这两者放在一起,我会得到类似的东西
<?php
$number = $_SESSION["page_id"];
// Evaluates to true because $var is empty
if (empty($number)) {
echo $shortcode_all ;
}
// Evaluates as true because $var is set
if (isset($number)) {
echo $shortcode ;
}
?>
我是朝着正确的方向吗?
答案 0 :(得分:1)
<?php
if (isset($_SESSION['page_id']) && !empty($_SESSION['page_id'])) {
echo('Set and not empty, and no undefined index error!');
};
?>
我应该从失踪的(
感受到什么?
答案 1 :(得分:0)
如果您使用的是wordpress,那么您应该使用session_start();在wp-config.php文件中请首先在顶部输入wp-config.php,然后检查。
答案 2 :(得分:0)
<?php
$number = $_SESSION["page_id"];
// Evaluates to true because $var is empty
if (empty($number) || $number=='') {
echo $shortcode_all ;
}else{
echo $shortcode ;
}
?>