在WordPress页面模板的PHP代码不执行[关闭](PHP code in WordPress

2019-10-28 19:28发布

谁能告诉我为什么这个代码在WordPress的页面模板'不执行呢?

“回声”似乎工作,但所有的“有”和“的print_r()”等功能则没有。 这个确切的代码工作我的主服务器上而不是在WordPress的托管网站:

<?php

/**
 * Template Name: fbshares
 *
 * A custom page template for displaying all posts.
 *
 * The "Template Name:" bit above allows this to be selectable
 * from a dropdown menu on the edit page screen.
 *
 * @package WordPress
 * @subpackage Twenty_Ten
 * @since Twenty Ten 1.0
 */

get_header(); ?>

<div id="container">
<div id="content" role="main" class="fullpagejoel">

 <?php 
    echo "x";
    $url = "http://www.google.com";

    $social = array(
        'twitter' => 'http://cdn.api.twitter.com/1/urls/count.json?url=',
        'facebook' => 'https://graph.facebook.com/',
        'stumbleupon' => 'http://www.stumbleupon.com/services/1.01/badge.getinfo?url='
    );

    $json = file_get_contents($social['twitter'].$url, false);
    $a = json_decode($json, true);
    $r['twitter'] = $a['count'];

    print_r($a);
    echo count($a).' [OK]';

 ?>

Answer 1:

没有足够的代表处发表评论,但你检查的来源? WordPress的默默死去,但往往有一些源。

简短的回答,虽然,是的,你可以执行你在模板中所需的任何PHP。 我只是复制粘贴到我们的测试服务器上的WordPress的模板,并运行良好。



Answer 2:

我刚刚发现了这个问题。 通过项目调试的每一位项目之后,问题是,WordPress的不允许运行file_get_contents ,相反,你必须使用wp_remote_get这样的:

GOOD: $json = wp_remote_get( $social['twitter'].$url );
BAD: $json = file_get_contents($social['twitter'].$url, false);

我只是浪费在这整整一天,所以我希望它可以帮助别人。



文章来源: PHP code in WordPress page template doesn't execute [closed]
标签: php wordpress