【问题标题】:Get title out of page link object in advanced custom fields plugin for wordpress在 wordpress 的高级自定义字段插件中从页面链接对象中获取标题
【发布时间】:2014-03-20 06:32:33
【问题描述】:

我正在使用 Wordpress 的高级自定义字段插件的页面链接对象来提供指向我网站上的内部页面的链接。我想要做的是能够将链接页面的标题显示为链接文本,将页面链接显示为 href。

有没有办法只提取页面链接的标题?

谢谢

编辑:我链接的页面将针对我在特定页面上调用的每个帖子动态更改,因此无法将页面 ID 硬编码到模板中。

【问题讨论】:

    标签: wordpress advanced-custom-fields


    【解决方案1】:

    编辑:以前的答案非常错误,对不起!

    我没有使用页面链接,而是使用了 post 对象。然后您可以执行以下操作:

    <?php
    $post_object = get_field('field');
    if($post_object) :
        $post = $post_object;
        // Overwrite $post
        setup_postdata( $post ); ?>
        <a href="<?php the_permalink(); ?>"><?php the_title(); ?></a>
        <?php
        // Reset $post so the rest of the page works
        wp_reset_postdata();
    endif;
    

    【讨论】:

    • 你不是说if( $post_object )吗?
    【解决方案2】:

    我知道这是一个旧线程。但是在尝试了在我的情况下失败的建议解决方案之后。我想分享我的解决方案,以防它对某人有所帮助。

    我需要在自定义帖子类型“-single.php”模板中获取标题并链接到 ACF 页面链接字段。但我会不断收到错误和通知。

    <?php if (get_field('procedure_links')) : ?>
    <?php $procedure_links_items =  get_field( 'procedure_links', false, false); ?>
    <?php foreach ( $procedure_links_items as $procedure_links_item ) { ?>
      <a href="<?php echo get_the_permalink($procedure_links_item); ?>" title="<?php echo get_the_title($procedure_links_item); ?>" class="button"><?php echo get_the_title($procedure_links_item); ?></a>
    <?php } ?>
    

    在 get_field 中添加 ", false, false" 只会返回帖子 ID。 foreach 显然是循环和回显所有值。 然后,您只需要使用 WP "get_the_permalink" 和 "get_the_title" 使用 id 作为参数。

    希望对你有帮助。

    【讨论】:

      猜你喜欢
      • 2016-06-13
      • 1970-01-01
      • 2013-05-02
      • 2011-12-02
      • 1970-01-01
      • 2017-12-31
      • 1970-01-01
      • 1970-01-01
      • 2014-02-06
      相关资源
      最近更新 更多