如果变量等于某物,则使 具有 href 属性


If variable equals something, make a have a href attribute

在我的WordPress网站上使用高级自定义字段插件。我在一种自定义帖子类型中有一个选择选项,用于确定帖子是指向另一个页面的链接还是标注弹出窗口。

这是它的外观。

<!-- here goes a code defining post type. Works fine -->
<?php $hmltype = get_field('post_url_or_popup'); ?>
<div class="tablecell midlineunit middle">
        <a class="table midunithref mw1" <?php if ($hmltype == hml_url) { echo 'href="<?php the_field('hplb_url'); ?>" ' } endif; ?> >
</a>
</div>

一定是语法错误,但我刚刚开始使用 php,所以很难找到错误。

什么是hml_url?它是一个叫做$hml_url..的变量吗?回到你的问题,你在这里使用endif;完全错误。只有当你像这样实例化它时,你才能调用它:

if(condition) :
    do stuff;
endif;

现在修复您的打印。

<a class="table midunithref mw1" <?php echo ($hmltype == hml_url) ? 'href="'. the_field('hplb_url'); .'"' : ''; ?> >

您需要弄清楚/告诉我们hml_url是什么,以便我们解决您的问题。如果您开启了错误报告功能,您也会看到该错误。您可以通过将其添加到脚本顶部来执行此操作:

ini_set('display_errors', 1);
error_reporting(-1); // or you could do E_ALL