useRobotsRule()
Introduction
Type: function useRobotsRule(rule?: MaybeRef<boolean | string>): Ref<string>
View and control the robots rule using a simple reactivity API.
It's recommended to use this composable when you need to dynamically change the robots rule at runtime. For example when a user changes their profile from private to public.
Note: This does not modify the /robots.txt
file, only the X-Robots-Tag
header and the robots
meta tag.
Server Side Behavior
In a server-side context, this can be used to change the rule used for X-Robots-Tag
header and the robots
meta tag.
Providing a boolean
will either enable or disable indexing for the current path using the default rules.
import { useRobotsRule } from '#imports'
const rule = useRobotsRule(true) // modifies the rules
Client Side Behavior
In a client-side context you can only read the value of the rule, modifying it will have no effect. This is due to robots only respecting the initial SSR response.
import { useRobotsRule } from '#imports'
const rule = useRobotsRule(true) // does not do anything, just returns the value
Usage
Accessing the rule:
import { useRobotsRule } from '#imports'
const rule = useRobotsRule()
// Ref<'noindex, nofollow'>
Setting the rule - argument:
import { useRobotsRule } from '#imports'
useRobotsRule('index, nofollow')
// Ref<'index, nofollow'>
useRobotsRule(false)
// Ref<'noindex, nofollow'>
Setting the rule - reactive:
import { useRobotsRule } from '#imports'
const rule = useRobotsRule()
rule.value = 'index, nofollow'
// Ref<'index, nofollow'>