私が設計したWordpressのテーマにRSSフィードを取り込む簡単な方法を設定しようとしています。私はそれが本当にうまく動作している 'fetch_feed' - すべてのrssの項目が来ると私はそれらを並べ替えることができますし、それらを表示する方法が必要です。インポートされたRSSフィードをWordpressにタイムシフトする
問題はタイムシフトです。私が引っ張っているフィードはオーストラリアのサーバーにあり、実際のフィードの日付は正しいです。しかし、クライアントサーバーはどこにあるのかわかりませんが、ホスティング会社の指示に従ってphp.iniファイルにタイムゾーンを設定していますが、RSSフィードの項目はすべて13時間シフトしています。
RSSフィードをつかむために私のコードです:
<?php // Get RSS Feed(s)
include_once(ABSPATH . WPINC . '/feed.php');
// Get a SimplePie feed object from the specified feed source.
$rss = fetch_feed('http://xxxxxxxx.com.au/events/feed/');
if (! is_wp_error($rss)) : // Checks that the object is created correctly
// Figure out how many total items there are, but limit it to 25.
$maxitems = $rss->get_item_quantity(25);
// Build an array of all the items, starting with element 0 (first element).
$rss_items = $rss->get_items(0, $maxitems);
endif;
?>
そして、これは私がフィードを表示するには、私のテーマで使用していたコードです:すべてのヘルプは大歓迎です
<?php if ($maxitems == 0) : ?>
<h3><?php _e('No items', 'my-text-domain'); ?></h3>
<?php else : ?>
<?php // Loop through each feed item and display each item as a hyperlink. ?>
<?php foreach ($rss_items as $item) : ?>
<p><b>
<a href="<?php echo esc_url($item->get_permalink()); ?>" target="_blank"
title="<?php printf(__('Posted %s', 'my-text-domain'), $item->get_date()); ?>">
<?php echo esc_html($item->get_title()); ?>
</a></b>
<?php echo esc_html($item->get_date('| j F | g:i a')); ?><br>
<?php echo sanitize_text_field($item->get_content()); ?>
</p>
<?php endforeach; ?>
<?php endif; ?>
。 ..
$ item-> get_date()は、書式設定パラメータなしで(つまり、どのようなデフォルト値の)戻り値を返しますか?あなたはこの値をつかんで、strtotime()やそれに類似するものをつくることができるかもしれません。 –
良い質問 - 私はその行を削除してページを更新し、何も変わりませんでした。それはおそらく明らかですが、私はPHPに堪能ではありませんので、私は私の無知のために事前に謝罪します。私はsrttotimeオプションのあなたの提案をお試しいただきます、ありがとう! – Excell