#wordpress #plugins
#wordpress #Плагины #wordpress-шорткод
Вопрос:
Я использую WordPress с краеугольным камнем и основной сеткой. Я хочу настроить шаблон страницы с URL-параметром, например: localhost/info/template/?id=1
На этой странице у меня есть необходимая сетка.
Когда id =1
я хочу показать основную сетку mygrid1
, когда id = 2
я хочу загрузить сетку mygrid2
.
Я попытался заменить шорткод на
document.getElementById("myGrid").innerHTML= mynewGrid
Но на данный момент сетка уже инициализирована, и я опоздал. Также замените шорткод в functions.php (детская тема) уже слишком поздно. Поэтому я сделал новый плагин. У меня было намерение, чтобы мой новый плагин загрузился до того, как загрузится плагин essential grid.
function createDynamicContent(string $content) { if (is_page('1209')) { Do the processing etc…
Загрузите новый шорткод из БД на основе параметра url , затем замените фиктивный шорткод реальным новым шорткодом, используя $content
фиктивный шорткод- mydummy
$mynewgrid
это строка для новой сетки [ess_grid alias="berge"][/ess_grid]
$newContent= str_replace("mydummy", $mynewgrid, $content); $content = $newContent; return $content; }
Я добавил эту функцию :
add_filter('the_content', 'createDynamicContent', 10);
Я тоже пытался
add_action( 'the_content', 'createDynamicContent', 100, 3);
Когда я устанавливаю параметр приоритета на 100
фиктивный, он заменяется в источнике, но сетка не загружается. Когда я устанавливаю значение параметра приоритета 1
, страница разрывается.
Есть ли у меня возможность динамически заменить шорткод?