With a standard URL rewrite/redirect pattern, you could use a Greasemonkey/Tampermonkey/generic userscript like:
// ==UserScript==
// @name DuckDuckGo, Always add certain search parameters
// @match *://*.duckduckgo.com/*
// @run-at document-start
// @noframes
// @grant none
// ==/UserScript==
//--- SET THIS NEXT VARIABLE TO TASTE.
//--- Seperate multiple site with the | key. i.e. -site:wikipedia.org|bbc.co.uk
var stickySrchTerm = "-site:wikipedia.org";
var stckySrchEncdd = encodeURIComponent (stickySrchTerm);
var oldUrlSearch = location.search;
//--- Test that haven't already redirected.
if ( ! oldUrlSearch.includes (stckySrchEncdd) ) {
//--- Our term must go in the `q=` portion of `location.search`.
var srchParams = oldUrlSearch.split ("&");
for (var J = 0, L = srchParams.length; J < L; J++) {
if (/^\??q=/.test (srchParams[J]) ) {
srchParams[J] += "+" + stckySrchEncdd;
break;
}
}
var newUrlSearch = srchParams.join ("&");
var newURL = location.protocol + "//"
+ location.host
+ location.pathname
+ newUrlSearch
+ location.hash
;
/*-- replace() puts the good page in the history instead of the
bad page.
*/
location.replace (newURL);
}