基于用户对帖子的点击访问帖子的元数据

时间:2020-01-15 作者:DavidG

我正在显示自定义帖子类型的库。当用户单击一篇文章时,我希望它重定向到另一个页面,而不是重定向到一个模板(因为所有重定向都会转到下一个库,所以更改链接太容易了),但我希望能够在稍后的过程中在屏幕上使用与单击的文章相关的元数据。例如:

我有三页。第一页是一个照片库,使用wp\\u query显示我的所有“照片”。第二页是“基板”图库。第三页显示照片的元数据,如标题和位置,以及照片下方的基底数据,如材料和颜色。

当用户单击第一页上的照片时,他们将被重定向到第二页以选择基板。当用户单击基板时,他们将被带到第三页,向他们显示关于他们选择的所有元。

如何收集这些信息以用于第三页?在我的非WP工作示例中,我向显示的每个项目添加了onclick函数。当检测到click时,我将变量添加到localStorage并保存值。然后重定向到下一个库。在第三页,我将使用JS调用localStorage中的所有变量。我想我可以在WP站点中实现这一点,但我是否应该保存帖子ID,然后当我准备好显示有关选择的信息时,我会进行db调用?实现这种结果的最佳方式是什么?

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

一种选择是在第一页和第二页列出的实体上使用数据属性。然后附加一个click事件,该事件在单击时读取属性值并将其保存到localStorage。这样,您就不需要在第三页上进行额外的db调用。

在循环中,数据属性值基本上可以来自任何地方。E、 g.post meta,一些post字段、分类学或分类学术语。

<?php while (have_posts()) : the_post(); ?>

  <article class="entry" data-my-attribute="save-me-to-localstorage-onclick">
    <!-- gallery image -->
    <a><!-- link to next page/view --></a>
  </article>

<?php endwhile; ?>

相关推荐

我不能以任何方式使用unctions.php在我的主题中包含CSS

我不能在我的主题中使用cssfunctions.php我尝试使用link标签包含css,但它只在第一页加载,然后当我打开其他页面(例如示例页面)时,我不加载任何样式,我该如何做?代码如下:function theme_styles() { wp_enqueue_style( \'style\', get_template_directory_uri() . \'/style.css\' ); wp_enqueue_style( \'bootstrap\', get_te