Как получить значение, отправленное после нажатия на сообщение, запрошенное из базы данных в WordPress
Я пытаюсь создать функцию обзора с помощью colorbox в WordPress.
Позвольте мне немного пояснить. В WordPress страницы содержат сообщения, которые запрашиваются через этот код:
$lastposts = get_posts( $args );
foreach($lastposts as $post) : setup_postdata($post);
get_template_part( 'content', get_post_format() );
endforeach;
Таким образом, это займет все записи, которые находятся в базе данных WordPress. Теперь каждый пост является продуктом, поэтому я хочу знать, есть ли способ добавить к нему некоторый код, чтобы иметь значение, установленное для каждого сообщения, которое, когда кто-то нажимает на сообщение, отправит название этого сообщения, он может получить шаблон обзора (что-то я сделаю) этого конкретного продукта.
UPDATE:
Вот jQuery, который открывается после нажатия любого изображения:
<link media="screen" rel="stylesheet" href="<?php echo get_template_directory_uri(); ?>/js/colorbox.css" />
<script src="<?php echo get_template_directory_uri(); ?>/js/jquery.colorbox-min.js" type="text/javascript"></script>
<script type="text/javascript">
$(function()
{
$('.item-post a').colorbox({opacity:0.3, href:"../overviewa512454dzdtfa"});
});
</script>
Я хочу, чтобы заголовок сообщения, связанного с изображением, был отправлен в файл, открытый в colorbox.
Ответы
Ответ 1
Я бы поставил rel="<?= $post['title'] ?>"
в ваших ссылках, чтобы каждая ссылка имела заголовок сообщения. (Извините, если $post['title']
"не является правильным атрибутом для WP Post, но вы найдете это). Затем в вашем javascript передайте заголовок в URL-адресе, например:
<script type="text/javascript">
$(function()
{
$('.item-post a').bind('click',function() {
event.preventDefault();
var product_title = $(this).attr('rel');
colorbox({opacity:0.3, href:"../overviewa512454dzdtfa?title=" + product_title});
});
});
</script>
Вы должны либо кодировать URL-адрес заголовка, который вы передаете внутри тега rel="
, либо делать это с помощью javascript при передаче его в colorbox.
Затем на странице обзора вы можете получить доступ к заголовку с помощью $_REQUEST['title']
.
Ответ 2
content-page.php, content-aside.php и т.д. - файлы, используемые в вашей теме WP, для вывода ваших продуктов в ваш цикл из-за этой строки в вашем коде:
get_template_part( 'content', get_post_format() );
Так что в основном все, что вам нужно сделать, это открыть эти файлы и часть, которая выводит содержимое каждого сообщения, окружить почтовый образ ахором, используя идентификатор вашего сообщения (<a href="#" id="post-<?php the_ID(); ?>">
...
Затем вы легко сможете "настроить" соответствующий обзор, используя ID в своем запросе jQuery...