質問

私はフィードクリエーターを使用しています(具体的には、コハナの フィード:: create())、私のテキストの一部が説明要素でこのようになるかもしれないことを除いて

以下のコードを参照してください

<?php echo 'example'; ?>

フィードクリエーターは、SimplexMLライブラリを使用しています。データが返されるたびに(使用してください $xml->asXml())説明要素内のHTML角度ブラケットは、HTMLエンティティに変換されます。

これにより、タグを正しく解析し、Pタグなどに役立ちます。ただし、この場合、PHPコードは表示されません(角度ブラケットに囲まれています)。

私の質問は - RSSフィードでこのようなものをどのように見せることができますか?どうすれば表示できますか &gt; それ自体が解析されたとき <?それは理にかなっていますか?

ここに、出力されているものの例があります。

<description>&lt;p&gt;some content&lt;/p&gt;&#13;

&lt;p&gt;WITH some code&lt;/p&gt;&lt;p&gt;&lt;?php&#13;
    //test me out!&#13;
?&gt;&lt;/p&gt;&#13;
</description>

(ノート それは上記のエラーではありません - エンティティはすべて変換されます)

私がそれを表示したいのは(RSSリーダーで)

いくつかのコンテンツ

いくつかのコードで

<?php
     //test me out! ?>
役に立ちましたか?

解決

コードを実際にフィード内にコードとして表示する必要があります。もしそうなら、あなたがそれをHTMLに表示したい場合と同じようにそれを逃れる必要があります:すなわち:

htmlspecialchars( "<?php echo 'example'; ?>" )

その結果、PHPはRSS XMLのために1回、RSS XMLに含まれるHTMLの場合、PHPが二重にエンコードされるため、フィードは既によりガーブルになります。

他のヒント

すべてのRSSタグには文字列が含まれているので、タグを設定する前にPHP操作を行うことはできませんか?

だから言う代わりに:

$xml->description = 'Description <?php echo $var; ?>';

あなたはするべきです:

$xml->description = 'Description ' . $var;

PHPコードをRSSフィードに渡す理由は何ですか?とにかく多くのフィードリーダーがそれを実行しないと推測しています。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top