У меня есть shortcode wordpress, который содержит некоторые другие короткие коды внутри него. Когда выполняется первый короткий код, я хочу отфильтровать другие короткие коды с помощью регулярного выражения.
[main_code] [sub_code id='testid']test content[/sub_code] [sub_code id='testid' name='testname']test content[/sub_code] [/main_code]
Когда я выполняю main_code, я хочу отфильтровать sub_code в массиве и получить доступ к его атрибутам, не выполняя sub_code в качестве короткого кода.
Любой, у кого есть знания, чтобы дать мне решение, очень приветствуется.
Если вы хотите соответствовать внутренним частям, я бы посоветовал:
preg_match_all('~\[sub_code([^\[\]]*)]([^\[\]]+)\[/sub_code]~', $content, $result);
[^\[\]]
Соответствует любому контенту без квадратных скобок. Таким образом, не предусмотрено, чтобы в нем не существовало других коротких кодов.