# posthtml-url-parameters **Repository Path**: mirrors_posthtml/posthtml-url-parameters ## Basic Information - **Project Name**: posthtml-url-parameters - **Description**: Add parameters to URLs with PostHTML. - **Primary Language**: Unknown - **License**: MIT - **Default Branch**: main - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2020-09-25 - **Last Updated**: 2025-12-14 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README
Add parameters to URLs
[![Version][npm-version-shield]][npm] [![Build][github-ci-shield]][github-ci] [![License][license-shield]][license] [![Downloads][npm-stats-shield]][npm-stats]
`)
.then(result => console.log(result.html))
```
You may use some CSS selectors when specifying tags:
```js
posthtml([
urlParams({
tags: ['a.button', 'a[href*="example.com"]' 'link'],
})
])
.process(/*...*/)
```
All [`posthtml-match-helper` selectors](https://github.com/posthtml/posthtml-match-helper) are supported.
### attributes
Type: `Array`\
Default: `['src', 'href', 'poster', 'srcset', 'background']`
Array of attributes to process for the given tags.
You may override this with your own list of attributes - the plugin will only process URLs in _these_ attributes.
```js
posthtml([
urlParams({
parameters: {foo: 'bar'},
attributes: ['data-href']
})
])
.process('Test')
.then(result => console.log(result.html)))
// Test
```
### `strict`
Type: `Boolean`\
Default: `false`
By default, the plugin will append query parameters only to valid URLs.
You may disable `strict` mode to append parameters to any string:
```js
import posthtml from 'posthtml'
import urlParams from 'posthtml-url-parameters'
posthtml([
urlParams({
parameters: { foo: 'bar' },
strict: false,
})
])
.process('Details')
.then(result => console.log(result.html)))
// Details
```
### `qs`
Type: `Object`\
Default: `undefined`
Options to pass to `query-string` - see available options [here](https://github.com/sindresorhus/query-string#stringifyobject-options).
For example, you may disable encoding:
```js
import posthtml from 'posthtml'
import urlParams from 'posthtml-url-parameters'
posthtml([
urlParams({
parameters: { foo: '@Bar@' },
qs: {
encode: false
}
})
])
.process('Test')
.then(result => console.log(result.html)))
// Test
```
[npm]: https://www.npmjs.com/package/posthtml-url-parameters
[npm-version-shield]: https://img.shields.io/npm/v/posthtml-url-parameters.svg
[npm-stats]: http://npm-stat.com/charts.html?package=posthtml-url-parameters
[npm-stats-shield]: https://img.shields.io/npm/dt/posthtml-url-parameters.svg
[github-ci]: https://github.com/posthtml/posthtml-url-parameters/actions
[github-ci-shield]: https://github.com/posthtml/posthtml-url-parameters/actions/workflows/nodejs.yml/badge.svg
[license]: ./LICENSE
[license-shield]: https://img.shields.io/npm/l/posthtml-url-parameters.svg