Timber / Twig和Wordpress管理集成

我是一名初学程序员,我遇到的问题很少 .

问题是我无法将自定义页面(page-product-all.twig)链接到Wordpress管理员(在Wordpress管理员上找不到页面产品全部) .

  • 我创建了自定义树枝页面(page-product-all.twig)

  • 我创建了自定义php文件(page-product-all.php)

  • 我在Wordpress管理面板中创建了一个页面(页面产品全部)

但是当我在Admin(Page Product All)上更改页面时,页面(page-product-all.twig)不会更改 .

提前致谢!

回答(1)

3 years ago

看看Timber Starter主题中的 page.php

<?php

$context = Timber::get_context();
$post = new TimberPost();
$context['post'] = $post;
Timber::render( array( 'page-' . $post->post_name . '.twig', 'page.twig' ), $context );

最后一行的 Timber::render 方法将 page.twig 加载为默认页面模板 . 但是,Timber还检查任何带有 page- 前缀的twig文件,后跟一个帖子的名称(或者在本例中是一个页面),代码如下:

'page-' . $post->post_name . '.twig'

我真的很喜欢这种处理自定义页面的技术,因为它阻止我们创建自定义页面php文件 . 这对于包含许多页面的网站尤其有用 .

如果您希望页面 Headers 为"Page Product All",则您的twig文件必须为 page-page-product-all.twig . 我有一种感觉,你只是希望页面被称为"Product All"所以在这种情况下,twig文件将保持 page-product-all.twig ,你将不得不创建一个名为"Product All"的页面

现在添加一个简单的 <h1>hello world</h1> 到page-product-all.twig(我更喜欢 <h1>hi mom!</h1> ),预览Product All页面并瞧 . 使用Timber的自定义页面模板 .