Вот полезный плагин, который делает именно то, что вы ищете: https://wordpress.org/plugins/wps-hide-login/
В области настроек ( Боковое меню администратора -> Настройки -> Общие -> до конца страницы, выберите предпочитаемый URL-адрес входа и «404» для страницы с ошибкой.
Например, вместо того, чтобы идти на « https://example.com/wp-login.php » вы можете войти по адресу « https://example.com/secret-entrance ». [115 ]
Чтобы скрыть его, не забудьте удалить виджет боковой панели «meta», чтобы люди не могли определить ваш секретный логин.
PHP уникален среди основных языков тем, что хотя регулярные выражения указываются в виде строковых литералов, как в Python, Java и C #, вы также должны использовать разделители регулярных выражений, как в Perl, JavaScript и Ruby.
Имейте в виду, что вы можете использовать одинарные кавычки вместо двойных кавычек, чтобы уменьшить необходимость экранирования таких символов, как двойные кавычки и обратные слэши. Это хорошая привычка, потому что правила экранирования для строк в двойных кавычках могут удивлять.
Наконец, вы можете объединить две замены в одну с помощью простого чередования:
$pattern = '/(width|height)="[0-9]*"/i';
Для вашего паттерна требуется символ начала / конца паттерна. Примерно так:
$pattern = "/height=\"[0-9]*\"/";
$string = preg_replace($pattern, "", $string);
"/" - обычный символ, но большинство символов будет работать ("| pattern |", "# pattern #", как угодно).
Я думаю, что вы пропустили скобки (которые могут быть //, || или другими другими парами символов), которые должны окружать регулярное выражение в строке. Попробуйте изменить назначения $ pattern на эту форму:
$pattern = "/width=\"[0-9]*\"/";
... если вы хотите иметь возможность сравнения без учета регистра, добавьте 'i' в конце строки, таким образом:
$pattern = "/width=\"[0-9]*\"/i";
Надеюсь, это поможет ! Дэвид