WordPress как на ладони
Недорогой хостинг для сайтов на WordPress: wordpress.jino.ru
функция не описана

SimplePie::get_items() WP 2

Get all items from the feed

This is better suited for for() loops, whereas {@see get_items()} is better suited for foreach() loops.

Это метод класса: SimplePie

Хуков нет.

Возвращает

Массив/null. List of SimplePie_Item{} objects

Использование

$SimplePie = new SimplePie();
$var = $SimplePie->get_items( $start, $end );
$start(число)
Index to start at
По умолчанию: 0
$end(число)
Number of items to return. 0 for all items after $start
По умолчанию: 0

Заметки

  • Смотрите: get_item_quantity

Список изменений

С версии 2 Введена.

Since Beta 2

Код SimplePie::get items: wp-includes/class-simplepie.php WP 5.2.2

<?php
public function get_items($start = 0, $end = 0)
{
	if (!isset($this->data['items']))
	{
		if (!empty($this->multifeed_objects))
		{
			$this->data['items'] = SimplePie::merge_items($this->multifeed_objects, $start, $end, $this->item_limit);
		}
		else
		{
			$this->data['items'] = array();
			if ($items = $this->get_feed_tags(SIMPLEPIE_NAMESPACE_ATOM_10, 'entry'))
			{
				$keys = array_keys($items);
				foreach ($keys as $key)
				{
					$this->data['items'][] = $this->registry->create('Item', array($this, $items[$key]));
				}
			}
			if ($items = $this->get_feed_tags(SIMPLEPIE_NAMESPACE_ATOM_03, 'entry'))
			{
				$keys = array_keys($items);
				foreach ($keys as $key)
				{
					$this->data['items'][] = $this->registry->create('Item', array($this, $items[$key]));
				}
			}
			if ($items = $this->get_feed_tags(SIMPLEPIE_NAMESPACE_RSS_10, 'item'))
			{
				$keys = array_keys($items);
				foreach ($keys as $key)
				{
					$this->data['items'][] = $this->registry->create('Item', array($this, $items[$key]));
				}
			}
			if ($items = $this->get_feed_tags(SIMPLEPIE_NAMESPACE_RSS_090, 'item'))
			{
				$keys = array_keys($items);
				foreach ($keys as $key)
				{
					$this->data['items'][] = $this->registry->create('Item', array($this, $items[$key]));
				}
			}
			if ($items = $this->get_channel_tags(SIMPLEPIE_NAMESPACE_RSS_20, 'item'))
			{
				$keys = array_keys($items);
				foreach ($keys as $key)
				{
					$this->data['items'][] = $this->registry->create('Item', array($this, $items[$key]));
				}
			}
		}
	}

	if (!empty($this->data['items']))
	{
		// If we want to order it by date, check if all items have a date, and then sort it
		if ($this->order_by_date && empty($this->multifeed_objects))
		{
			if (!isset($this->data['ordered_items']))
			{
				$do_sort = true;
				foreach ($this->data['items'] as $item)
				{
					if (!$item->get_date('U'))
					{
						$do_sort = false;
						break;
					}
				}
				$item = null;
				$this->data['ordered_items'] = $this->data['items'];
				if ($do_sort)
				{
					usort($this->data['ordered_items'], array(get_class($this), 'sort_items'));
				}
			}
			$items = $this->data['ordered_items'];
		}
		else
		{
			$items = $this->data['items'];
		}

		// Slice the data as desired
		if ($end === 0)
		{
			return array_slice($items, $start);
		}
		else
		{
			return array_slice($items, $start, $end);
		}
	}
	else
	{
		return array();
	}
}