Skip to content

Set WordPress rules to Block

Follow the steps below to create a rule that executes a managed ruleset and defines an override for rules with a specific tag.

  1. Add a rule to a phase entry point ruleset that executes a managed ruleset.
  2. Configure a tag override that sets a specified action for all rules with a given tag.

The example below uses the Update ruleset operation to perform the two steps in a single PUT request.

  • Add a rule to the ruleset of the http_request_firewall_managed phase that applies the Cloudflare Managed Ruleset.
  • Override rules with the wordpress tag to set the action to block. All other rules use the default action provided by the ruleset issuer.

Example: Use tag overrides to set WordPress rules to Block at the zone level

Terminal window
curl --request PUT \
https://api.cloudflare.com/client/v4/zones/{zone_id}/rulesets/phases/http_request_firewall_managed/entrypoint \
--header "Authorization: Bearer <API_TOKEN>" \
--header "Content-Type: application/json" \
--data '{
"rules": [
{
"action": "execute",
"expression": "true",
"action_parameters": {
"id": "<MANAGED_RULESET_ID>",
"overrides": {
"categories": [
{
"category": "wordpress",
"action": "block"
}
]
}
}
}
]
}'

Example: Use tag overrides to set WordPress rules to Block at the account level

Terminal window
curl --request PUT \
https://api.cloudflare.com/client/v4/accounts/{account_id}/rulesets/phases/http_request_firewall_managed/entrypoint \
--header "Authorization: Bearer <API_TOKEN>" \
--header "Content-Type: application/json" \
--data '{
"rules": [
{
"action": "execute",
"expression": "cf.zone.name eq \"example.com\" and cf.zone.plan eq \"ENT\"",
"action_parameters": {
"id": "<MANAGED_RULESET_ID>",
"overrides": {
"categories": [
{
"category": "wordpress",
"action": "block"
}
]
}
}
}
]
}'