- iOS/Objective-C 元类和类别
- objective-c - -1001 错误,当 NSURLSession 通过 httpproxy 和/etc/hosts
- java - 使用网络类获取 url 地址
- ios - 推送通知中不播放声音
我试图在 WP 后端为客户提供一些选项,以自定义显示在其网站主页上的轮播。我正在使用高级自定义字段来处理从客户端获取输入。我想给他们两个选择:
选项 #1) 允许客户端插入要显示的文本字符串 ('carousel_title_text')
选项 #2) 允许客户端上传要显示的 Logo ('carousel_logo')
我希望代码检查标题文本,如果没有,则显示 Logo 。我还没有决定如果两个字段都是空的会发生什么。无论如何,这是我想出的:
<?
if( get_field('carousel_title_text') ) { ?>
<h2 class="promo"><?php the_field('carousel_title_text');?></h2>
<? } elseif( get_field('carousel_logo') ) {
the_field('carousel_logo');
}
?>
只要有输入,'carousel_title_text' 就会显示,但是当它为空且 'carousel_logo' 不存在时,它不会正确输出 Logo 。谁能告诉我我做错了什么或者是否有更好的方法?
提前致谢
最佳答案
如果我没弄错,您的问题不在于 If/Else
语句,而在于 Logo 字段。我假设您在 ACF 中将此字段 (carousel_logo
) 正确配置为 Image。
图像 字段提供三种不同的返回值 可能性:
Note: In some versions of ACF you'll found Image Object instead of Image Array, but it's conceptually the same.
如果您只是在模板中使用 the_field('carousel_logo');
,它们都不会正确显示您的图片。那么,您如何获得 Logo ?
如果您想要最简单的解决方案,请为您的 Logo 字段选择图像 URL 作为返回值,然后像这样打印它:
<?
$title = get_field('carousel_title_text');
$logo = get_field('carousel_logo');
if (!empty($title)) : ?>
<h2 class="promo"><?= $title ?></h2>
<?php elseif (!empty($logo)) : ?>
<img class="logo" src="<?= $logo ?>">
<?php else: ?>
<!-- No title, no logo -->
<?php endif ?>
我对你的代码做了一些改动,但基本上这里的关键行是:
<img class="logo" src="<?= $logo ?>">
这个,或者等价物:
<img class="logo" src="<?php echo $logo ?>">
应该在缺少标题时显示您的图片。
好处:如果您要处理不同的缩略图大小,我建议您使用图像数组 作为返回值。在这种情况下,$logo
将是一个包含所有信息(例如大小、所有缩略图 URL、标题等)的数组
使用:
<img class="logo" src="<?= $logo['sizes']['medium'] ?>">
'medium'
是你的 thumbnail size标签输出。
此外,请查看 ACF's Image 上的官方文档字段类型以获取更多示例和进一步解释。
关于PHP if/else get_field() 与 WordPress,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30578415/
我正在使用 ACF 插件通过带有自定义字段的自定义帖子类型开发应用程序。保存自定义帖子类型后,它将在我的网络中创建一个效果很好的博客,但是,当尝试将自定义字段从自定义帖子类型复制到具有相同 acf 自
我正在使用高级自定义字段,并且我想在两个字段都处于事件状态时显示一行。 我目前有一个检查 Spotify 链接和一个检查 iTunes 链接。我想做的是显示 | (分隔文本)如果两个字段都被使用,否则
我正在使用高级自定义字段,并且我想在两个字段都处于事件状态时显示一行。 我目前有一个检查 Spotify 链接和一个检查 iTunes 链接。我想做的是显示 | (分隔文本)如果两个字段都被使用,否则
我正在使用 advanced custom field插件 Wordpress .我无法显示 field在我的页面上。 基本上我已经创建了一个字段组并分配了 id's给那个组的成员。然后我使用 get
我下面的代码有问题吗?目的是当用户更新 field 时,链接到该 field 的所有事件都被标记为已修改。我收到的错误是 "'UpdateQuery' object has no attribute
我试图在 WP 后端为客户提供一些选项,以自定义显示在其网站主页上的轮播。我正在使用高级自定义字段来处理从客户端获取输入。我想给他们两个选择: 选项 #1) 允许客户端插入要显示的文本字符串 ('ca
在我的帖子页面(常规帖子类型)中,我设置了 ACF 关系字段。在其中我可以选择公司名称,这些名称都在目录列表的帖子类型下。 现在,我在目录列表页面上有以下代码,因此仅使用 get_field 不起作用
我想手动向管理字段集添加一个字段。 函数calcGeometryField返回我想添加到管理字段集中的字段。 但是,我在管理界面中添加了两次该字段。为什么? class FeatureAdmin(ad
所以我有以下内容 b = Brand.objects.create(**model_fields_and_values) b.save() 然后我尝试将该条目与 相关联 b._meta.get_fie
我需要访问装饰器中的模型类字段: from django.db import models class Register: REGISTRY = {} def __init__(sel
我正在开发一个具有两个主要功能的 WordPress 网站/博客。 创建报告。 编写最终报告。 人们可以编写报告,选择他们需要的字段并发布。然后在一天结束时,他们可以从所有报告中“编译”一份最终报告(
我有以下模型: class CommonModel(models.Model): """ Default Common Variables In Database """
我的 Wagtail 项目中有几个应用程序,其中之一是包含新闻(页面)的“新闻”。我想在管理员中将标题的标签“title”覆盖为“headline”。 News._meta.get_field("ti
我是一名优秀的程序员,十分优秀!