Код: Выделить всё
private function analyze_builders()
{
$all_plugins = get_plugins();
$builders = [];
$builder_list = [
'elementor/elementor.php' => 'Elementor',
'wpbakery-visual-composer/wpbakery.php' => 'WPBakery',
'divi-builder/divi-builder.php' => 'Divi Builder',
// ... other builders
];
foreach ($builder_list as $slug => $label) {
if (isset($all_plugins[$slug])) {
$builders[] = [
'name' => __($label, 'pluginbuilder'),
'status' => is_plugin_active($slug) ? __('Active', 'pluginbuilder') : __('Inactive', 'pluginbuilder')
];
}
}
if (empty($builders)) {
return [
[
'name' => __('No builder used', 'pluginbuilder'),
'status' => ''
]
];
}
return $builders;
}
< /code>
Проблема: < /strong>
Этот метод не удается в двух ключевых сценариях: < /p>
[*] Если сайт обладает много страниц, активных (например, как элементар, и WPBakery, он возвращает оба, но не говорит мне, какая кто -то построил . /> < /li>
Если используется строитель страниц, который не находится в моем предварительно определенном списке, он возвращает «без застройщика», что неверно. < /p>
< /li>
< /ol>
Что мне нужно: < /strong>
imefore some dynamical sometrese stentrese. Я ищу надежный метод для проверки метаданных текущего поста или контента для консультативных признаков конкретного строителя страниц. < /P>
Мои исследования и идеи: < /strong>
Я исследовал и верил, что решение может включать в себя четку для специфических для строительства, таких как: < /p>
Проверка клавиш _WP_PAGE_TEMPLATE шорткоды (
Код: Выделить всё
[vc_row]Код: Выделить всё
Какой наиболее надежный и исполнительный метод для обнаружения того, какой строитель страницы использовался для текущей страницы WordPress? Я особенно заинтересован в крючках, фильтрах или запросах базы данных, которые являются уникальными для основных строителей страниц, таких как Elementor, WPBakery и Divi. false или 'none' .
Подробнее здесь: https://stackoverflow.com/questions/797 ... press-page
Мобильная версия