Я ответил на этот вопрос в вашем другом вопросе, а затем увидел это здесь.Надеемся, что тот же ответ применим и работает с вашей загадкой повторной активации.Попробуйте использовать этот хук вместо вашего запроса $ _GET, и, возможно, вам нужно сделать этот плагин вместо того, чтобы помещать его в файл functions.php, чтобы он запускался при активации темы.Предыдущий ответ следующий:
Вы захотите использовать ловушку действия.В частности, «switch_theme».Это страница кодекса для всех хуков действий , я не могу связать конкретно с switch_theme, но прокрутите вниз, и вы найдете его.Конкретной информации об этом хуке нет, но использование простое.Вы можете включить вашу функцию в functions.php или в файл плагина, и после определения функции, включите this hook :
function add_my_categories($my-theme-name){
//if $my-theme-name == 'my_theme_name
//test if category exists
//if exists, update
//if doesn't exist, create and assign parent
}
add_action('switch_theme','add_my_categories');
, вызов add_action () запуститименованная функция, когда именованный хук встречается в WordPress.Хук 'switch_theme' запускается после изменения темы.
Важно знать, что этот хук предоставит имя новой текущей темы вашей функции, которая может принять его в качестве аргумента, если вам это нужно.Например, чтобы убедиться, что функция запускается, только если ваша тема активирована.Я полагаю, если эта функция находится в файле functions.php вашей темы, она НИКОГДА не запустится, если ваша тема не активирована, поэтому вы можете определить, нужно ли вам дважды проверять имя темы.