Collection of link helper functions for WordPress themes.
You can install the package via Composer:
composer require mindkomm/theme-lib-links
Name | Summary | Type | Returns/Description |
---|---|---|---|
get_link_attributes | Gets href attribute for a link tag with proper target and rel attributes. | string or bool |
An href attribute with target and rel attributes, when necessary. Returns false if input is empty. |
is_external_url | Checks if a URL is external or internal. | bool |
Whether the URL is external. |
make_anchor_link | Converts an URL to an anchor link. | string |
The updated URL. |
url_to_domain | Converts an URL to just the domain name together with the TLD. | string |
The domain part of the URL. |
Converts an URL to an anchor link.
Prefix the last segment of a URL with a # to use it as an anchor link.
make_anchor_link( string $url )
Returns: string
The updated URL.
Name | Type | Description |
---|---|---|
$url | string |
URL to turn into an anchor link. |
PHP
// Output: https://www.mind.ch/onepager#subsection
echo make_anchor_link( 'https://www.mind.ch/onepager/subsection' );
Checks if a URL is external or internal.
is_external_url( string $url )
Returns: bool
Whether the URL is external.
Name | Type | Description |
---|---|---|
$url | string |
URL to be parsed. |
PHP
if ( is_external_url( 'https://example.org' ) ) {
// Do something
}
Twig
{% if is_external_url('https://www.example.org') %}
{# Do something #}
{% endif %}
Converts an URL to just the domain name together with the TLD.
url_to_domain( string $url, bool $strip_www = false, int|bool $limit = false )
Returns: string
The domain part of the URL.
Name | Type | Description |
---|---|---|
$url | string |
The URL to convert. |
$strip_www | bool |
Optional. Whether to strip the "www" part of the domain. Default false. |
$limit | int|bool |
Optional. Limit to a certain amount of characters. Default false. |
PHP
<?php $domain = 'https://www.mind.ch/post/blablabla?param=wow'; ?>
<a href="<?php echo $url; ?>"><?php echo url_to_domain( $domain ); ?></a>
Twig
{# url = 'https://www.mind.ch/post/blablabla?param=wow' #}
<a href="{{ url }}">{{ url_to_domain(url) }}</a>
Gets href attribute for a link tag with proper target and rel attributes.
Checks if the URL is internal or external. Adds a target="_blank"
for external urls. Inspired by
http://stackoverflow.com/a/25090564/1059980. To catch a security vulnerability, the attribute
rel="noopener noreferrer"
is added, see https://mathiasbynens.github.io/rel-noopener/ for more info.
get_link_attributes( string $url )
Returns: string|bool
An href attribute with target and rel attributes, when necessary. Returns false
if input
is empty.
Name | Type | Description |
---|---|---|
$url | string |
URL to be parsed. |
PHP
<a <?php echo get_link_attributes( 'https://www.mind.ch/blog' ); ?>>MIND Blog</a>
Twig
<a {{ get_link_attributes(url) }}>MIND Blog</a>
You need Timber to use these functions.
This is a library that we use at MIND to develop WordPress themes. You’re free to use it, but currently, we don’t provide any support.