Summery Summery
Get the unique identifier for the item
Syntax Syntax
Description Description
This is usually used when writing code to check for new items in a feed.
Uses <atom:id>, <guid>, <dc:identifier> or the about attribute for RDF. If none of these are supplied (or $hash is true), creates an MD5 hash based on the permalink and title. If either of those are not supplied, creates a hash based on the full feed data.
Parameters Parameters
- $hash
-
(Optional) Should we force using a hash instead of the supplied ID?
Default value: false
Return Return
(string)
Source Source
File: wp-includes/SimplePie/Item.php
{
if ($return = $this->get_item_tags(SIMPLEPIE_NAMESPACE_ATOM_10, 'id'))
{
return $this->sanitize($return[0]['data'], SIMPLEPIE_CONSTRUCT_TEXT);
}
elseif ($return = $this->get_item_tags(SIMPLEPIE_NAMESPACE_ATOM_03, 'id'))
{
return $this->sanitize($return[0]['data'], SIMPLEPIE_CONSTRUCT_TEXT);
}
elseif ($return = $this->get_item_tags(SIMPLEPIE_NAMESPACE_RSS_20, 'guid'))
{
return $this->sanitize($return[0]['data'], SIMPLEPIE_CONSTRUCT_TEXT);
}
elseif ($return = $this->get_item_tags(SIMPLEPIE_NAMESPACE_DC_11, 'identifier'))
{
return $this->sanitize($return[0]['data'], SIMPLEPIE_CONSTRUCT_TEXT);
}
elseif ($return = $this->get_item_tags(SIMPLEPIE_NAMESPACE_DC_10, 'identifier'))
{
return $this->sanitize($return[0]['data'], SIMPLEPIE_CONSTRUCT_TEXT);
}
elseif (isset($this->data['attribs'][SIMPLEPIE_NAMESPACE_RDF]['about']))
{
return $this->sanitize($this->data['attribs'][SIMPLEPIE_NAMESPACE_RDF]['about'], SIMPLEPIE_CONSTRUCT_TEXT);
}
}
if ($fn === false)
{
return null;
}
elseif (!is_callable($fn))
{
trigger_error('User-supplied function $fn must be callable', E_USER_WARNING);
$fn = 'md5';
}
return call_user_func($fn,
$this->get_permalink().$this->get_title().$this->get_content());
}
/**
* Get the title of the item
*
* Uses `<atom:title>`, `<title>` or `<dc:title>`
*
* @since Beta 2 (previously called `get_item_title` since 0.8)
* @return string|null
Advertisement
Changelog Changelog
| Version | Description |
|---|---|
| Beta 2 | Introduced. |