嘿伙计们,所以我正在尝试为 wordpress 中所有查询的帖子概述产品功能。这是我的设置:
<?php $i = 0; $j = 1;?>
<?php if ( have_posts() ) : while ( have_posts() ) : the_post(); ?>
<?php get_template_part( 'content', get_post_format() );
$postid[$i] = get_the_ID();
echo "<input type='hidden' value='".$postid[$i]."' id='hiddenpostitle".$j."' name='hiddenpostitle'/> ";
echo "<input type='hidden' value='".$j."' id='hiddenpostnumfield'/> ";
?>
<script type="text/javascript">
$(function() {
$('.item-post a').click(function() {
var num;
$(this).num = $('#hiddenpostnumfield').val();
var prodname ;
$(this).prodname = $('#hiddenpostitle' + num).val();
$.post('overviewcheck-515adfzx8522', {
'ProdName': prodname
},
function( response ) {
},
'json'
);
});
$('.item-post a').colorbox({
opacity:0.3,
href:"../overviewa512454dzdtfa"
});
});
</script>
<?php
$i++;
$j++;
?>
<?php endwhile; endif; ?>
所以这将从wordpress获取一堆帖子并将它们粘贴到页面,然后假设JQuery代码根据从哪个帖子点击获取指定的prodid.item-post a
当我运行它时,我得到了最后一个帖子,然后什么也没有发生——例如1,2,3,4,5
它总是选择 5。
让我知道这是否有意义,我认为我没有正确使用 $(this)。但不确定,如果你能帮我一把,我将不胜感激:)
更新:
<?php /*query_posts('test');uncategorized*/ $i = 0; $j = 1;?>
<?php if ( have_posts() ) : while ( have_posts() ) : the_post(); ?>
<?php get_template_part( 'content', get_post_format() );
$postid[$i] = get_the_ID();
echo "<input type='hidden' value='".$postid[$i]."' id='hiddenpostitle".$j."' name='hiddenpostitle'/> ";
echo "<input type='hidden' value='".$j."' id='hiddenpostnumfield'/> ";
?>
<?php
$i++;
$j++;
?>
<?php endwhile; endif; ?>
<script type="text/javascript">
$(function()
{
$('.item-post a').each("click" ,function(e) {
$(this).click(function(e) {
var num;
num = $('#hiddenpostnumfield').val();
var prodname ;
prodname = $('#hiddenpostitle' + num).val();
$.post('overviewcheck-515adfzx8522',
{
'ProdName': prodname
},
function(response) {
},
'json'
);
});
});
$('.item-post a').colorbox({opacity:0.3, href:"../overviewa512454dzdtfa"});
});
</script>
我收到一条错误消息,提示单击没有“应用”方法
好的,所以 Wordpress 查询发布 -
<?php /*query_posts('test');uncategorized*/ $i = 0; $j = 1;?>
<?php if ( have_posts() ) : while ( have_posts() ) : the_post(); ?>
<?php get_template_part( 'content', get_post_format() );
$postid[$i] = get_the_ID();
echo "<input type='hidden' value='".$postid[$i]."' id='hiddenpostitle".$j."' name='hiddenpostitle'/> ";
echo "<input type='hidden' value='".$j."' id='hiddenpostnumfield'/> ";
?>
<?php
$i++;
$j++;
?>
<?php endwhile; endif; ?>
这将创建一个输入字段 - 2 个具有递增值的隐藏字段,因此 hiddenpostitle1、hiddenpostitle2 等......并且 hiddenpostnumfield 值将增加 1、2、3 等。随着帖子的发布。与 JQuery 代码相比,JQuery 代码将获取选择了哪个图像 (image-post a ),然后发送到文件,该文件根据传递的数据创建会话,并且颜色框在概览中打开它。
我的问题:
我无法根据他们选择的产品传递正确的数据。无论如何,它始终是在网站上发布的最后一篇文章。
好的,现在我们到了某个地方!!!
前往 prodjsoundlighting.com 进行检查,然后单击图像,但仍然有问题,不知道为什么。
这是更新的代码:
<?php /*query_posts('test');uncategorized*/ $i = 0; $j = 1;?>
<?php if ( have_posts() ) : while ( have_posts() ) : the_post(); ?>
<?php get_template_part( 'content', get_post_format() );
$postid[$i] = get_the_ID();
echo "<input type='hidden' value='".$postid[$i]."' id='hiddenpostitle".$j."' name='hiddenpostitle'/> ";
echo "<input type='hidden' value='".$j."' id='hiddenpostnumfield".$j."'/> ";
?>
<?php
$i++;
$j++;
?>
<?php endwhile; endif; ?>
<script type="text/javascript">
$(function()
{
$('.item-post a').each(function(i) {
$(this).on("click", function(e) {
var num;
num = $('#hiddenpostnumfield' +(i+1)).val();
var prodname ;
prodname = $('#hiddenpostitle' + (i+1)).val();
$.post('overviewcheck-515adfzx8522',
{
'ProdName': prodname
},
function(response) {
},
'json'
);
});
});
$('.item-post a').colorbox({opacity:0.3, href:"../overviewa512454dzdtfa"});
});
</script>
So now it is putting up, but it is taking like 3 above what it is suppose...best way is to see it so check it out and let me know.