通过自定义字段和正则表达式输出的内部 link 不起作用
Internal link outputted via custom field and regex not working
我在做什么:
我通过获取标题来输出导航,运行通过正则表达式将其输入,并将其放入 a href。然后我使用一个函数,允许您传递要调用的特定行,获取该行的标题,运行 通过正则表达式并将其输出为 ID[=37 部分=]
我的问题:
出于某种原因,在执行此操作时,所有内部锚点仅转到第一项。如果我用一些通用的东西(#section-1)硬编码 anchors 和 ids 然后它就可以工作了。显然我已经检查了控制台,它们确实匹配。
我对此感到有点震惊,因为它为什么不起作用是没有道理的。它只是将内部 link 与页面上项目的 ID 进行匹配(我已经完成了)。 DOM 是否因为加载时不同步而没有记录输出值?
我是如何输出内部导航的
<?php
$product_counter = 1;
if( have_rows('product_navigation') ): while( have_rows('product_navigation') ): the_row();
$link = get_sub_field('product_name');
$link = preg_replace('/[\s-]+/', '-', $link);
$link = strtolower($link);
?>
<li id="<?php echo $link; ?>" class="animated fade-in-up">
<a href="<?php echo '#' . $link; ?>">
<!-- link stuff inside here -->
</a>
</li>
<?php
$product_counter++;
endwhile; endif;
?>
我用于页面各部分的功能。
<?php
function call_section_row($row_int) {
$rows = get_field('product_navigation');
$row_number = $rows[$row_int];
$link = $row_number['product_name'];
$link = preg_replace('/[\s-]+/', '-', $link);
$link = strtolower($link);
echo $link;
}
?>
我如何为每个部分输出包含内部link的函数
<section id="<?php call_section_row(1); ?>" class="portfolio-planning">
<!-- section stuff inside here -->
</section>
从导航中删除 <?php echo $link; ?>
在导航 li id
我在做什么:
我通过获取标题来输出导航,运行通过正则表达式将其输入,并将其放入 a href。然后我使用一个函数,允许您传递要调用的特定行,获取该行的标题,运行 通过正则表达式并将其输出为 ID[=37 部分=]
我的问题:
出于某种原因,在执行此操作时,所有内部锚点仅转到第一项。如果我用一些通用的东西(#section-1)硬编码 anchors 和 ids 然后它就可以工作了。显然我已经检查了控制台,它们确实匹配。
我对此感到有点震惊,因为它为什么不起作用是没有道理的。它只是将内部 link 与页面上项目的 ID 进行匹配(我已经完成了)。 DOM 是否因为加载时不同步而没有记录输出值?
我是如何输出内部导航的
<?php
$product_counter = 1;
if( have_rows('product_navigation') ): while( have_rows('product_navigation') ): the_row();
$link = get_sub_field('product_name');
$link = preg_replace('/[\s-]+/', '-', $link);
$link = strtolower($link);
?>
<li id="<?php echo $link; ?>" class="animated fade-in-up">
<a href="<?php echo '#' . $link; ?>">
<!-- link stuff inside here -->
</a>
</li>
<?php
$product_counter++;
endwhile; endif;
?>
我用于页面各部分的功能。
<?php
function call_section_row($row_int) {
$rows = get_field('product_navigation');
$row_number = $rows[$row_int];
$link = $row_number['product_name'];
$link = preg_replace('/[\s-]+/', '-', $link);
$link = strtolower($link);
echo $link;
}
?>
我如何为每个部分输出包含内部link的函数
<section id="<?php call_section_row(1); ?>" class="portfolio-planning">
<!-- section stuff inside here -->
</section>
从导航中删除 <?php echo $link; ?>
在导航 li id