public link ( string $title, mixed $url = null, array $options = [] ) : string | ||
$title | string | The content to be wrapped by an `` tag, or the `title` attribute of a meta-link ``. |
$url | mixed | Can be a string representing a URL relative to the base of your Lithium application, an external URL (starts with `'http://'` or `'https://'`), an anchor name starting with `'#'` (i.e. `'#top'`), or an array defining a set of request parameters that should be matched against a route in `Router`. |
$options | array | The available options are: - `'escape'` _boolean_: Whether or not the title content should be escaped. Defaults to `true`. - `'type'` _string_: The meta-link type, which is looked up in `Html::$_metaLinks`. By default it accepts `atom`, `rss` and `icon`. If a `type` is specified, this method will render a document meta-link (``), instead of an HTML link (``). - any other options specified are rendered as HTML attributes of the element. |
return | string | Returns an `` or `` element. |
public function link($title, $url = null, array $options = array())
{
$defaults = array('escape' => true, 'type' => null);
list($scope, $options) = $this->_options($defaults, $options);
if (isset($scope['type']) && ($type = $scope['type'])) {
$options += compact('title');
return $this->_metaLink($type, $url, $options);
}
$url = $url === null ? $title : $url;
return $this->_render(__METHOD__, 'link', compact('title', 'url', 'options'), $scope);
}
/** * overwritten link method, to support additional options * * @see lithium\template\helper\Html * @param string $title The content to be wrapped by an `<a />` tag, * or the `title` attribute of a meta-link `<link />`. * @param mixed $url Can be a string representing a URL relative to the base of your Lithium * application, an external URL (starts with `'http://'` or `'https://'`), an * anchor name starting with `'#'` (i.e. `'#top'`), or an array defining a set * of request parameters that should be matched against a route in `Router`. * @param array $options The additional options are: * - `'icon'` _string_: adds an icon left the text, using font-awesome i-tag * will automatically set `escape` option to false. * @return string Returns an `<a />` or `<link />` element. */ public function link($title, $url = null, array $options = array()) { if (isset($options['icon'])) { $icon = $options['icon']; $title = sprintf('<i class="fa fa-%s"></i> %s', $icon, $title); $options['escape'] = false; } return parent::link($title, $url, $options); }