Falls du dir dein eigenes WordPress baust und gerne mit dem Elementor arbeitest, wirst du schnell merken, dass man die Pro-Version benötigt, um Locations für die Templates zu verwenden. Es gibt jedoch eine einfache Alternative, die vorwiegend kostenlos ist und die es dir ermöglicht, ein gespeichertes Template auszugeben. So lassen sich Elementor-Templates für die search.php und andere Templates verwenden.
Elementor-Template mit PHP-Klasse ausgeben
Elementor hat eine Plugin-Klasse, die für dich alles erledigt. Mit dieser Klasse lässt sich ein Template ausgeben, wenn du es richtig machst.
$template_id = 1234;
$instance = Elementor\Plugin::instance();
$frontend = $instance->frontend;
echo $frontend->get_builder_content_for_display($template_id);
Code-Sprache: PHP (php)
Zuerst erstellen wir eine Instanz des Plugins, damit Elementor weiß, dass wir in unserer Datei mit dem Elementor arbeiten wollen.
Anschließend greifen auf das hinterlegte Frontend zurück. Dort verstecken sich die Methoden, die wir für die Ausgabe benötigen.
Nun greifen wir auf die Methode get_builder_content_for_display()
zu und geben die ID unseres Templates an. Der Vorteil ist, dass Elementor hier jetzt alle Einstellungen und relevanten Widget-Eigenschaften für uns festlegt.
So musst du nicht umständlich mit den verschachtelten Klassen von Elementor arbeiten. Viele Plugins arbeiten mit der oben genannten Lösung, dazu zählt auch das beliebte Plugin AnyWhere Elementor. Falls du also nach einer Pluginlösung suchst, solltest du dir AnyWhere Elementor ansehen, auch wenn es hier wieder eine Pro-Variante gibt, weil heute nichts Open-Source und kostenlos sein kann.
Falls du einen Einzeiler bevorzugst, ist dies auch möglich:
$template_id = 1234;
echo Elementor\Plugin::instance()->frontend->get_builder_content_for_display($template_id);
Code-Sprache: PHP (php)
Elementor bietet viele coole und nützliche Funktionen, weshalb ich hier nicht die Pro-Version schlechtreden möchte. Für diese Website nutze ich sie ebenfalls und bin sehr zufrieden.