ProcessWire Hanna code的使用

Hanna Code的作用是自定义标签,这个标签数据是万能的,它主要有下面这些特点:

  • 利用Api做系统内的任意数据的调用
  • 支持调用参数传入
  • 支持PHP原生语法
  • 支持自定义HTML/JavaScript

PHP原生独立调用方法

在正常情况下的调用方法

$hanna = $modules->get('TextformatterHannaCode');
$form = $hanna->render("[[form]]");
echo $form;

如果在function中调用需要使用

$hanna = wire('modules')->get('TextformatterHannaCode');// @note: wire!

在富文本编辑器中调用

给要使用Hanna Code的字段做一些配置:Details -> Text Formatters -> Hanna Code Text Formatter

然后再编辑器中插入Hanna Code就可以在前端看到效果了。

基本使用方法

获取当前页面下面的子页面

新建一个Hanna Code,保存名为 ,选择php模式并输入以下内容

foreach($page->children as $child) {
  echo "<p><a href='$child->url'>$child->title</a>";
}

带有参数的调用

在上一个例子中我们只能调用默认使用Hanna code页面的子页面,如果想调用指定页面的子页面,我们需要做一些变动

if(isset($parent)) {
  // If $parent is an ID or path, lets convert it to a Page
  $parent = $pages->get($parent);
} else {
  // otherwise lets assume the current page is the parent
  $parent = $page; 
}

foreach($parent->children as $child) {
  echo "<p><a href='$child->url'>$child->title</a>";
}

此时调用方法会变成两种一种不带参数的功能和上一个例子一样,使用传入了一个parent的值,则会调用ID为1的子页面。

Post Comment