
| Current Path : /var/www/html/konvalo_002/ |
Linux ift1.ift-informatik.de 5.4.0-216-generic #236-Ubuntu SMP Fri Apr 11 19:53:21 UTC 2025 x86_64 |
| Current File : //var/www/html/konvalo_002/tmp.php |
<?php
use Drupal\node\Entity\Node;
use Drupal\menu_link_content\Entity\MenuLinkContent;
/* helper */
function create_page($title,$alias,$html){
$node = Node::create([
"type"=>"page",
"title"=>$title,
"body"=>[
"value"=>$html,
"format"=>"full_html"
],
"status"=>1
]);
$node->save();
\Drupal\path_alias\Entity\PathAlias::create([
"path"=>"/node/".$node->id(),
"alias"=>$alias
])->save();
return $node;
}
function add_menu($title,$node,$parent=null){
$link = [
"title"=>$title,
"link"=>["uri"=>"entity:node/".$node->id()],
"menu_name"=>"main"
];
if($parent){
$link["parent"]=$parent;
}
$m = MenuLinkContent::create($link);
$m->save();
return $m->getPluginId();
}
function find_page($alias){
$path = \Drupal::service("path_alias.manager")->getPathByAlias($alias);
$nid = str_replace("/node/","",$path);
$node = \Drupal\node\Entity\Node::load($nid);
return($node);
}
$home = create_page("Home","/home","<h2>Home</h2><p>This is the home page.</p>");
$home_menu = add_menu("Home",$home);
\Drupal::configFactory()->getEditable("system.site")->set("page.front","/node/".$home->id())->save();
$p1 = create_page("Page1","/page1","<h2>Page1</h2><p>Example content for page1.</p>");
add_menu("Page1",$p1);
$p2 = create_page("Page2","/page2","<h2>Page2</h2><p>Example content for page2.</p>");
add_menu("Page2",$p2);
$p3 = create_page("Page3","/page3","<h2>Page3</h2><p>Example content for page3.</p>");
add_menu("Page3",$p3);
$contact = create_page("Contact","/contact","<h2>Contact</h2><p>Main contact page.</p>");
$contact_menu = add_menu("Contact",$contact);
$c1 = create_page("Contact Sub1","/sub1","<h2>Contact Sub1</h2><p>Sub contact page.</p>");
add_menu("Contact Sub1",$c1,$contact_menu);
$c2 = create_page("Contact Sub2","/sub2","<h2>Contact Sub2</h2><p>Another contact page.</p>");
add_menu("Contact Sub2",$c2,$contact_menu);