Спасибо за все ваши ответы! OB_START не работает для меня, возможно, в моем коде была проблема, но я не мог ее использовать.
Пост администратора также был отличным способом решить эту проблему, но для меня было проще изменить код меньше, и я использовал add_action внутри своей функции.
add_shortcode( 'watchlist', 'cwatchlist_short' );
add_action( 'init', 'my_setcookie_example' );
add_action( 'init', 'my_setcookie_isset');
function my_setcookie_isset() {
if(isset($_COOKIE['xvalue'])){
} else{
setcookie ("xvalue","0",time() + 108000, COOKIEPATH, COOKIE_DOMAIN);
}
if (isset($_COOKIE['thejson'])){
} else{
setcookie ("thejson"," ",time() + 108000, COOKIEPATH, COOKIE_DOMAIN);
}
}
function my_setcookie_example() {
if (isset($_POST["symbol"])){
setcookie ("thejson","1",time() + 108000, COOKIEPATH, COOKIE_DOMAIN);
Итак, в основном я добавил новую функцию, которая должна была выполняться перед заголовком, и проверил, была ли заполнена форма или нет. Если SYMBOL textbobx был завершен, я установил cookie. Также я установил все мои куки с неважным значением, чтобы в процессе не было ошибок.
Так что если у вас есть проблема, кроме установки cookie внутри шорткода и функции, которая проверяет набор текстового поля. Запустите эту функцию, используя INIT перед заголовком!
Спасибо всем, потому что это мой вывод из всех ваших ответов, идей и ссылок!
С наилучшими пожеланиями