如何通过主题定制器API更改静态页面文本

时间:2019-03-01 作者:Mauricioenvy

我对Wordpress的开发相当陌生,所以我为我的无知道歉。

如何通过主题定制器API更改页面上的静态信息(即不是条目或页面内容)?

是否可以更改页面上的静态文本,以便允许我的客户端访问主题Costumizer API并更改段落、按钮、h1等的文本?

我知道我可以这样做,比如页面标题和页面座右铭,还有页面徽标,但我想知道是否可以通过这个API编辑更多的静态信息。或者更好的方法是为特定页面创建元盒,并告诉我的客户在元盒上键入他想要的文本,但这并没有主题定制器API所具有的视觉动态吸引力。

希望我的问题措辞得当,并提前向你表示感谢。

1 个回复
最合适的回答,由SO网友:tmdesigned 整理而成

你可以把这类东西放在定制器中,但我不会。它可能有太多的内容,这实际上是为网站范围的设置而设计的,而不是单个页面上的内容。

使用插件的页面上的元字段更好的方法更接近您所说的内容,将元信息存储在各个页面上。虽然默认情况下,元框在视觉上没有吸引力,但有几个元插件可以很好地以友好的方式显示可编辑字段。我使用的是高级自定义字段(ACF)。共有三个部分:

1) 在自定义字段管理菜单中定义字段、组等

您可以创建文本字段、文本区域、链接、复选框等。更好的是,您可以创建;中继器字段“;,i、 e.允许用户创建多个特定的事物、组、条件逻辑等。您创建的每个字段都会得到一个slug,您将通过它引用它。

在那里设置的每个组也会有条件地分配给页面和帖子。

2) 在设置组显示的帖子上,您可以通过转到该帖子的编辑器页面将数据输入到字段中ACF提供了很多很好的助手功能。最简单的是get\\u字段(\'\\uuuuuuu\')。因此,如果您创建了一个名为;页码副标题“;,很可能是子弹打中了;页码\\u副标题;,你可以在你的页面模板上写,

if ( get_field( "page_subtitle" ) ){
    echo "<h2 class=\'page-subtitle\'>" . get_field( "page_subtitle" ) . "</h2>";
}
中继器字段稍微复杂一点,但ACF站点有大量很好的示例。

WordPress 5.0引入了面向未来的开发,并取代了内容编辑器。如果可能的话,您是否可以接受古腾堡思维模式,让用户使用预定义的块定义页面布局,这是值得一看的。

post meta仍然有一个位置,即当您需要为页面中不属于主内容区域的部分设置字段时,但只要您能够使用块,您就可以让用户更好地控制布局元素的显示时间和位置。

甚至还有一种新的增压式自定义字段,您可以在其中为自定义块创建自定义字段!

在不久的将来,越来越多的WordPress可能会围绕这种方法展开,所以现在是加入并接受它的好时机。

相关推荐

Publish metabox postition?

在我的自定义帖子类型上,当在移动设备上浏览网站时,发布元数据库将位于其他元数据库之上。为了解决这个问题,我改变了几乎所有元数据库的位置和优先级。但有一个元盒我无法使用优先级和上下文移动:https://developer.wordpress.org/reference/functions/add_meta_box/查看移动设备时,是否可以将发布元数据库移动到始终位于底部?这是我想要更改的默认位置。