在静态页面中显示WordPress帖子的PHP代码不起作用

时间:2021-01-18 作者:Indigenus

我有一个静态的网站主页。在同一个域上的Wordpress上有一个单独的博客(位于/博客)。六年前,我向一位朋友寻求帮助,在主页上显示该博客最近的两篇帖子,他通过以下方式做到了这一点:

从索引更改主页。html收件人。php

索引中包含以下代码。php

                    function blog()
                    {
                        $url = \'MysiteURL.com/blog/feed/\';
                        $xmlinfo = simplexml_load_file($url);
                        if($xmlinfo)
                        {

                            $temp=$xmlinfo->channel->item;
                            $i=0;
                            foreach ($temp as $key) 
                            {
                                if($i<2)
                                {
                                    echo \'<div class="span5">\'; 
                                    $a=$key->title;
                                    echo \'<div class="title"><a href =\'.$key->link.\'><h4>\'.$a.\'</h4></a></div>\';
                                    $pieces = explode("[", $key->description);
                                    echo \'<div class="description">\'.$pieces[0].\'<a href =\'.$key->link.\'>... Read More</a></div>\';
                                    echo \'</div>\';
                                    echo \'<div class="span1">&nbsp;</div>\';
                                     $i=$i+1;
                                }

                            }
                        }
                    }
                    blog();
                ?> ```

直到去年,我获得了SSL证书,并将我的主机从Godaddy legacy转移到了新的“Starter Linux hosting with cPanel”,它以前一直工作得很好。而现在代码根本不起作用。自去年或代码运行和显示帖子之前的其他变化:

我已将PHP升级到7.4(Godaddy目前提供的最新版本)

  • 我已将Wordpress升级到最新版本https://sandbox.onlinephpfunctions.com/, 它向我显示了以下错误:

    <b>Warning</b>:  simplexml_load_file() has been disabled for security reasons in <b>[...][...]</b> on line <b>477</b><br />
    
    但如果我查看“页面源代码”,则没有任何代码输出的迹象。它只是一片空白。有谁能帮我理解PHP代码执行出了什么问题?提前多谢!

  • 1 个回复
    SO网友:Indigenus

    我发现问题出在执行simplexml\\u load\\u文件时,只需要转到php.ini 文件和设置allow_url_fopen 标志来自offon. 代码现在执行得完美无瑕,输出符合预期。

    相关推荐

    将JS值设置为PHP变量,以使用PHP If Else语句更改div背景颜色

    我有下面的div,我使用PHP if else根据$tteg值更改div的背景颜色,该值等于JS值{{ReviewOverall}},我不知道我是否正确地等于它们,但它似乎有效,我面临的问题是背景颜色总是红色,我不确定下面的代码是否正确,请帮助。我想做的是,如果{ReviewOverall}}值低于7,div背景色为红色,否则为绿色,我想提到{ReviewOverall}}值从0开始到10,例如,当其值为5时,它没有小数,但如果其值为3.1或其他值,则它在点后有一个小数。我正在Wordpress插件编辑器